Skip to Content

Vendor Creation :

The following steps shows you how vendor gets created in SAP for an employee

1)   1) Employee is created in HR Master data. Mandatory infotypes which must be available for an employee to create its vendor are 0000(Actions), 0001(Org. Assignment), 0002(Personal Data), 0006(Addresses) & 0009(Bank Details).

2)   2) A background job needs to be scheduled for transaction code PRAA which picks newly created employees from system and process the transaction PRAA for those employees.

To search whether background job already exists, go to transaction SM37 and search using program RPRAPA00. There can be multiple jobs belonging to different company codes. For e.g. 1000VENDOR_CREATE and 2000VENDOR_CREATE. If background job exist go to step 5 else go to step 3.

3)  3) If background job does not exist then first create a variant for the transaction PRAA. Then go to step 4.

The following screenshot shows how the values should be maintained for the transaction PRAA for a particular company code to create a variant. For e.g. 1000VENDOR_CREATE is the variant name. The user in work file option should be provided with the user who will have authorization to execute the transaction PRAA. As an example, the user is is shown as OKBATCH in below screenshot.

ven_creation_1.JPG

ven_creation_2.JPG

4) If background job is not scheduled, then go to transaction SM36 to create background job using the above created variant.

5) The above background job creates another job. The name of this job will be the name given in the variant created for PRAA transaction. From the above screenshot we can conclude that the name of the job will be A/P_ACCOUNTS. The program for the job A/P_ACCOUNTS is RFBIKR00.

6) The above background job (A/P_ACCOUNTS) creates a session. The name of this session is again given in the variant which is created on step no. 3.  From the above screenshot we can conclude that the name of the session will be A/P_ACCOUNTS. This session can be checked in SM35 transaction.

7) The above session is automatically processed by the program RSBDCSUB which is again scheduled as a background job.

Go to SM37 to check whether background job already exist by using program name RSBDCSUB. If job does not exist then a variant needs to be created for this program in the format shown in the following screenshot. The below screenshot contains session name as A/P_ACC* because the name of the session is given as A/P_ACCOUNTS in step no. 3. The variant can be saved with any name. For. e.g A/P_EVENDORS.

ven_creation_3.JPG

8) The session processed by the program RSBDCSUB in step 7 creates a Vendor in SAP system.

9) To check whether vendor is created or not, go to t.code XK02/XK03 and search for the vendor through employee number/employee name and company code.

Vendor Updation:

The following steps shows you how vendor gets updated in SAP for an employee

1) Employee is updated in HR Master data.

1)   2) A background job needs to be scheduled for transaction code PRAA which picks updated employees from system and process the transaction PRAA for those employees.

To search whether background job already exists, go to transaction SM37 and search using program RPRAPA00. There can be multiple jobs belonging to different company codes. For e.g. 1000VENDOR_UPDATE and 2000VENDOR_UPDATE. If background job exist go to step 5 else go to step 3.

1)   3) If background job does not exist then first create a variant for the transaction PRAA.

The following screenshot shows how the values should be maintained for the transaction PRAA for a particular company code to create a variant. For e.g. 1000VENDOR_UPDATE is the variant name. The user in work file option should be provided with the user who will have authorization to execute the transaction PRAA. As an example, the user is is shown as OKBATCH in above screenshot.

ven_updation_1.JPG

ven_updation_2.JPG

4) If background job is not scheduled, then go to transaction SM36 to create background job using the above created variant.

5) The above background job creates another job. The name of this job will be the name given in the variant created for PRAA transaction. From the above screenshot we can conclude that the name of the job will be A/P_ACCOUNTS. The program for the job A/P_ACCOUNTS is RFBIKR00..

6) The above background job (A/P_ACCOUNTS) creates a session. The name of this session is again given in the variant which is created on step no. 3.  From the above screenshot we can conclude that the name of the session will be A/P_ACCOUNTS. This session can be checked in SM35 transaction.

7) The above session is automatically processed by the program RSBDCSUB which can be again scheduled as a background job.

Go to SM37 to check whether background job already exist by using program name RSBDCSUB. If job does not exist then a variant needs to be created for this program in the format shown in the following screenshot. The below screenshot contains session name as A/P_ACC* because the name of the session is given as A/P_ACCOUNTS in step no. 3. The variant can be saved with any name. For. e.g A/P_EVENDORS.

ven_updation_3.JPG

8) The session processed by the program RSBDCSUB in step 7 updates the Vendor in SAP system.

9) To check whether vendor is updated or not, go to t.code XK02/XK03 and search for the vendor through employee number/employee name and company code.

To report this post you need to login first.

23 Comments

