Summary:


Supplier registration process is a mandatory process for sourcing activity. For any new prospect suppliers to participate in a bid, they must exist in SRM system. We can bring these bidders into system using Supplier registration process. SAP does provide a standard form for registration but most of the customers has their custom requirement which requires enhancements in it.

Process to activate standard Form:

In SRM 7.0 SAP has provided ABAP WebDyn Pro form for Registration of supplier.

Step 1: Activate SRM_SUCO_1 switch and then active Supplier Self-Registration node (@ RoS Client).

/wp-content/uploads/2013/09/1_287379.png

/wp-content/uploads/2013/09/2_287380.png

Step 2:- Under Node Questionnaire Settings maintain below configuration (RoS Client).This configuration is required to send Questionnaire after submitting registration from.

/wp-content/uploads/2013/09/3_287418.png

Create/Change Questionnaire

/wp-content/uploads/2013/09/4_287419.png

Select Product Categories for Registration

/wp-content/uploads/2013/09/5_287443.png

Language Selection for Questionnaire

/wp-content/uploads/2013/09/6_287457.png

Assign Questionnaire and Language to Product Category

/wp-content/uploads/2013/09/7_287458.png

Step 3:- Activate SICF service for supplier form at RoS Client. Test this service & it will open a standard form.

/wp-content/uploads/2013/09/7_1_287465.png

Enhancement section

SAP main form consists of a main component which holds multiple view containers; each view container is linked with a webdynpro component.

Step 1:-  In this example Customer wants to add custom fields at General Company data component which is one of the webdynpro component linked with main form (I will be showing here for few fields for a single view).

  • Go to transaction SE80 and open webdynpro component /SAPSRM/WDC_SUCO_SREG_GEN for General data.

/wp-content/uploads/2013/09/a_287467.png

  • Add a append structure in INCL structure  INCL_EEW_BP_CSF_COMPANY_DATA. Here we are adding a custom field ZZ_SUP_TYPE. This INCL is associated with the above webdynpro view.

/wp-content/uploads/2013/09/b_287493.png

  • Now we want to make sure that data of this custom field should also store into data base table BUT000 (Master table for business partner).
  • For this we need to enhance BUT000 INCL structure INCL_EEW_BUT000 with the similar fields, add a custom append structure here as well.

/wp-content/uploads/2013/09/c_287494.png

  • Create an UI element and bind it with custom field inserted into INCL structure.

/wp-content/uploads/2013/09/d_287610.png

/wp-content/uploads/2013/09/e_287618.png

Step 2:

Meta data settings; Go to transaction SM30 and maintain meta data  view /SAPSRM/V_MDF_S1 for RoS

/wp-content/uploads/2013/09/8_287620.png

Step 3:- Test Service, it will open the form, now you will able to view custom field on the screen.

/wp-content/uploads/2013/09/9_287466.png

Test the changes:

/wp-content/uploads/2013/09/10_287660.png

/wp-content/uploads/2013/09/11_287674.png

A Questionnaire email should have floated to Supplier provided address.

/wp-content/uploads/2013/09/12_287681.png

You can find that data has been saved in business partner table BUT000 (@RoS client)

/wp-content/uploads/2013/09/13_287682.png

/wp-content/uploads/2013/09/14_287683.png

To report this post you need to login first.

