Skip to Content
avatar image
Former Member

Function module to read Shopping cart

Folks,

The answer I am looking for is not BBP_PD_SC_GETDETAIL.

Here is the situation: During the approval process, the approver needs to be able to change few fields. So, i used the secur_badi to give him a "Change shopping cart" button. But, when he hits the change, all the fields on the shopping cart are available for change. So, this guy could monkey around and change some of the fields he is not suppose to change and I need to catch this in the check badi.

So, I started using the BADI "BBP_DOC_CHECK_BADI" and used FM 'BBP_PD_SC_GETDETAIL' to get the shopping cart details. But, this gives me only the PRESENT values on the screen ... and I need to compare it with the shopping cart values in the database. Is there any function module that could help me here?

The idea is to compare field by field and throw an error if he chnages the fields he is not supposed to chnage. (ugly ha!)

Thanks

Sri

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • Best Answer
    avatar image
    Former Member
    May 25, 2006 at 04:41 AM

    Hi Sri,

    What i feel is that BADI BBP_DOC_CHECK_BADI allows you to throw the error messages but you need to use the BADI "BBP_DOC_CHNAGE_BADI" to check first if the current values in the SC item table is changed and if so use the BADI "BBP_DOC_CHECK_BADI " to throw the corresponding error.So you will need to use both the BADI's....

    Hope this helps.....If further more help required do let me know...

    Regards,

    Disha.

    Pls reward points for helpful answers.

    Add comment
    10|10000 characters needed characters exceeded

  • avatar image
    Former Member
    May 25, 2006 at 12:13 PM

    Hi Sri,

    You are right, calling BBP_PD_SC_GETDETAIL during the user session will retrieve the data in user session memory, and not the physical one stored in the database.

    So you have 2 solutions:

    - check each field value against physical value in DB: direct SQL access in SRM tables (CRMD_ORDERADM..., BBP_PD...)

    - change the PBO modules "modify_screen" of each SC screen to close wanted fields if sy-tcode = SC aproval TCODE. this would be eased if a BADI was available for SC screens (like BBP_UI_CONTROL_BADI).

    I prefer the 2nd one.

    Rgds

    Christophe

    Add comment
    10|10000 characters needed characters exceeded

    • Former Member

      Thanks guys for the input. The answer came from Ram, the guy who sits in my next cube - BBP_PROCDOC_GETDETAIL

      This FM gives the values from the database, whereas the BBP_PD_SC_GETDETAIL, gives the stuff on the screen. I could use this in the Check BADI to thorw an error message. Thanks for your support again.