Skip to Content
avatar image
Former Member

Supply Network Planning - Selection Profile

Dear All,

I am new to APO. In last few days I have written some BADIs and few BAPIs for APO. Now there is one requirement that while running SNP interactive planning if a user changes the table entry for a particluer row and saves the data after that the selection profile for SNP in background should change according to the date, product and location in plan.

Functional guys will maintain 7 selection profiles for every day in the week which wll contain all the products, location etc in that profile.

They want to change the selection profile based on the date and products and location in the planning.

Please guide for any exit or badi for the same.


Vikas Madaan

Add comment
10|10000 characters needed characters exceeded

  • Follow
  • Get RSS Feed

1 Answer

  • avatar image
    Former Member
    May 11, 2006 at 03:26 PM

    Hi Vikas

    Sounds like an interesting solution you've been asked to provide? 😉

    One option you have is to use the standard SAP Macro functionality within the planning books themselves.

    Get one of the Functional guys to show you the MacroBuilder. Here you can define a "User Exit Macro", these are unique and/or complex macros used in Demand Planning or Supply Network Planning that you implement through functional enhancement APODM005 (transaction CMOD). A user exit macro can be executed in interactive planning or mass processing.

    You can then use the macro function VALUE_OF_ROW_CHANGED to inform you when a row element has changed and hence execute the functionality in enhancement APODM005.

    Definition: VALUE_OF_ROW_CHANGED( X ; Y1 ; ... Yn ) returns 1 if the user has changed one or more key figure values in columns Y1 through Yn of row X in the current planning session since last pressing Enter. In the attributes of the row, enter Row Attributes as the data source..

    There are examples of these things, get someone to show you the MacroBuilder and use the planning book 9AEXAMPLES, this has quite a few outline examples of functions you can use to do this sort of thing.

    Good Luck


    Add comment
    10|10000 characters needed characters exceeded