cancel
Showing results for 
Search instead for 
Did you mean: 

Plant - Desciption not replicated via BBP_LOCATIONS_GET_ALL

Former Member
0 Kudos

Hi SRM Experts,

we are using report BBP_LOCATIONS_GET_ALL to transfer Backend plants to SRM.

Now a few plant-descriptions has been changed in Backend System (T001W-NAME1) and we like to update the table BBP_LOCMAP and the BP in SRM.

But after running report BBP_LOCATIONS_GET_ALL the description in BP is still the old one.

Is that the usually behavior? Or is there any other way to update the plants description in SRM.

Thank you very much for your answers

Kind regards

Axel

Accepted Solutions (1)

Accepted Solutions (1)

yann_bouillut
Active Contributor
0 Kudos

Hi Axel,

To update the plant name in the org structure, you can run bbp_location_set_t001w_name

Kind regards,

Yann

Former Member
0 Kudos

Hi Yann,

thank you very much, the report is exactly that for what I was looking for. Now all plants description in SRM are like the fields in backend table T001W-NAME1 and T0001W-NAME2.

10 Points for the perfect support!!

Kind regards

Axel

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi,

We had similar issue, but for us it is only 2 plants we changed the location name and address directly in SRM( through manage business partners).

Let me know if you can change automatically.

Thank you

Sreedhar Vetcha

Former Member
0 Kudos

Please check the application log for any errors. Because the program BBP_LOCATIONS_GET_ALL does update all details of the plant that are already available in the system. Besides this please try using the program BBP_LOCATIONS_GET_SELECTED for the plants that have been updated.

Regards

Kathirvel

Former Member
0 Kudos

Hi Kathirvel,

I did try the report BBP_LOCATIONS_GET_SELECTED for a certain plant. In TX SLG1 I got the message

that the plant has been updated successful, but the description in BP is still the old one.

Best regards

Axel

Former Member
0 Kudos

Hi Alex,

All the programs that replicate the plants use the FM BBP_LOCATIONS_GET_FROM_BACKEND. The function has the logic for updating the existing plants. If this problem exists I would recommend you to create an OSS message for the same.

Sorry that I could not help on this. Please do update this thread when your problem is sorted.

Extracts of the code for your info:


*   check if a corresponding location already exists
    CLEAR LS_LOCATION.
    READ TABLE LT_LOCATIONS_ALL INTO LS_LOCATION
         WITH KEY LOGSYS    = IV_LOGSYS
                  EXT_LOCNO = <LFS_PLANT_DATA>-PLANT
         BINARY SEARCH.
    IF SY-SUBRC IS INITIAL.
*     info: location already exists, starting update
      CLEAR LS_MESSAGE.
      MOVE GC_INFO_MESSAGE  TO LS_MESSAGE-MSGTY.
      MOVE GC_MESSAGE_CLASS TO LS_MESSAGE-MSGID.
      MOVE GC_3LINE_MESSAGE TO LS_MESSAGE-MSGNO.
      CONCATENATE TEXT-010 IV_LOGSYS INTO LS_MESSAGE-MSGV1
                  SEPARATED BY SPACE.
      CONCATENATE TEXT-011 <LFS_PLANT_DATA>-PLANT INTO LS_MESSAGE-MSGV2
                  SEPARATED BY SPACE.
      CONCATENATE TEXT-004 LS_LOCATION-PARTNER_NO TEXT-037
                  INTO LS_MESSAGE-MSGV3 SEPARATED BY SPACE.
      APPEND LS_MESSAGE TO ET_MESSAGES.
*     update location
      CLEAR:   LS_PLANT_ADDRESS.
      REFRESH: LT_PLANT_PHONE_CHG, LT_PLANT_FAX_CHG, LT_PLANT_EMAIL_CHG,
               LT_RETURN.
      READ TABLE LT_PLANT_ADDRESS INTO LS_PLANT_ADDRESS
           WITH KEY ADDRNUMBER = <LFS_PLANT_DATA>-ADDRNUMBER.
      LOOP AT LT_PLANT_PHONE INTO LS_PLANT_PHONE
              WHERE ADDRNUMBER = <LFS_PLANT_DATA>-ADDRNUMBER.
        APPEND LS_PLANT_PHONE TO LT_PLANT_PHONE_CHG.
      ENDLOOP.
      LOOP AT LT_PLANT_FAX INTO LS_PLANT_FAX
              WHERE ADDRNUMBER = <LFS_PLANT_DATA>-ADDRNUMBER.
        APPEND LS_PLANT_FAX TO LT_PLANT_FAX_CHG.
      ENDLOOP.
      LOOP AT LT_PLANT_EMAIL INTO LS_PLANT_EMAIL
              WHERE ADDRNUMBER = <LFS_PLANT_DATA>-ADDRNUMBER.
        APPEND LS_PLANT_EMAIL TO LT_PLANT_EMAIL_CHG.
      ENDLOOP.
      CALL FUNCTION 'BBP_LOCATION_DATA_UPDATE'
        EXPORTING
          IV_COMMIT_EXTERNAL = 'X'
          IS_LOCATION        = LS_LOCATION
          IS_PLANT_DATA      = <LFS_PLANT_DATA>
          IS_PLANT_ADDRESS   = LS_PLANT_ADDRESS
          IT_PLANT_PHONE     = LT_PLANT_PHONE_CHG
          IT_PLANT_FAX       = LT_PLANT_FAX_CHG
          IT_PLANT_EMAIL     = LT_PLANT_EMAIL_CHG
        IMPORTING
          ET_RETURN          = LT_RETURN.
      LOOP AT LT_RETURN INTO LS_RETURN WHERE TYPE EQ 'E' OR TYPE EQ 'A'.
            PERFORM BAPIRET2_TO_BALMI TABLES LT_MESSAGES
                                      USING  LS_RETURN.
        LV_ERROR = 'X'.
      ENDLOOP.

Best Regards

Kathirvel