53 Comments

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

  1. Venkatesh Padarti

    Hello sir,

    Its very good document. Thanks for sharing this.

    I have one question regarding mail to vendor manager.

    Whether is this standard functionality mail should go to vendor about the new supplier registration. If yes, please let us know, where that setting needs to be maintained.

    Regards

    Venkatesh P

    (0) 
    1. Devraj Singh Post author

      Thanks everyone for your inspiring comments.

      @Venkatesh You just need to configure SCOT for emails. Sending email is a standard function in this process. if you check below class then there is a method which is used for sending Questionnaire with email.

      Class    –>   /SAPSRM/CL_SUCO_QSTNR_PUBLISH

      Method –>   QSTNR_SEND

      (0) 
      1. Theodosios Miliotis

        HI Devraj,

        Thank you for your reply.

        Sorry for confusion. I mean mail regarding new vendor registration information to the manager/buyer with the content “A new supplier has been registered XXX….” . This mail is not trigerring in our case.

        Is this standard mail configuration or do we need to configure mail any where?

        Questionnaire mail is getting trigggered to vendor.

        Only problem is triggering mail to manager/buyer for the new supplier registration.

        Regards

        Venkatesh P

        (0) 
        1. Devraj Singh Post author

          Hi Venkatesh,

          As per my understanding these is no such provision in standard to send an email to buyer, most of the time buyers get to know about new supplier registered while checking “Supplier Pre Select Tab” using Operational purchaser role in role client but I believe there is a scope of custom development here.

          Let me know if need more information on the same.

          Regards

          Devraj

          (0) 
  2. Venkatesh Padarti

    Hi Devraj,

    Thank you for your steps.

    We have followed the steps as per your steps for adding the custom field.

    But BUT000 table is getting updated with custom values and also value is disappaering in the form after save.

    Also could you please let me know, what to add in the table /SAPSRM/V_MDF_S1 .

    Thanks

    Venkatesh P

    (0) 
    1. Ravi Ravi

      Hi Devraj and Venkatesh,

      I followed the steps as per above process for adding the custom fields.

      After activation of /SAPSRM/WDC_SUCO_SERG_GEN, custom fields are not displaying in the registration form.

      I tested custom UI element bind with standard field in the structure. Then it displaying custom UI element in the form.

      Can you please advice.

      Thanks

      Ravi

      (0) 
    2. Devraj Singh Post author

      Hi Venkat,

      Sorry for delay ..

      You need to add meta data information here.

      i.e for Gen Data

      Set type –  BC

      BO type – BUP002

      Filed name  – Zfield

      and visibility parameter, It will make you field visible. Let me know incase of any other issue.

      Regards

      Devraj

      (0) 
      1. Ravi Ravi

        Hi Devraj,

        Thanks for response.

        I am done with that part. it displaying custom fields. Custom fields data not saving into the table and can you please let me know correct place to put custom field validations.

        Thanks

        Ravi

        (0) 
        1. Devraj Singh Post author

          Can u let me know in which component you have done changes (i.e. there are multiple components in ROS form like Gen data, Contact person etc)? Provide me component names.

          for Validation Check

          ROS_BUPA_DATA_CHECK


          if it does not work then check “Note 1678039 – BAdi ROS_BUPA_DATA_CHECK not getting called in ROS”


          Or implement BUPA_EXTINCL_CHECK


          Regards

          Devraj

          (0) 
          1. Ravi Ravi

            Hi Devraj,

            I added my custom fields in Gen Data Component.

            Thanks for validation check information, I will check and let u know.

            Thanks

            Ravi

            (0) 
          2. Edward Manrique Alarcon

            Hi Devraj,

            I followed the steps as for adding the custom fields.

            The z field it is not obligatory, therefore, and valid in webdynpro:

            Created action in ivew V_SUPP_GENERAL – > VAL_USER. And corrected validate.

            But when pressed the send button, not valid, so the enhancement, but the value is not sent. why?

            and implemented ROS_BUPA_DATA_CHECK but dont see the field in any  structure.

            in BUPA_EXTINCL_CHECK. I see the field, but it’s clear

            Therefore does not record to a but000



            Thanks & Regards

            Edward.

            (0) 
  3. Mrityunjai Pandey

    Hi Devraj,

    I have followed all the steps here.

    Additionally i have done the meta data config with the below details for General WDC for all my custom fields-

    Structure Field Name- Zfield

    BO Set Type- BC

    Bus Object Type- BUP002

    Metadata field Type- S

    Set level- HEADER

    and the required/mandatory/visible parameters.

    Everything comes fine on form, it accept input and i am able to aubit the form too,

    but when i open this form from the portal, the data for all the custom fields on the general WDC gets cleared automatically.

    Any expert comment here?

    Anticipating your response here.

    Regards,

    Mrityunjai

    (0) 
    1. Devraj Singh Post author

      Dear Mrityunjai,

      Confirm me.

      1 – What all view you have enhanced?

      2 – Is data getting saved into BUT000 (RoS Client).

      Regards

      Devraj

      (0) 
      1. Ravi Ravi

        Hi Devraj,

        We are also getting same issue, ROS custom field data not saving into BUT000.

        According to the sap note 1848510, there is no standard way to enhance the ROS.

        Can you please help me to save the custom fields to BUT000 table.

        Thanks

        Ravi

        (0) 
          1. Venkatesh Padarti

            Hi All,

            We had also same issue. So we have written our enhancement to update the same.

            To update the custom field value in the BUT000 table, we need to implement the Implicit enhancement in the class : /SAPSRM/CL_PDO_BP_UPDATE_BUFF , Method : PREPARE_PD_CP_BASIC_DATA

            Regards

            Venkatesh P

            (0) 
            1. Ravi Ravi

              Thanks Devraj and Venkatesh,

              We implemented the enhancement and custom fields are saving into but00. When we try to edit the custom fields not updating with new value.

              Can you please help me on this.

              Thanks

              Ravi

              (0) 
              1. Venkatesh Padarti

                Hi Ravi,

                Have you implemented the Enhancement?

                /SAPSRM/CL_PDO_BP_UPDATE_BUFF , Method : PREPARE_PD_CP_BASIC_DATA

                   IF ms_buffer_changecompany_datazz_ind_key NE ms_buffer_mastercompany_datazz_ind_key. ” Update action
                  MOVE ‘X’ TO ms_pd_bupadata_central_ext_xzz_ind_key.
                  MOVE-CORRESPONDING ms_buffer_changecompany_dataext_csf TO ms_pd_bupadata_central_ext.
                ELSE. ” Create action
                  MOVE-CORRESPONDING ms_buffer_changecompany_dataext_csf TO ms_pd_bupadata_central_ext.
                ENDIF.

                This is the code we have written for both update and create action of value.

                Hope this helps.

                Regards

                Venkatesh P

                (0) 
              2. Edward Manrique Alarcon

                Hi Ravi!!

                Into the view of webdynpro. in the method tab. click in icon (web dynpro code wizard) and insert code get and set the custom field for validation.

                * get single attribute

                  lo_el_context->get_attribute(

                    EXPORTING

                      name =  `ZZ_XXX`

                    IMPORTING

                      value = lv_zz_xxx).

                if lv_zz_xxx is initial.

                validate

                endif.

                ***

                ***

                ***

                * set single attribute

                      lo_el_context->set_attribute(

                        name =  `ZZ_xxx`

                        value = lv_zz_xxx ).

                Then  value traveller .

                Regards,

                Edward.

                (0) 
  4. Jon Azcorra Olano

    Hello Devraj,

    First of all thanks for this post it’s been very useful for me.

    I have followed the steps you have indicated in the post, but once i execute the service i cannot see the newly added fields. I can see them in the layout but not in the service.

    Any idea?

    Regards

    (0) 
    1. Mrityunjai Pandey

      Hello Jon,

      True, you won’t be able to see the newly added fields, since you have missed one part of it, which is configuration for all the custom fields. This is a brilliant document, but incomplete without this config part 😉

      I am including here one example, please use it suitably and your job will be done 🙂

      Please let me know if you face any further issue after this config.

      Regards,

      Mrityunjai

      /wp-content/uploads/2015/07/config_742733.jpg

      (0) 
  5. Jon Azcorra Olano

    Helpful link!!

    but does anybody know which are the values i have to indicate in fields:

    BO Set type

    Bus Object Type

    If I want to add the fields in the supplier registration process?

    Regards

    (0) 
    1. Mrityunjai Pandey

      Jon,

      please take help from the above attached screen shot.

      It varies and depends on your requirement.

      You can select the different values based on the component, view, data section where you have appended the fields.

      BO set type- BCPB as in i had appended fields on contact data view only, select this value based on the Data type added on ROS form.

      BO Object Type- BCPB for ROS.

      Rest you can put as it is in the screenshot.

      Regards

      (0) 
  6. Jon Azcorra Olano

    Hello Mrityunjai,

    You are right, i have maintained the view with the field i want to add. In my case i want to add a new field for VAT in company data.

    So the table entry is:

    BC

    BUP002

    and my new field.

    I have saved it but i cannot see it in the dynpro.

    Any idea?

    Regards

    (0) 
    1. shuvrajyoti sardar

      Hi Jon,

      As Mrityunjai said field should be visible.Please cross check if you maintained it as per the screenshot.Please make sure to update the webdynpro screen with the new field.In case of issue please provide your screenshot.

      /wp-content/uploads/2015/07/screencapture_743087.png

      (0) 
    2. Mrityunjai Pandey

      sorry Jon to be late here.

      Thanks Sardar for helping out Jon, you have these properties, visible/enabled/required/editable, which you have to mark accordingly.

      You could always refer the detailed screenshot for the same.

      Anyways it’s good to find your problem is resolved 🙂

      (0) 
  7. Jon Azcorra Olano

    By the way, i would like to make another question… does anybody know how can I avoid the email dupplicate message when i try to create a new supplier in the supplier registration form?

    Thank you.

    Jon

    (0) 
      1. Jon Azcorra Olano

        Thanks I saw it before but i was not sure about it would suit my requirements because when I introduced a breakpoint in the exithandler class that badi was not being showed. I will try and tell if its ok for me.

        Thanks

        Shuvrajyoti

        (0) 
            1. shuvrajyoti sardar

              Hi Jon,

              Suggession is to set debug point inside method /SAPSRM/IF_PDO_AO~SAVE of Class Object  /SAPSRM/CL_PDO_AO_BP_POT_SUPPL  and check step by step.

              Thanks

              Shuvrajyoti Sardar

              (0) 
    1. Mrityunjai Pandey

      Hi Jon,

      Please explain your concern in detail.

      Are you looking to stop the email triggering to the supplier upon registration for response to questionnaire based on category selection in ROS form?

      Regards,

      Mrityunjai

      (0) 
      1. Jon Azcorra Olano

        Hi again,

        First of all thanks a lot.

        I try to explain, when i try to register a supplier in the supplier reistration form, if there’s a supplier with the mail i have indicated for the new one an error message is showed. I want to skip this error message ( diable the check ).

        I have implemented the ros_bupa_data_check badi, but it does not work i ( i set the duplicate value in method check_duplicate by debugging ) and i do not get rid of that message.

        Any idea?

        Regards

        (0) 
        1. shuvrajyoti sardar

          Hi Jon,

          You need to create Post-Exist of  CHECK_MANDATORY_FIELDS method of class object /SAPSRM/CL_PDO_AO_BP_POT_SUPPL  to validate the custom fields.

          Thanks

          Shuvrajyoti Sardar

          (0) 
          1. Jon Azcorra Olano

            Thanks a lot for all the comments. I have made the implicit enhancement in the method indicated by devraj and it works.

            Now I have seen another problem, when I try to edit the Z fields of Potential supplier form data is no¡t being saved, any idea of where I have to check this?

            Regards 🙂

            (0) 
            1. shuvrajyoti sardar

              Dear Jon,

              It was already mentioned in this blog.Please try following .

              /SAPSRM/CL_PDO_BP_UPDATE_BUFF , Method : PREPARE_PD_CP_BASIC_DATA

              ENHANCEMENT ZPREPARE_PD_CP_BASIC_DATA.    “active version

              IF ms_buffer_changecompany_datazz_acptrjt_rsn NE ms_buffer_mastercompany_datazz_acptrjt_rsn. ” Update action

                 MOVE ‘X’ TO ms_pd_bupadata_central_ext_x.

                 MOVE-CORRESPONDING ms_buffer_changecompany_dataext_csf TO ms_pd_bupadata_central_ext.

              ELSE. ” Create action

                 MOVE-CORRESPONDING ms_buffer_changecompany_dataext_csf TO ms_pd_bupadata_central_ext.

              ENDIF.

              ENDENHANCEMENT.


              Thanks

              Shuvrajyoti

              (0) 
  8. Satish Gadiraju

    Hi,


    I have done all the settings but could not see the input field in my Registration portal.


    So, i thought of maintaining the calues in the View  /SAPSRM/V_MDF_S1 for RoS. But, is not available in my system. Can someone help with the right view, so that i can maintain the values.


    Please suggest.


    Thanks and Regards,

    Satish

    (0) 

Leave a Reply