You must be Logged on to comment or reply to a post.

  1. Sam Vel

    Hi Mate,

                  Wondering whats the criteria for the reference vendor ?

    any vendor will do or has to fulfill some criteria to be referred..?

    Thanks

    Sam

    (0) 
  2. Subhadeep Das

    Nice, but the PRAA settings is picking up the entire list of employees. my requirement is only the new employee code thats is getting created to be converted as vendor with some background job through sm36. can you help me pls ?

    best regds

    Subha

    (0) 
    1. Sally Redmond

      For this, if you set up various variants for either initial set up (e.g. create) or update mode and changes since for the master data.

      Thats probably the best way to set it up and schedule it.

      (0) 
  3. RASHMI GURURAJ

    Hi All,

    My customer has created Vendor Records for employees in HRMS and maintained all the mandatory infotypes. But, when we check the vendor in FK03 screen under the company code, system displays an error saying the vendor is not been created for the company code.

    We checked the PRAA and HRMS records. All are correct. We are unable to locate the root cause of this issue.

    Kindly, advise.

    Regards,

    Rashmi

    (0) 
    1. Subhadeep Das

      Hi,

      PRAA is the configurational part where a batch file gets created. Thereafter you also have to run SM35 where the vendor will actually get created. Pls check.

      best regds

      Subha

      (0) 
  4. Maulen Abuov

    Hi.

    I run 3 jobs every day: 1) create new vendors; 2) update vendor master data; 3) run batch input sessions(after 1 and 2 jobs). And how can i block vendors if employee is fired? If i run PRAA with radiobutton Block, then all vendors is blocked even their employees is hot fired. But i must bock only vendors whoose employee is fired.

    Regards,

    (0) 
    1. Tapas Basu

      When you run PRAA put a small code to check STAT 1 and STAT 2 of IT 0000 of employees if that is not equal to 3 ( Active and Available ) then block it.

      (0) 
      1. Maulen Abuov

        Thanks Tapas. There have other situation: If employee is transferred from 1 company code to 2, praa must block record in first company code and create in second. I think it will work if I run PRAA with checkbox “сreate new company code segment for existing vendor master records”. but it not block record in 1 company code.

        After that, consider, employee return back to 1 company code. Then how can I delete block from record in 1 company code and block record in 2 company code?

        (0) 
  5. Hein W

    Great article, thanks!

    Any tips on how I can make a number from HR employee data (a sub-typ in infotyp 0105) as the vendor number?

    Also, how can I get the email address across into communication data in vendor (this  is in general data in vendor).

    (0) 
    1. Sven Ringling

      Hi Hein,

      you should be able to use BAdI “BADI_EXITS_RPRAPA00”.

      1) to change the vendor number, method “SET_VALUES_FOR_BLF00” looks good. Read IT0105 using I_PERNR and change C_BLF00-LIFNR accordingly. However, you need to make sure it would pass all checks in place for LIFNR and you also need to work on an external number range. Never tried changing this particular field, but worth trying.

      2) Method SET_VALUES_FOR_BLFB1 is the one for email address. Again, read HR data using I_PERNR and then update field BLFB1-SMTP_ADDR accordingly.

      kind regards

      Sven

      (0) 
  6. Rajveer Rahekwal

    Hi experts,

    we are also having same requirement but user need to Automatically Create employee as vendor when its get hired once .

    so how can i do this ?

    if i follow above steps then it is possible ?

    (0) 
  7. Rajveer Rahekwal

    But everytime i need to execute PRAA transaction that user dont need.

    I need report in which transaction PRAA is automatically get executed at certain time and select all hired employee and make this as vendor.

    can you please deeply explain me or if having any document then please share.

    Thanks & regards

    Rajveer

    (0) 
    1. Siegfried Krause

      have you seen the documentation from report RPRAPA00?

      It is very detailed described what have to be done.

      If you have concrete questions of any step or function please feel free to ask again.

      (0) 
      1. Rajveer Rahekwal

        Sorry i didnt see documentation for that report,

        but i am actually not getting from where i have to start my development.

        Means whether i have to create new report and fetch data only for active or hired employees and schedule that report in background on daily basis or anything else.

        please help me.

        (0) 
        1. Siegfried Krause

          from my view you need not to develop anything new. Just user this report (create a report variant for “create new”) than create a new job which is executing this report ones a week. Normally a new hire in the system will be created some time before this person actually start working. So there is enough time to create a vendor account during a night system job.

          (0) 
            1. Siegfried Krause

              yes! Most customers doing that like this. From a time perspective it is absolutely sufficient to run this ones a week in a scheduled job (best at night for the specific country).

              (0) 
              1. Rajveer Rahekwal

                Hi ,

                I have one query regarding file name and about creating variant.

                which filename i have to create and when i am going to create variant which all data i have to maintain in data.

                (0) 

Leave a Reply