Characteristic Selection

Dear Guys,
We are maintaining classification view for the Finished product(FERT) with class type 300 & defining the characteristics & respective values for them
Now when creating a saler order for tht partcular finished product we are expecting a pop up where by it will ask the user to select the characteristic values maintained in the classification view(Material master) but its not happening so,What other settings need to be maintained?
Basic purpose is to just give the user an option input the data for the various characteristics maintained in the material master,they are nothing but the order informations,its not a configurable material
Awaiting for quick reply

Hi
Hope you are working on Variant configuration
Pls follow the steps
CT04 - define char- value should be RED,BLACK, BLUE colors
CL02 - define class for your KMAT material for 300 class type and assign the char created
MM01- material type-KMAT and define the classification view and also PS in MRP3 view should be 25
CS01- define BOM with useage 3, you can include variant and non variant components for your KMAT material, For all variant component parts , pls do the following steps
1)select the variant part in the BOM
2) Go to the extras menu and select the objectd ependancy
3) click ok till you get the edit screen
4) In the second line of the edit sctreen, write simple code like CHAR='color'
say the char is COLOR and the values are RED, BLACK,BLUE, the code should be COLOR='RED' for the variant componen
5) Repeat the same for all the variant parts with appropriate values assigned
CA01- routing
CU41 - Define config profile, select the BOM application as PP01, multi level explosion and select the screens which are to be allowed in trhe sales order creation
While creating sales order, the user will be entering the values of the configuration
While running MRP, MRP will plan only those inluded in the sales order
Hope you are clear
regards
Vijay

Similar Messages

  • Strange Values in Characteristic selection screen

    hello,
    We have a situation here where there are some strange values appearing in the selection screen for a particular characteristic. e.g. for Business Area we expect to see only "A" and "K". But we have a wide range of values showing up like 0001 and 300 etc.
    I cannot see how these values got into the selections.
    - I checked the infoobject and there is no master data load for this infoobject.
    - There is a text load which contains text for 4 values (the ones we expect to see).
    - I checked each of cube that the infobject is used in an used one of the invalid values as a restriction to see if I got any results back, but there was no luck here.
    I thought perhaps the values came from the transaction data loads (seeing as there is no master data load for it). Is this a correct assumption? or is there any other explanation for these values being there.
    Thanks for any help you can give.
    Thanks,
    Allan

    Eugene,
    My apologies. here's the answers.
    do you see the strange data in the master data of the IO?
    I am not able to see tha master data in the IO. In the config of the IO, the "With Master Data" option is unchecked.
    The IO is used in a number of cubes. So in order to try and see if the values came from transaction data, I went to each of those cubes and ran a quick check of the infocube contents. I focused the search on one of the "incorrect" values. (The volume of data in the cubes is enormous). I did not get any results from this search.
    can you suggest anything more I can do?
    best regards,
    Allan

  • Equipment Partner added but not in characteristic selection values

    Hi,
    I want to ask some tips here because in the equipment master, a partner was added (as an operator) but when we try to add that partner as the driver (characteristic) it is not in the selection. What could be the possible causes of the data not flowing to the selection values whilst it has been added already as a partner and HR confirmed that the record is already in their master data.
    rgds,
    jay

    Eugene,
    My apologies. here's the answers.
    do you see the strange data in the master data of the IO?
    I am not able to see tha master data in the IO. In the config of the IO, the "With Master Data" option is unchecked.
    The IO is used in a number of cubes. So in order to try and see if the values came from transaction data, I went to each of those cubes and ran a quick check of the infocube contents. I focused the search on one of the "incorrect" values. (The volume of data in the cubes is enormous). I did not get any results from this search.
    can you suggest anything more I can do?
    best regards,
    Allan

  • Characteristic Selection u201Cnot assignedu201D on planning level

    Hi experts,
    we are using BW-BPS.
    On planning level selection some characteristics have the following condition.
    0PROFIT_CTR     Equal to: #
    What does it mean exactly ?
    What is the difference between  u201Cno selectionu201D and  = u201C#u201D ?
    Thanks

    If it is blank, then any underlying layouts, or functions can be run for any specifiv profit centres, or all possible profit centres including 'not assigned' - there is no restriction at the Level, so all will be read.
    if the restriction is set to #, then the functions/layouts can have no assigned profit centre, and no postings will be made on any profit centre (or whatever the characteristic is set to). (It is more like leaving the chracteristic completely out of the level than leaving it blank).

  • Data selection for Characteristic Selection in BW query

    Hi,
    We have BW query where Run Day is Characteristic field
    once we execute the query Data in Runday selection is coming from Dimension table.
    But we want this runday selection values to populate from Runday of fact table.as Runday in fact date has less number of values.Any help is highly appreciable.
    Thanks
    Sudhakar.

    Hi Raghavendra.
    Thanks for your reply.
    You solved my problem 99%
    I tried RSRV option, I gave Infocube and Dimension it is just giving Number of entries which are not there in Infocube but it is not deleting the unused data.
    Please let me know what should I do to delete unused data in Infoobject..
    Also you gave another option in infoobject definition under Business explorer to select "only Values in Infoprovider"
    for Query def and Query Execution Filter value Selection.
    We can use any one,right?  (Either Deletion from infoobject or check the option in Bus Ex)
    Thanks
    Sudhakar.

  • Time Characteristic selection for FOX

    Hello,
    I have a requirement where i need to select the time characteristic as it is in the FOX formulae not the variable . Please can anyone help me to do so.
    Thanks

    Hi,
    You can use the time characteristic directly without using variable in the fox.It depend upon your requirement whether you want to loop through it ,read one by one using OBJV(),or perform some operations through TMVL.
    For example:-
    Time characteristic fisper.
    Data L_fisper type 0fiscper.
    *Keep it n a fields to be changed if it is changing and you want to use in foreach.
    Foreach L_fiscper.
    endfor.
    If it is not changing like the entire operation has to be performed only with one fiscper value,then use OBJV(),it should not be part of fields to be changed.
    L_fiscper = OBJV().
    The value of 0fiscper purel depends upon your aggrgation level and filter restriction.
    Regards,
    Indu

  • Characteristic selected in Dropdown box does not influence planning query

    Dear all,
    We have a problem filling all the characteristics in a planning query to make it possible to plan, inside a BEx Layout.
    We are using Dropdown boxes to restrict the characteristics in the query so it can be able to plan. Only when we put the characteristic in the lines of the query it is able to being able to plan on the required conditions. This results in a query with many characteristics in the lines and therefore unattractive to the users. We believe that it should be possible to restrict the characteristics in the query by drop-down box. Can you explain us how to achieve this restriction in the planning query.
    Kind Regards,
    Mazzz

    Hi Mazzz,
    you have to insert a dropdown menu, link it to one dataprovider (maybe the same of the query) ad set some simple paramiters in dropdown (chose characteristic end so on..)
    hope this helps
    Michele

  • Clone Stamp Selection Failure in CS6

    I try using the clone stamp but selection fails with this error message:
    Could not use the clone stamp because the area to clone has not been defined (Alt-click to define source point).
    When I press Alt, I see the characteristic selection bullseye. But, afterwards, a right-click of the mouse reveals an open circle and the error message.
    I note that the key works for menu selections (e.g., Alt-File) and other actions.
    I have closed PS and re-opened. Reset the clone stamp tool, closed and reopened, etc., to no avail.
    /Roger

    Mr. Kelly,
    That seems to have fixed the problem: left-super+alt. I can live with that!
    Regarding the suggestions about remapping - look-and-feel, etc.: the suggested track are not avialalbe under Xubuntu 12.04. And, I would be reluctant to re-map the super-key since it has functional significance when running Win (I have both Win-7 and XP in VMs).
    I've bookmarked the wine wiki link for future reference.
    WINE: Do you know if CS6 / Bridge / Adobe Raw, etc., work well? I had not thought of trying Wine. I've never had luck with it in the past - a waste of time for few apps that I must run in Win. Since I've got PShop working well in a VM, I'm thinking of sticking with that and not to invite new problems.
    Thanks a lot for delving into this for me.
    Glad I bought PShop - I've been using The Gimp for a long time but, while taking PS  classes at Montgomery College, decided to buy. I'd been looking for knowledge/tips that might help in Gimp but, during the second class, decided to make the leap.
    Best regards,
    /Roger

  • Using Row Selection in Analysis Web Item & Filter Command

    In the 7.0 WAD (Web Application Designer), I have two analysis items that both have different data providers, DP_1 & DP_2. The two data providers are views from the same query.
    In the properties of the first analysis item (DP_1), I'm using the Row Selection - 'Single with Commands', and I want to have a command that will filter on the value of the characteristic in the row selected and transfer that filter to the second analysis itme (DP_2). Is this possible?

    yes, you can do this. There is XHTML code:
    <bi:SET_SELECTION_STATE_BY_BINDING xmlns:bi="http://xml.sap.com/2005/01/bi/wad/bisp">
      <bi:TARGET_DATA_PROVIDER_REF_LIST type="ORDEREDLIST">
    // target data_provider:
        <bi:TARGET_DATA_PROVIDER_REF index="1" value="DP_2">
        </bi:TARGET_DATA_PROVIDER_REF>
      </bi:TARGET_DATA_PROVIDER_REF_LIST>
      <bi:SELECTION_BINDINGS type="UNORDEREDLIST">
        <bi:SELECTION_BINDING type="COMPOSITE" index="1">
    // target infoobject
          <bi:CHARACTERISTIC value="0DOC_ITEM__0VENDOR" text="0DOC_ITEM__0VENDOR">
          </bi:CHARACTERISTIC>
    // selection type
          <bi:SELECTION_BINDING_TYPE type="CHOICE" value="ITEM_CHARACTERISTIC">
            <bi:ITEM_CHARACTERISTIC type="COMPOSITE">
    // source analysis table
              <bi:ITEM_REF value="ANALYSIS_ITEM_1">
              </bi:ITEM_REF>
    // source infoobject
              <bi:CHARACTERISTIC value="0DOC_ITEM__0VENDOR" text="0DOC_ITEM__0VENDOR">
              </bi:CHARACTERISTIC>
            </bi:ITEM_CHARACTERISTIC>
          </bi:SELECTION_BINDING_TYPE>
        </bi:SELECTION_BINDING>
      </bi:SELECTION_BINDINGS>
    </bi:SET_SELECTION_STATE_BY_BINDING>
    Or you can do this using command wizard! good luck!

  • BPS User Exit Variable based on Planning Package Selection

    Hi,
    I'm implementing a SAP BW-BPS planning layout to be integrated into the CRM we user interface.
    Most of the characteristic selections come from the CRM fields that need to be filled by the user when creates a trade promotion.
    The charcteristic selections work (as standard) just if in the planning level I flag "Selection in Package", then in package these selections are dinamically defined from what the user select in the CRM fields at runtime.
    My problem is that I have to build a BPS User Exit variable to filter, in the planning level, the proper Planning Area based on the CRM Sales Organization value.
    The characteristic CRM Sales Organization belongs to whose chararcteristic the value is determined dinamically in the planning package.
    Is it possible for a BPS user exit variable, set in the planning level, to catch the value of a characteristic selection made at planning package?
    Many thanks for your help.
    Alessandro

    Hi Indu,
    Many thanks for your answer.
    I have already took a look at the document posted by you but I didn't find the solution to my problem.
    This because i have to create a user exit variable that need to get the value of the characteristic selection in package.
    I mean in the planning level I will have the user exit variable that restrict the planning area and, his function module, need to read, at runtime, what is the value of the characteristic CRM Sales Organization restricted in package by CRM.
    So I don't have any idea to which BPS internal table I have referred to in my funcion module to catch the value of the CRM Sales Organization dinamically filtered by CRM.
    Many thanks,
    Alessandro

  • Time characteristic restriction in BW BPS

    Hi to all,
    I got one question for BW-BPS. This was happened after upgrade of Netweaver
    service pack. Before that it was fine. My question is as follow:
    Under DW workbench when I create an InfoProvider which included time dimension
    that consist of fiscal year, fiscal year/period, posting period, calendar
    year, calender year/ month. I try to select fiscal year, fiscal year/period
    under a planning level, then I select unassigned(#) time characteristic for
    fiscal year/period and save it. System allow for this restriction under time
    characteristic fiscal year/period. However, if I deselect fiscal year, fiscal
    year/period under a planning level and select calendar year, calender year/
    month under the same planning level, then I select unassigned(#) time
    characteristic for calender year/ month and save it. System was not allow for
    this restriction for time characteristic and generate the following message:  
      Message: UPC003- Value# is not permitted for characteristic calendar
    year/month.
    There was no characteristic relationship set for time dimension
    characteristics. I still not understand why system is not allow for
    unassigned(#) time characteristic selection for calender year/ month
    Therefore, I would like to need a support for this. Is it a system error?

    Hi Gupta,
    Thanks for your guide. I already try as per your instruction but not work because when I create a planning level with only 0calmonth, system still not allow me to include unassigned (#) for time restriction. May be I could explain to you why I need to select unassigned (#)  for 0calmonth.
    My explanation is as follows:
      Actually I already create a planning level with selected time characteristic calender year only for example Year 2008 and input value. Now I want to distribute the yearly figure to monthly, therefore I need to create another planning level and perform top down distribution. In the top down planning level, I have to select calender year/month for time characteristic and restrict the period to Jan 2008 to Dec 2008 and include unassigned(#) for the purpose of running distribution function.
    As I have told you in the earlier note which mentioned that the above task was actually worked in the beginning time before we have upgrade our Netweaver service pack. Unfortunately, it not work anymore after the upgrading of Netweaver .
    Do you have any idea regarding the scenario of before and after upgrading of Netweaver. Does it affect the previous settings?
    Hope you can help me to find out more on this.
    Tq.

  • How to make a characteristic colum highlighted?

    How to make a characteristic colum highlighted?
    Thanks!

    Hi, Kevin,
    Create strcture, put   your characteristic in the strcture, then right clk the characteristic, select properties, there is highlight option.
    Hope it helps,
    Sam

  • How to create a new report from an information structure?

    Dear gurus,
    My customer wants to have a sales report by product hierachy. I want to create an information structure for product hierachy and create a report from this info structure like a standard report. I dun know which steps to do. Pls tell me how to do. Your help are highly appreciated.
    Thank you!
    Rgds,
    Nghi Do

    Hi,
    Steps in LIS EXTRACTION:
    T.code - :MC18 u2013 create field catalog
    1. Characteristic Catalog
    Application-01-Sales and Distribution, 02-Purchasing, 03-Inventory Controlling, etc..
    Catalog category 1. Characteristic catalog, 2. Key figures catalog 3. Date catalog Select characteristic catalog and enter, click on characteristic select the source table and it will be display the relevant source field and select the source field, copy + close, copy.
    Save, similarly create key figures catalog
    T.code : MC21 u2013 create infostructure
    Example u2013
    Inforstructure : S789
    Application u2013 01
    Choose characteristic select the catalog, select the fields, copy + close Choose key figures catalog select the key figures ,copy + close, save and generate
    T.code u2013 MC24 u2013 create updating
    Infostructure : S789
    Update group : 01- Sales document, delivery, billing document ,enter Select the key figures click on rules for key figures give suggest rules, copy save and generate Click on updating (activate updating) Select the infostructure set periodic split 1. Daily, 2. Week, 3. Month, 4. Posting period Updating u20131)No updating,2)Synchronous updating (V1), 3)As synchronous updating (V2), 4)As synchronous updating (V3),
    T.code u2013 LBW0 - Connection of LIS Information structures to SAPBW Information structure : S786 Select the radio button-Setup LIS environment and Execute.
    Select the radio button-Generate data source and Execute.
    For Delta update:
    Select the radio button-Generate updating and Execute Select the radio button -Activate / deactivate and Execute.
    T.code u2013 SBIW u2013 Display IMG (implementation guide) Setting for applications specific data source u2013 logistics u2013 Managing transfer information structure u2013 setup of statistical data u2013 applications specific setup of statistical data u2013perform statistical setup u2013 sales.
    Choose activity
    Setup u2013 Orders, deliveries, billing
    Choose the activities enter the infostructure (S789), give name of the run, date of termination, time of termination, No. of tolerated faulty documents. Then execute
    T.code u2013 RSA3 u2013 Extractor checker
    Give the data source name eg. 2LIS 01S789 and execute, result will get some records Go to BW side replicate data source u2013 Assign infosource u2013 Create infocube u2013 Create update rules u2013 create infopackage and schedule the package with initialize delta process.
    For delta update :
    In R/3 side
    T.code u2013 MC25, set update (V1) or (V2) or (V3)
    T.code u2013 LBW0, choose generate updating and execute then choose activate / deactivate and execute
    BW side - create infopackage and schedule the package with delta update.
    First time if your scheduling the infopackage -in R/3 side T.code :MC25 -Udating set to No update,insted of selecting the update V1,V2,V3.
    If your doing the Delta update:in R/3 side T.code :MC25-Updating set to either V1 or V2 or V3. and the to T.code :LBW0 -Select the radio button Active/deactivate and Execute.
    and schedule the infopackage with delta update.
    Modules for LIS : SD,MM, PP,QM.
    Deltas for LIS:
    After setting up the LIS environment, 2 transparent tables and 1 extract structure is generated for this particular info structure. Within transaction SE11 you can view the tables u2018SnnnBIW1u2019, u2018SnnnBIW2u2019 and the structure u2018SnnnBIWSu2019 and the InfoStructure itself u201ASnnnu2018
    The tables S5nnnBIW1 & SnnnnBIW2 are used to assist the delta update process within BW.
    Extract structure u2018SnnnnBIWCu2019 is used as an interface structure between OLTP InfoStructure and BW
    The OLTP system has automatically created an entry in the control table u2018TMCBIWu2019. Within transaction u2018SE16u2019 youu2019ll see, that for your particular InfoStructure the field u2018BIW activeu2019 has the value u2018Xu2019 and the field u2018BIW statusu2019 is filled with value u20181u2019 (refers to table SnnnBIW1).
    The orgininal LIS update program u201ARMCX#### will be enhanced within the form routines u201Aform Snnnbiw1_update_....u2018 and u201Aform Snnnbiw2_update
    With the transaction u2018SE38u2019 youu2019ll see at the end of the program starting at line 870 / 1006, that the program is enhanced within a u2018BIW delta updateu2019 coding
    Within the flag u201AActivate/Deactivateu2018 the update process into the delta tables (SnnnBIW1/Sn5nnBIW2) is swichted on/off. In the table u201ATMCBIWu2018 is defined, which table is active for delta update.
    Note: The delta updating is client dependent !
    Regards,
    Ram Pedarla
    Edited by: RamPedarla on Apr 1, 2010 10:35 AM
    Edited by: RamPedarla on Apr 1, 2010 10:35 AM

  • To find Queries by InfoObjects

    Hi SDN Community
    Here is a reversal of a post made by another developer
    List of infoobjects used in a Query
    This has the reverse logic... thanks for the tip.
    *& Report  ZBW_FIND_CHARACTERISTICS_QUERY
    SAP Consulting BW Tools:
    *& Find Characteristics in BEx Queries using ABAP
    *& List of infoobjects used in a Query
    *& Developer: WBHADS 07/06/2011
    REPORT  ZBW_FIND_CHARACTERISTICS_QUERY.
    PARAMETER:  CHARACT   LIKE rszrange-IOBJNM.
    DATA:  s_characteristic LIKE rszrange-IOBJNM.
    s_characteristic  = CHARACT.
    DATA: lv_count        TYPE i.
    DATA: lv_count1       TYPE i.
    DATA: lv_count2       TYPE i.
    Data Declaration
    DATA:  D_MSG_TEXT(50).
    DATA:  lc_DIRECTORY(30)         TYPE c.
    DATA:  P_FILE(128).
    DATA:  FILENAME(128).
    DATA:  lc_query(60)             TYPE c.
    DATA:  lc_date(30)              TYPE c.
    DATA:  lc_time(30)              TYPE c.
    DATA:  lc_start_time(60)        TYPE c.
    DATA:  lc_syst(30)              TYPE c.
    DATA:  lc_exception(120)        TYPE c.
    RSZELTDIR   Directory of the reporting component elements
    RSZELTTXT   Texts of reporting component elements
    RSZELTXREF  Directory of query element references
    RSRREPDIR   Directory of all reports (Query GENUNIID)
    RSZCOMPDIR  Directory of reporting components
    RSZRANGE    Selection specification for an element
    RSZSELECT   Selection properties of an element
    RSZELTDIR   Directory of the reporting component elements
    RSZCOMPIC   Assignment reuseable component <-> InfoCube
    RSZELTPRIO  Priorities with element collisions
    RSZELTPROP  Element properties (settings)
    RSZELTATTR  Attribute selection per dimension element
    RSZCALC     Definition of a formula element
    RSZCEL      Query Designer: Directory of Cells
    RSZGLOBV    Global Variables in Reporting
    data: gi_data like rszrange occurs 0 with header line.
    Determine the queries
    tables:
    RSZELTTXT,
    rszeltdir,
    rszeltxref,
    rszrange.
    data: begin of lt_line occurs 0,
            ELTUID  like RSZELTDIR-ELTUID,      "char 25
            MAPNAME like RSZELTDIR-MAPNAME,       "char 30
          end of lt_line.
    data: begin of lt_line1 occurs 0,
            SELTUID  like rszeltxref-SELTUID,      "char 25
            TELTUID  like rszeltxref-TELTUID,     "char 25
            LAYTP    like rszeltxref-LAYTP,       "char 30
          end of lt_line1.
    data: begin of lt_line2 occurs 0,
            ELTUID  like rszrange-ELTUID,      "char 25
            IOBJNM  like rszrange-IOBJNM,     "char 25
          end of lt_line2.
    data: lt_tab like standard table of lt_line initial size 0.
    data: lt_tab1 like standard table of lt_line initial size 0.
    data: lt_tab2 like standard table of lt_line initial size 0.
    data: lt_line20(128) TYPE c.  " LIKE RSZELTXREF-SELTUID.
    data: lt_line30(128) TYPE c.  " LIKE RSZELTXREF-SELTUID.
      clear lt_line.
      lv_count  = 0.
      lv_count2 = 0.
    Loop through all the queries
      select * from RSZELTDIR
               into corresponding fields of lt_line
               where DEFTP = 'REP'
               and OBJVERS  = 'A'.
             Filter by the Z Developed Queries
               IF lt_line-MAPNAME CP 'Z*'.
                clear lt_line20.
                Get the Query Long Name
                  select single * from RSZELTTXT
                    into lt_line20
                    where eltuid = lt_line-eltuid           "rszeltdir-eltuid
                    and objvers = 'A'
                    and langu = 'EN'.
                  Find all the query elements within the query
                    select * from rszeltxref
                     into corresponding fields of lt_line1
                      where seltuid = lt_line-eltuid        "rszeltdir-eltuid
                      and objvers = 'A'.
                      IF lt_line1-laytp = 'FIX' OR lt_line1-laytp = 'COL' OR lt_line1-laytp = 'ROW'.
                        Determine if the Query Element is matching to the characteristic
                          select * from rszrange             "appending table gi_data
                             into corresponding fields of lt_line2
                             where eltuid = lt_line1-teltuid    "rszeltxref-teltuid
                             and objvers = 'A'
                             and enum = 1.
                              Populate tables
                                IF lt_line2-IOBJNM = s_characteristic.
                                    append  lt_line-MAPNAME to lt_tab.
                                    lv_count = lv_count + 1.
                                ENDIF.
                          endselect.
                      ENDIF.
                   endselect.
               ENDIF.
      endselect.
        sort lt_tab by MAPNAME.
        delete adjacent duplicates from lt_tab comparing MAPNAME.
       DIRECTORY represents path where file is stored .
        lc_DIRECTORY = '/interfaces/EDW/data/CSM/'.
        CONCATENATE 'EDW Queries by Characteristic -' SY-DATUM
        '.txt' into P_FILE SEPARATED BY SPACE.
      CONCATENATE lc_DIRECTORY P_FILE into FILENAME.
    Opening the Log File
      OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE
                           ENCODING DEFAULT.
        IF SY-SUBRC NE 0.
          WRITE: 'File cannot be opened. Reason:'.  ", D_MSG_TEXT.
          EXIT.
        ENDIF.
       CONCATENATE 'System Date -' SY-DATUM 'YYYYMMDD' into lc_date
              SEPARATED BY SPACE.
       CONCATENATE 'EDW System -' SY-SYSID into lc_syst
              SEPARATED BY SPACE.
          TRANSFER lc_date TO FILENAME.
          TRANSFER lc_start_time TO FILENAME.
          TRANSFER lc_syst TO FILENAME.
      Queries for the parameters
         loop at gi_data into lt_line.
          loop at lt_tab into lt_line.
             TRANSFER lt_line TO FILENAME.
          endloop.    "Query Loop
    Closing the Log File
      CLOSE DATASET FILENAME.

    We have successfully created an ABAP program to do this.
    Thank you.
    Simon
    *& Report  ZBW_FIND_CHARACTERISTICS_QUERY
    SAP Consulting BW Tools:
    *& Find Characteristics in BEx Queries using ABAP
    *& List of infoobjects used in a Query
    *& Developer: WBHADS 07/06/2011
    REPORT  ZBW_FIND_CHARACTERISTICS_QUERY.
    PARAMETER:  CHARACT   LIKE rszrange-IOBJNM.
    PARAMETER:  VARIABN   LIKE RSZGLOBV-VNAM.
    DATA: query_name TYPE RSZCOMPID.
    DATA: s_varname  TYPE RSZGLOBV-VNAM,
          s_varnameu TYPE RSZGLOBV-VARUNIID.
    DATA:  s_characteristic LIKE rszrange-IOBJNM.
    DATA: lv_count        TYPE i.
    DATA: lv_count1       TYPE i.
    DATA: lv_count2       TYPE i.
    Data Declaration
    DATA:  D_MSG_TEXT(50).
    DATA:  lc_DIRECTORY(30)         TYPE c.
    DATA:  P_FILE(128).
    DATA:  FILENAME(128).
    DATA:  lc_query(60)             TYPE c.
    DATA:  lc_date(30)              TYPE c.
    DATA:  lc_time(30)              TYPE c.
    DATA:  lc_start_time(60)        TYPE c.
    DATA:  lc_syst(30)              TYPE c.
    DATA:  lc_exception(120)        TYPE c.
    RSZELTDIR   Directory of the reporting component elements
    RSZELTTXT   Texts of reporting component elements
    RSZELTXREF  Directory of query element references
    RSRREPDIR   Directory of all reports (Query GENUNIID)
    RSZCOMPDIR  Directory of reporting components
    RSZRANGE    Selection specification for an element
    RSZSELECT   Selection properties of an element
    RSZELTDIR   Directory of the reporting component elements
    RSZCOMPIC   Assignment reuseable component <-> InfoCube
    RSZELTPRIO  Priorities with element collisions
    RSZELTPROP  Element properties (settings)
    RSZELTATTR  Attribute selection per dimension element
    RSZCALC     Definition of a formula element
    RSZCEL      Query Designer: Directory of Cells
    RSZGLOBV    Global Variables in Reporting
    data: gi_data like rszrange occurs 0 with header line.
    Determine the queries
    tables:
    RSZELTTXT,
    rszeltdir,
    rszeltxref,
    rszrange.
    data: begin of lt_line occurs 0,
            ELTUID      like RSZELTDIR-ELTUID,        "char 25
            MAPNAME     like RSZELTDIR-MAPNAME,       "char 30
            TXTLG(60)   TYPE c,
          end of lt_line.
    data: begin of lt_line1 occurs 0,
            SELTUID  like rszeltxref-SELTUID,      "char 25
            TELTUID  like rszeltxref-TELTUID,      "char 25
            LAYTP    like rszeltxref-LAYTP,
          end of lt_line1.
    data: begin of lt_line2 occurs 0,
            ELTUID    like rszrange-ELTUID,      "char 25
            IOBJNM    like rszrange-IOBJNM,
            LOW       like rszrange-LOW,
            LOWFLAG   like rszrange-LOWFLAG,
          end of lt_line2.
    data: begin of lt_line3 occurs 0,
            VARUNIID  like RSZGLOBV-VARUNIID,      "char 25
            VNAM      like RSZGLOBV-VNAM,
            IOBJNM    like RSZGLOBV-IOBJNM,
          end of lt_line3.
    data: lt_tab like standard table of lt_line initial size 0.
    data: lt_tab1 like standard table of lt_line1 initial size 0.
    data: lt_tab2 like standard table of lt_line2 initial size 0.
    data: lt_tab3 like standard table of lt_line3 initial size 0.
    data: lt_line20(128) TYPE c.  " LIKE RSZELTXREF-SELTUID.
    data: lt_line30(128) TYPE c.  " LIKE RSZELTXREF-SELTUID.
    type-pools:
          rs,   "BW global
          rrms, "message server
          rsz,  "Qry definition global
          rzx0, "Qry RFC interface
          rzd1. "Qry definition database
    DATA: l_target_compid   TYPE rszcompdir-compid,
          l_t_uid_server    TYPE rzx0_t_uid_server,
          l_s_uid_server    TYPE rzx0_s_uid_server_x,
          l_s_msg           TYPE rs_s_msg,
          l_s_compdir       TYPE rzx0_s_compdir,
          l_s_eltdir        TYPE rzx0_s_eltdir,
          l_s_elttxt        TYPE rzx0_s_elttxt,
          l_t_eltdir        TYPE rzx0_t_eltdir,
          l_t_eltprop       TYPE rzx0_t_eltprop,
          l_t_eltprio       TYPE rzx0_t_eltprio,
          l_t_eltattr       TYPE rzx0_t_eltattr,
          l_t_eltxref       TYPE rzx0_t_eltxref,
          l_t_compdir       TYPE rzx0_t_compdir,
          l_t_compic        TYPE rzx0_t_compic,
          l_t_select        TYPE rzx0_t_select,
          l_t_range         TYPE rzx0_t_range,
          l_t_calc          TYPE rzx0_t_calc,
          l_t_elttxt        TYPE rzx0_t_elttxt,
          l_t_cell          TYPE rzx0_t_cel.
    data: c_subrc LIKE sy-subrc.
    data:
      l_GENUNIID                  LIKE RSRREPDIR-GENUNIID,
      l_COMPID                  LIKE RSZCOMPDIR-COMPID,
      l_COMPUID                  LIKE RSZCOMPDIR-COMPUID,
      I_OBJVERS                  LIKE RSZCOMPDIR-OBJVERS,
      I_WITH_TEMPLATES         LIKE RSGENERAL-BOOL,
      I_BY_INFOCUBE           LIKE RSZCOMPIC-INFOCUBE,
      I_TEMPLATE_TYPE           LIKE RSZELTDIR-DEFTP,
      I_VARIABLE_TYPES           LIKE RSZHELP-VARTYPES,
      I_VARIABLE_INFOOBJECT    LIKE RSZGLOBV-IOBJNM,
      I_LANGUAGE                  LIKE SY-LANGU,
      I_USE_BUFFER           TYPE RS_BOOL.
    FIELD-SYMBOLS:
                   <l_s_eltdir>        TYPE rzx0_s_eltdir,
                   <l_s_compdir>       TYPE rzx0_s_compdir,
                   <l_s_compic>        TYPE rzx0_s_compic,
                   <l_s_eltxref>       TYPE rzx0_s_eltxref.
    DATA:
        l_t_eltxref_seltuid   LIKE rszeltxref-seltuid,
        l_t_eltxref_teltuid   LIKE rszeltxref-teltuid,
        l_t_eltxref_laytp     LIKE rszeltxref-laytp.
      s_characteristic  = CHARACT.
    Find instances of the Forecast/Budget Variable in queries
      s_varname  = VARIABN.  "'ZE_BFC01'.
      SELECT SINGLE VARUNIID from RSZGLOBV
          INTO s_varnameu where VNAM = s_varname.
      clear lt_line.
      lv_count  = 0.
      lv_count2 = 0.
    Loop through all the queries
      select * from RSZELTDIR
               into corresponding fields of lt_line
               where DEFTP = 'REP'
               and OBJVERS  = 'A'.
               l_COMPUID = lt_line-ELTUID.
               l_GENUNIID = lt_line-MAPNAME.
             Filter by the Z Developed Queries
               IF l_GENUNIID CP 'Z*'.
                clear lt_line20.
                Get the Query Long Name
                  select single * from RSZELTTXT
                    into lt_line20
                    where eltuid = lt_line-eltuid           "rszeltdir-eltuid
                    and objvers = 'A'
                    and langu = 'EN'.
                  Find all the query elements within the query using function module
                  Get the tables of source query and its components
                    CALL FUNCTION 'RSZ_X_COMPONENT_GET'
                      EXPORTING
                       i_genuniid   =
                       I_COMPID     =
                        I_COMPUID     = l_COMPUID
                      IMPORTING
                        e_subrc       = c_subrc
                      TABLES
                       c_t_eltdir    = l_t_eltdir
                       c_t_eltprop   = l_t_eltprop
                       c_t_eltprio   = l_t_eltprio
                       c_t_eltattr   = l_t_eltattr
                        c_t_eltxref   = l_t_eltxref.
                       c_t_compdir   = l_t_compdir
                       c_t_compic    = l_t_compic
                       c_t_select    = l_t_select
                       c_t_range     = l_t_range
                       c_t_calc      = l_t_calc
                       c_t_elttxt    = l_t_elttxt
                       c_t_cell      = l_t_cell.
                    LOOP AT l_t_eltxref ASSIGNING <l_s_eltxref>.
                      l_t_eltxref_seltuid = <l_s_eltxref>-seltuid.
                      l_t_eltxref_teltuid = <l_s_eltxref>-teltuid.
                      l_t_eltxref_laytp  = <l_s_eltxref>-laytp.
                      IF l_t_eltxref_laytp = 'FIX' OR l_t_eltxref_laytp = 'COL' OR l_t_eltxref_laytp = 'ROW' OR l_t_eltxref_laytp = 'AGG'.
                        Determine if the Query Element is matching to the characteristic
                          select * from rszrange
                             into corresponding fields of lt_line2
                             where eltuid = l_t_eltxref_teltuid        "rszeltxref-teltuid
                             and objvers = 'A'.
                        Determine the variable name or master data value
                              IF lt_line2-LOWFLAG = 1.
                                Populate tables if match for Characterisic
                                  IF lt_line2-IOBJNM = s_characteristic.
                                      move lt_line-ELTUID  to lt_line-ELTUID.
                                      move lt_line-MAPNAME to lt_line-MAPNAME.
                                      move lt_line2-LOW    to lt_line-TXTLG.
                                      append  lt_line to lt_tab.
                                      lv_count = lv_count + 1.
                                      clear lt_line2-LOW.
                                  ENDIF.
                              ELSE.
                                 select * from RSZGLOBV
                                   into corresponding fields of lt_line3
                                   where VARUNIID = lt_line2-LOW
                                   and objvers = 'A'.
                                  Populate tables if match for Characterisic
                                    IF lt_line2-IOBJNM = s_characteristic.
                                        move lt_line-ELTUID  to lt_line-ELTUID.
                                        move lt_line-MAPNAME to lt_line-MAPNAME.
                                        move lt_line3-VNAM   to lt_line-TXTLG.
                                        append  lt_line to lt_tab.
                                        lv_count = lv_count + 1.
                                        clear lt_line3-VNAM.
                                    ENDIF.
                                endselect.
                              ENDIF.
                          endselect.
                      ENDIF.
                      clear l_t_eltxref_seltuid.
                      clear l_t_eltxref_teltuid.
                      clear l_t_eltxref_laytp.
                    ENDLOOP.
               ENDIF.
               clear lt_line-ELTUID.
               clear lt_line-MAPNAME.
               clear lt_line-TXTLG.
      endselect.
        sort lt_tab by MAPNAME.
        delete adjacent duplicates from lt_tab comparing ELTUID MAPNAME TXTLG.
       DIRECTORY represents path where file is stored .
        lc_DIRECTORY = '/interfaces/EDW/data/CSM/'.
        CONCATENATE 'EDW Queries by Characteristic -' SY-DATUM
        '.txt' into P_FILE SEPARATED BY SPACE.
      CONCATENATE lc_DIRECTORY P_FILE into FILENAME.
    Opening the Log File
      OPEN DATASET FILENAME FOR OUTPUT IN TEXT MODE
                           ENCODING DEFAULT.
        IF SY-SUBRC NE 0.
          WRITE: 'File cannot be opened. Reason:'.  ", D_MSG_TEXT.
          EXIT.
        ENDIF.
       CONCATENATE 'System Date -' SY-DATUM 'YYYYMMDD' into lc_date
              SEPARATED BY SPACE.
       CONCATENATE 'EDW System -' SY-SYSID into lc_syst
              SEPARATED BY SPACE.
          TRANSFER lc_date TO FILENAME.
          TRANSFER lc_start_time TO FILENAME.
          TRANSFER lc_syst TO FILENAME.
      Queries for the parameters
          loop at lt_tab into lt_line.
             TRANSFER lt_line TO FILENAME.
          endloop.    "Query Loop
    Closing the Log File
      CLOSE DATASET FILENAME.

  • Varinat configuration

    Variant Configuration
    Variant configuration is for manufacturing complex products in which customer determines the features of the product. Objective of variant configuration is to react quickly to customers' requirements.
         Here it needs not to create separate material for each variant of a product. When companies introduce variant configuration this often goes beyond a business process re-engineering project. Variant configuration offers an opportunity to restructure product structures for which then processes are defined. This has a direct impact to the core areas such as marketing and product data management.
    2     Advantages of VC
    &#61623; No need to Create separate material master for each variant combination.
    &#61623; Super BOM and Super Routing is enough for representing all possible Variants and Operations.
    &#61623; Able to react more flexible to customer demands.
    &#61623; Increase Information exchange between sales, engineering and production.
    3     What is Configurable Material?
    &#61623; A material with different features or characteristics and options is known as configurable material. Example: PC, Car.
    &#61623; Configurable materials are either created in a material type that allows the configuration (n the standard system, the material type KMAT) or they are given the indicator Configurable in the material master record.
    4     Master Data used for VC
    Following Objects are used as Master data for Variant configuration.
    1. Super BOM
    2. Super Routing
    3. Characteristic
    4. Class
    5. Object Dependencies
    6. Configuration Profile
    7. SD Condition records
    4.1 Super BOM
    Super BOM Contains all the components for producing configurable product. It contains both variant as well as non-variant parts required for producing configurable product.
    4.1.1 Super BOM configuration
    Super BOM can be created either one of the following methods.
    &#61623; Create BOM with class Item of 200-class type that contains all characteristic of a configurable material.
    &#61623; Create BOM with all possible materials as its components. Then assign /define dependencies to each component.
    The different between this two method is
    &#61623; BOM with class item, no need to assign or define object dependencies. Instead of that each material is classified in material master itself using class 200.
    &#61623; For both cases all characteristics are assigned to class 300 which is again assigned to KMAT material in order to trigger configuration in configuration profile.
    4.1.2 Super BOM with Class Item
         Class items used to control the selection of variant parts in a BOM. Variant parts are classified in a class, and the class is entered in the BOM as a class item. When you configure the material, the class is replaced by a suitable variant part.
    4.1.3 Advantages of using Class Item in BOM
    &#61623; Only one item for the class is enough, instead of several items for the individual variant parts.
    &#61623; No need to create and assign selection conditions.
    &#61623; Able to classify additional objects in the class at any time, without having to change the BOM.
    4.1.4 Steps involved in super BOM with Class
    – Define all Characteristics and its Values assign it to Class with type 200.
    – Assign characteristic Values to materials by Classification  material
    – Assign class 200 with material instead of assigning all BOM items.
    – Create and Assign class 300 (with same characteristics) with configurable product using configuration profile.
    4.1.5 Super BOM with Material Components
    This bill of material (BOM) of a configurable material contains all the components that are required to manufacture the material. The BOM contains components that are only used in specific variants (variant parts), as well as components that are used in all variants (non-variable parts).
    4.1.6 Steps involved in super BOM with Material Components
    – Define all Characteristics and its values assign it to Class with type 300.
    – Assign Class with configurable material in Configuration profile.
    – BOM is created with all variant and non-variant items.
    – Define interdependency between objects (Characteristic, BOM item, Routing Operation etc…) by using Object Dependencies.
    – Assign class 300 with configurable product using configuration profile.
    4.2   Super Routing
         A configurable routing describes the production process for all variants of a product. Instead of creating a routing for each variant of a product, you can create operations for one routing, or a "super" routing.
    It is possible to maintain Object dependencies for following in super routing:
    &#61623; Sequences
    &#61623; Operations/sub-operations
    &#61623; Production resource/tool assignments
    The routing is configured by system, when order is created for KMAT material.
    4.3   Characteristic
    Characteristic is used to define the features of a configurable material. To enable to use characteristics to configure a material, assign the material to a class of class type 300. The customer can choose from among different options for each characteristic.
    &#61623; Characteristics describe the properties of objects. The values of a characteristic specify these properties.
    &#61623; Value assignment to characteristic may be single value or multiple value with required entry or restrict able entry.
    &#61623; In characteristic it is also possible to use table name and its field name in order to change the Object quantity or values. I.e. BOM item quantity or Operation time, which is known as ‘reference characteristic’.
    &#61623; In Restriction screen allowed Class types are entered i.e. for what are the class this characteristic may used. In general for Variant configuration class 200 and 300 are used.
    &#61623; It is also possible to assign Dependency to characteristic values maintained in Characteristic.
    4.4 Variant Class
    &#61623; In Variant configuration, Class is used to hold the characteristics that describe about configurable material. Class type to determine which object types can be classified.
    &#61623; Class is used in variant configuration if the class has a class type that supports variant configuration. In Customizing for Classification, the Variant class type indicator must be set for the class type. In the standard system, this is class type 300.
    4.5   Dependencies
    &#61623; Dependencies restricts the combinations of options i.e. characteristic that are not allowed. It also select exactly the right BOM components and operations to produce a variant.
    &#61623; It also describe the interdependencies between characteristics and characteristic values
    &#61623; It control which components are selected from a bill of material (BOM) and which operations are selected from a task list
    &#61623; It also changes the values of fields in BOM items and operations during configuration.
    4.5.1 Global and Local Dependencies
    Global dependencies have the following properties:
    &#61623; They are independent of any object.
    &#61623; They are identified by a name that you assign, and are maintained and managed centrally.
    &#61623; If you change a global dependency, the change affects all the objects where the dependency is used
    Local dependencies have the following properties:
    &#61623; They are only available to the object for which you create them
    &#61623; You cannot use the central maintenance functions on these dependencies, and you cannot allocate them to other objects
    &#61623; They are identified by a number assigned by the system, not an external name
    Local dependencies are only used where certain dependency will not be needed elsewhere
    The differences between global and local dependencies are as follows:
    &#61623; Global dependencies are created centrally and can be assigned to several objects.
    &#61623; Local dependencies are created for one object and can only be used with this object
    4.5.2 Declarative and Procedural Dependency
    &#61623; In Declarative dependencies the result are explained logically
    &#61623; Declarative dependencies are easier to trace than procedural dependencies, because the point in time when the dependency is processed and the sequence in which the dependencies are processed are not relevant.
    &#61623; Example for Declarative dependency:
    - Constraint
    - Actions
    - Preconditions (provided that they contain no non-declarative expressions)
    - Selection conditions (provided that they contain no non-declarative expressions)
    &#61623; In Procedural Dependency result depends on the processing sequence and the point in time when the dependency is processed.
    - Procedures
    - Preconditions (only if they contain non-declarative expressions)
    - Selection conditions (only if they contain non-declarative expressions)
    4.5.3 Dependencies Types
    The SAP System supports the following types of dependencies:
    &#61623; Preconditions
    &#61623; Selection conditions
    &#61623; Procedures
    &#61623; Actions (obsolete)
    &#61623; Constraints
    4.5.4 Preconditions
    Preconditions can be allocated to the following objects:
    &#61623; A characteristic that you want to hide
    &#61623; A characteristic value that you want to hide
    Preconditions are used to hide characteristics and characteristic values that are not allowed and thereby ensure that the configuration of an object is consistent. In the precondition, it is also possible define the circumstances under which a characteristic or value is hidden.
    A precondition is fulfilled if the condition you enter is either true or not violated.
    4.5.5 Selection Conditions 
    Selection conditions used to ensure that all the objects relevant to a variant are selected:
    &#61623; Selection conditions determine which variants require a specific component or operation
    &#61623; Selection conditions determine when it is mandatory to assign a value to a characteristic
    Selection conditions may allocate to the following objects:
    &#61623; Characteristics
    &#61623; BOM items
    &#61623; Operations in task lists
    &#61623; Sub-operations
    &#61623; Sequences of operations
    &#61623; Production resources/tools (PRTs)
    A selection condition is fulfilled if the condition in it is unambiguously true.
    4.5.6 Procedure
    Procedures can be assigned to the following objects:
    &#61623; The characteristic value that triggers the procedure
    &#61623; The characteristic that triggers the procedure
    &#61623; The configuration profile of the configurable object
    Procedure is used for following purposes.
    &#61623; A procedure is used to infer a value for a characteristic, you enter the variable $SELF before the characteristic.
    &#61623; Procedures can overwrite values that are set by other procedures.
    &#61623; Procedures are always used for pricing (see Variant Conditions).
    Processing Sequences of Procedure
    If an object has more than one procedure, a processing sequence is used to define the point when the procedure is processed.
    4.5.7 Action
    Actions are used to infer characteristic values. An action is processed as soon as the characteristic to which it is assigned has a value. It is not possible to overwrite the characteristic values that are set by an action.
    The following Objects can assign to action:
    &#61623; The characteristic value that triggers the action
    &#61623; The characteristic that triggers the action
    &#61623; The configuration profile of the configurable object
    &#61623; Configuration profile
    &#61623; BOM items – to change the quantity
    &#61623; Operations in task lists – to change the standard values
    Since Action is lead to serious system performance problems, it is replaced by Procedure and Constraint.
    4.5.8 Constraint
    This dependency type is mainly for intensively interactive configuration tasks and for configuration tasks in which you need to take into account the dependencies between the characteristics of several objects. The main purpose of a constraint is to monitor the consistency of a configuration.
    Constraints have the following distinguishing features:
    &#61623; Constraints are used to describe the dependencies between completely different objects and their characteristics.
    &#61623; Constraints are used to store information on which conditions must be fulfilled if the configuration is to be consistent.
    &#61623; Constraints are not directly allocated to individual objects. They are grouped together to form dependency nets and allocated to a configurable material in the configuration profile.
    &#61623; In constraints, you enter objects in their general form of expression, without using $SELF, $ROOT, or $PARENT to identify objects. As a rule, you refer to objects in constraints by entering the class to which the objects are allocated.
    &#61623; Constraints are declarative dependencies. The processing sequence of constraints and the point in time when constraints are processed is not relevant.
    &#61623; Constraints are not processed in a specific order. You cannot determine when a specific constraint is used.
    In any processing situation, a constraint is only processed once. If a value that is relevant to the constraint is changed, the constraint is triggered again.
    4.5.8.1 Structure of Constraints
    There are four sections in a constraint. Each part is identified by a keyword. A colon follows the keyword. Each section ends with a period.
    OBJECTS:
    In this section, you enter the objects that are relevant to the constraint. You must enter the relevant objects in all constraints. You can also define variables for objects or characteristics.
    CONDITION:
    The condition entered here must be fulfilled in order for the constraint to be used. You do not need to enter a condition in a constraint. You can leave out the keyword CONDITION: if required. However, if you enter the keyword you must enter a condition.
    RESTRICTIONS:
    In this section, you enter the relation that must exist between the objects and characteristics if the configuration is to be consistent. You must enter a restriction in a constraint.
    INFERENCES:
    In this section, you enter the characteristics for which characteristic values are to be inferred. The main purpose of constraints is to check the consistency of a configuration. Usually, values are only inferred if you make an entry in this section.
    For reasons of performance, only use constraints to infer values if it is really necessary. Constraints are grouped together to form dependency nets. The dependency net is allocated to a configurable material in the configuration profile.
    4.5.9 Dependency Net:
    Constraints are grouped together in dependency nets. For this reason, the variant configuration menu does not support a function for creating constraints directly. So that only constraints are defined within a dependency net.
    5     Configuration Profile
    The configuration profile for a material controls the configuration process in sales order. Configurable profile also used to define central settings for configuring the object. Using this profile it is possible to hide some of the characteristic value defined during characteristic creation. We can assign any number profile for a configurable material in which selection is based on either priority or manual selection during configuration.
    By defining a filter in the configuration profile, possible to determine the scope of the BOM items to improve system performance when exploding the BOM. The filter is active in high-level configuration, in result-oriented BOMs, and in SET processing.
    5.1     Filters in Configurable Profile
    Following objects can be used as filter:
    &#61623; Object type
    Class, material, document, text
    In the standard system, all object types are selected and therefore exploded in the configuration. Deselect the object types that you do not want to be displayed.
    &#61623; Item category, for example, stock or non-stock item
    All item categories in the configuration are exploded in the standard system. Remove the selection for the item categories you do not want to be displayed.
    &#61623; Item status
    You maintain the status of a BOM item in maintain BOM dependent on its usage.
    All items are displayed regardless of their item status in the standard system. However, only the items with this status are displayed when you select specific item statuses. Items are not displayed that do not have the selected status.
    &#61623; Sort string
    You can assign sort strings for BOM items in maintain BOM. You can restrict the display of the BOM items by using these sort strings.
    Only items that carry sort strings are checked and only those that match are displayed. Items that have no sort string are always displayed.
    5.2     Component availability in the configuration profile
    The availability check is just a snapshot, telling that whether the materials required are in stock at this moment. Several users can access the same material at once. This means that supply problems can sometimes be overlooked.
    Example: Only 2 pieces of a material are in stock, but the material is used in 3 BOMs. The availability check does not detect a supply problem. The availability check for all 3 BOMs shows 2 pieces in stock.
    5.3      Process Overview
    There are different processes for configurable materials in sales documents. These processes can be defined on the Configuration initial screen tab in the configuration profile, by choosing the Configuration parameter tab.
    The Process are described in the following scenarios:
    Planned/Production orders
    This processing type is used to describe variant products whose configurable materials are assembled using planned and production orders. The bill of material (BOM) can have single-level, multi-level, or no explosion.
         Sales Order (SET)
    This processing type is used to describe variant products that comprise salable configurable materials. These products are supplied together, but are not assembled in a production order. Only sales-relevant BOM items are exploded in the sales order.
    Order BOM.
    You use this processing type if you want to make customer-specific changes to the BOM of a material that you configure in the sales order. In the sales order, you assign values to the characteristics of the header material, but the BOM is not exploded in the sales order.
    6     Material Variant and Planning Material
    6.1     Material Variant
    &#61623; Material Variant is an material that can arises from individual Configuration of a configurable product and can be kept in stock
    &#61623; For variants that are required frequently, we can create material variants, which can be produced without a sales order and kept in stock. When a sales order is received, it is possible to check whether the variant required is in stock, so that it can deliver immediately.
    &#61623; For material variants, a separate material master record is created with a material type that is kept in stock.
    &#61623; Separate BOM and routing for a material variant, or you can link the material variant to the BOM and routing of the configurable material. The correct BOM items and operations are determined from the characteristic values assigned to the variant.
    6.2     Planning Material
    &#61623; Planning Material is a material, which contains all the non-variant parts.
    &#61623; By using planning material all non-variants are procured / produced before sales order.
    &#61623; It is also possible for Planing the Planning Materials without reference to any sales requirement.
    &#61623; Planning material is planned separately using strategy 65 and produced before sales order creation.
    7 Planing in VC
    The following strategies are used for planning configurable materials and its variant parts.
    Make to Order production of Variants
    – Make to Order for Material Variant. - 26
    – Planning Variants without final Assembly- 55
    – Planning Variants with planning Material - 65     
    – Make to order with configurable material.-  25
    – Characteristic Planning with dependent requirement - 56  and
    – Assembly Processing with Characteristic  Planning - 89
    8 Variant Configuration: (Object Diagram)
    9 Variant Pricing and  Surcharges
    9.1     Sales BOM
    A bill of material (BOM) describes the different components that together create a product. A BOM for a bicycle, for example, consists of all the parts that make up the bicycle: the frame, the saddle, wheels, and so on.
    When you enter the material number of a bill of materials that is relevant for sales order processing, the system displays the material that describes the whole bill of materials as a main item. The individual components are displayed as lower-level items.
    There are two ways to process a bill of materials in Sales. Once you have entered a bill of material in a sales order, the system runs pricing, inventory control, and delivery processing at: Main item level if the material is assembled, or - Component level if the material is not assembled.
    9.2     Processing at Main Item Level (ERLA)
    If you want the system to carry out pricing, inventory control, and delivery processing at main item level, enter ERLA in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. This means that the components only function as text items and are not relevant for delivery.
    9.3     Processing at Component Level (LUMF)
               If you want the system to carry out pricing, inventory control, and delivery processing at the component level, enter LUMF in the Item category group field of the Sales: sales org. 2 screen in the material master record of the finished product. In this case, only the components are relevant for delivery. During processing the system automatically creates a delivery group. The latest delivery date among all the components becomes the delivery date for the entire delivery group.
    10   Configuration of VC
    10.1 Production Planning and Control
    10.1.1 Creating Material
    Use
    The purpose of this activity is to create the material masters for the materials required in this scenario.
    Procedure
    Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Materials Management &#61614; Material Master &#61614; Material &#61614; Create (General) &#61614; Immediately
    Transaction Code     MM01
    In Material Master of KMAT material following settings are maintained:
    &#61623; Configurable material indicator in Basic Data must set.
    &#61623; MRP type is PD.
    &#61623; Lot size – EX ( Lot for lot size)
    &#61623; Availability check – 02
    &#61623; Planning Strategy 25 is entered in MRP 3 screen view.
    &#61623; Item category group 0002 or 0004 is to be given in sales view.
    10.1.2 Creating Bill of Material
    Purpose:
    &#61623; The purpose of this activity is to create bills of material (BOMs) for the configurable material which is known as ‘super BOM’
    &#61623; Super BOM comprise all the variant as well as non-variant parts required for producing configurable material.
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Production &#61614; Master Data &#61614; Bills of Material &#61614; Bill of Material &#61614; Material BOM &#61614; Create
    Transaction Code     CS01
    &#61623; The Create Material BOM: initial screen appears. On this screen, data that identifies the bill of material are maintained as well effectivity data.
    &#61623; In the Material field, the configurable material for which super BOM need to create is entered.
    &#61623; Plant and BOM usage is entered. In general BOM usage 1 for production and 3 is for Universal.
    &#61623; In Component screen list of variant and non-variant parts are entered along with that quantity is entered based on Base qty. of the configurable material.
    &#61623; It is also possible to enter a class as a BOM component with item category ‘class Item’. This class must hold all characteristics and also classified with each material.
    &#61623; Class type 200 and 300 can be used as a class item.
    Following Procedure is followed for assigning class with BOM as a class Item.
    &#61623; Enter the item category for class items in BOM.
    &#61623; Make entries in the fields that identify the class
    – Class types
    – Class
    &#61623; Enter the quantity.
    - Enter a unit of measure if appropriate.
    - The system determines the unit of measure from the additional data of the class.
    -  If a unit of measure without a dimension is maintained in the additional data of the class, you cannot change this unit.
    10.1.3 Creating Characteristic
    Purpose:
    &#61623; Characteristic is created with possible values.
    &#61623; It is also possible to use table name and its field name in order to change the Object quantity or values. Ie BOM item quantity or Operation time. This is known as ‘Reference characteristic’.
    &#61623; For changing BOM quantity Characteristic is created with table name STOP-MENGE is used.
    &#61623; For Variant pricing purpose SDCOM-VKOND is used.
    &#61623; Characteristics allow describing and distinguishing between objects, such as length, color, or weight within the classification system.
    Procedure
    SAP Menu     Logistic->Centralfunction->Environment->classification->Chracteristics
    Transaction Code     CT04
    &#61623; From the classification menu, choose Characteristics.
    &#61623; Enter data on the initial screen.
    &#61623; In the Characteristic field, enter a name for new characteristic
    &#61623; Enter a change number if you want to create the characteristic using engineering change management.
    &#61623; To do this, choose processing type Create characteristic.
    &#61623; You can also copy the data of an existing characteristic. Use the pushbutton Create by copying. Enter the name of a characteristic you want to copy.
    &#61623; Confirm the entries.
    &#61623; On the Basic data tab page enter the most important control data for the characteristic.
    &#61623; You must maintain the basic data for all characteristics. All other screens are optional.
    &#61623; In the formatting data for value assignment, whether a characteristic is single-value, multiple-value, or retractable is defined. It is not possible change the value assignment indicator once it has set. It applies wherever the characteristic is used.
    &#61623; The data type of the characteristic determines which values can be entered for the characteristic. I can any one of the following
    - Characters
    - Numeric
    - Time format/Date format
    - Currency format and
    - User defined data type.
    &#61623; For numeric characteristic it need to maintain that whether interval values to a numeric characteristic, or only individual values need to be maintain in Basic Data screen itself.
    &#61623; Languages in which characteristic want to describe are entered.
    &#61623; Choose the tab page Values.
    &#61623; Enter values in the entry fields. Enter each value in a separate field.
    &#61623; The values must match the format that you defined on the Basic Data screen. You can enter up to the number of characters that you defined in the format.
    &#61623; If your characteristic is an alphanumeric characteristic, enter a language-dependent value description. You can enter up to 30 characters.
    &#61623; It is not possible to  enter a language-dependent description for numeric values
    &#61623; It is also possible to define one value as a default value. This value then appears as a default in characteristic value assignment functions
    &#61623; Additional value indicator determines that whether values that are not defined as allowed values can be assigned to a characteristic
    &#61623; The following value check strategies are available in value maintenance screen.
    - Allowed Values:
    - Check Tables
    - Function module
    - Catalog character
    &#61623; Allowed values permits only values defined in characteristics maintenance are used to check a characteristic value
    &#61623; Check table permits only values entered in characteristics maintenance is used to check a value
    &#61623; Function module entered is used to check characteristic values.
    &#61623; Value catalog entered is used to check characteristic values
    &#61623; Documents, such as drawings or photographs, with characteristics can be linked in additional data screen. Before link a document to a characteristic, it must create a document info record in the document management system.
    &#61623; In this screen it also possible to restrict or hidden or displaying only allowed values to characteristic.
    &#61623; It is possible to that characteristic can be only assigned to particular class type by assigning type in restriction screen.
    &#61623; To change a characteristic selects the pushbutton Change in characteristics after entering the characteristic. To display the characteristic chooses the pushbutton Display.
    10.1.4 Creating Class:
    Purpose:
    &#61623; A class is used to hold the characteristics that describe a configurable material. By linking the class to the configurable material, you allow the material to be configured using the characteristics of the class.
    Procedure
    SAP  Menu     Logistic->Central function->Environment->classification->Class
    Transaction Code     CL01
    &#61623; Class holds all characteristics describe configurable material.
    &#61623; Class with class type 300 is used in configuration profile.
    &#61623; On basic Data screen class description, its status is entered. Status determines:
    &#61623; whether a class can be maintained
    &#61623; whether objects can be allocated to a class
    &#61623; whether the class can be used for selecting objects
    &#61623; Class group is used to group together related classes and also for finding classes quickly via a matchcode.
    &#61623; ‘Same Classification ‘indicator determines whether system check for identical characteristic values. In this case, where several objects are assigned that have the same values for all characteristics to the same class. Depends upon indicator system give warning or error message or no message.
    &#61623; Keyword string is used for finding a class via matchcode.The description entered on the basic data screen serves as the first keyword
    &#61623; On characteristic screen list characteristic which has to attach with configurable material is entered.
    &#61623; Using document tab screen it is possible to assign documents related to configurable object.
    &#61623; On additional data screen whether or not this class can be used as a class component in bills of material. If it is yes then Unit of measure in which stocks of the material are managed. The system converts all the quantities you enter in other units of measure (alternative units of measure) to the base unit of measure and resulting item category which will replace this class item in BOM (i.e. Stock, Non-stock item etc…).
    10.1.5 Creating Dependency
    Purpose
         Dependency describes the interdependencies between characteristics and characteristic values and it controls which components to be selected from a bill of material (BOM) and which operations to be selected from a task list. It also changes the field values in BOM items and operations during configuration.
    Procedure
    SAP  Menu     Logistic->Central function->Variant Configuration->dependency->Single Dependency->Create Dependency
    Transaction Code     CU01
    &#61623; From the variant configuration menu, choose Dependency -> Single dependency-> Create
    &#61623; In initial screen name of the dependency is entered. If dependency need to create for a specific date, enter a change number. It is also possible to create dependency by copying from existing dependency.
    &#61623; On basic data screen the following data are required to enter
    - A language-dependent description for the dependency
    - Also possible to enter descriptions in different languages by choosing Descriptions.
    - Long texts for the dependency, choose Extras -> Documentation.
    - In the standard R/3 System, the status ‘In preparation’ when a dependency is created first time. The status is set to ‘Released’ when the source code is syntactically correct.
    - Finally suitable dependency type is selected.
    &#61623; In Dependency editor the source code for the dependency is entered. Once the source code is syntactically correct, the source code is saved.
    &#61623; Now the status of the dependency is turns to ‘Released’. Save the Dependency and exit.
    10.1.6 Changing Bill of Material (Assign Dependencies)
    Purpose:
    By assigning dependencies to BOM components, it is possible to restrict the selection of irrelevant variant parts.i.e correct BOM components are get selected at result of configuration. It is also possible to change the component quantity depends upon characteristic value changed.
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Production &#61614; Master Data &#61614; Bills of Material &#61614; Bill of Material &#61614; Material BOM &#61614; Change
    Transaction Code     CS02
    &#61623; Dependencies are assigned with respect to characteristic for each variant part.
    &#61623; Dependencies are created either locally within object or globally which can be assigned to any objects.
    &#61623; In BOM General Item overview screen choose the component in which dependency need to assign and choose menu path Extras -> Dependency -> assignment of dependency for assignment.
    &#61623; It also possible to enter dependency directly in BOM itself by choosing Extras -> Dependency -> dependency editor.
    10.1.7 Creating Configuration Profile
    Purpose
    &#61623; Configuration profile used for assigning configurable material with variant class (300) and also used to maintain some central settings.
    &#61623; It is possible to assign more than one configurable profile for one KMAT material.
    &#61623; The selection of profile depends upon either by priority or by manual selection.
    &#61623; It is also possible to assign dependencies to configurable profile.
    &#61623; Class with type 300, which hold the entire characteristics of KMAT material, are assigned to each profile
    Procedure:
    Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Production &#61614; Master Data &#61614; Material Master &#61614; Environment &#61614; Configuration Profile &#61614; Create
    Transaction Code     CU41
    &#61623; From the Variant Configuration menu, choose Configuration profile->Create.
    &#61623; A dialog box will be displayed. The object name is entered. Confirm your entries.
    &#61623; On profile overview screen the following data need to be entered.
    &#61623; Profile name and the class type of classes used for configuration. In Customizing for the Classification System, the class type must be defined as a variant class type.
    &#61623; Choose Goto -> Class assignments or the ‘Class assignment ’ pushbutton to assign the object to a class.
    &#61623; In the classification screen, names of the classes are entered.
    &#61623; It is possible to restrict allowed characteristic  values for the configurable object if required.
    &#61623; Release of profile is possible only if configurable object is assigned to a class. To go to the detail screen, where you define further settings, choose the Profile detail pushbutton or double-click on the profile.
    10.1.7.1 Optional Settings on the Profile Overview
    &#61623; Organizational Areas
    You can specify organizational areas for configuration. If you restrict a profile to specific organizational areas, you only see the characteristics that are relevant to your area when you configure the object.
    You can change how characteristics are displayed according to organizational area for your user on the value assignment screen.
    &#61623; Priority of Configuration Profiles
    You can create several configuration profiles for a configurable material. The profile with the lowest number has the highest priority.
    If you define several profiles for an object, you see a dialog box for selecting a profile when you start configuration. The profile with the highest priority is at the top of the list.
    The priority is also relevant if you use Application Link Enabling (ALE) or intermediate documents (IDocs) to run configuration, rather than dialog mode. In this case, the profile with the highest priority is selected for the object. Profiles that have no priority are at the top of the list, because they automatically have priority 0.
    10.1.7.2 Profile Detail
    &#61623; Configuration Profiles for Materials
    The configuration profile has several screens. Depending on what you enter for the BOM explosion and configuration process, fields are shown or hidden.
    The parameters you maintain for a material apply to the material as a header material in a BOM structure. You cannot define separate settings for use of a configurable material as an assembly in a BOM.
    - By choosing the Assignments pushbutton, you can assign dependencies to the configuration profile. You also see this pushbutton on the basic data tab, once at least one dependency is assigned.
    &#61623; Basic Data Tab
    - In the basic data, click on the profile overview data.
    - If configuration process need to starts with a Start logo, documents are assigned such, as a graphic showing the product you want to configure, to the variant class.
    - Configuration Initial Screen Tab
    &#61623; Configuration parameters
    - The parameters for BOM explosion and the configuration process in the sales order are specified here.
    - BOM application must be entered, if BOM explosion ‘None’ is selected rather than single and multi level explosion is selected.
    - By entering a level of detail for a multi-level configuration, system performance will be improved.
    - It is also possible to define a filter and set the indicator for an availability check on assemblies.
    10.1.8 Changing Configuration Profile: Add User Interface Settings
    Purpose
    Settings for the configuration editor in user interface.
    - An interface design is used to group characteristics together on the value assignment screen.
    - Here it also possible to define object-specific settings for functions in the configuration editor. These settings are defaults for configuration, and can be overwritten for your user in the configuration editor.
    - For all configuration parameters except BOM explosion ‘None’, manually select the screens for the configuration editor and define which screen configuration starts with. The start screen must be one of the allowed screens.
    - The indicator for the configuration browser independently of the other start screens can be selected, because the browser is an additional screen section.
    Configuration Profiles for Objects Other than Materials
    - Object-specific settings for displaying characteristics and characteristic values in the configuration editor can be defined. These settings are defaults for configuration, and can be overwritten for your user in the configuration editor.
    Procedure
    Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Production &#61614; Master Data &#61614; Material Master &#61614; Environment &#61614; Configuration Profile &#61614; Change
    Transaction Code     CU42
    10.1.9 Configuration Simulation
    Purpose:
    &#61623; Configuration simulation is used to check the configuration model. In the configuration simulation, the whether or not Object structure is created correctly and dependencies are working fine is checked.
    &#61623; Simulation of Sales/Engineering
    - The configuration parameters in the configuration profile apply. Whether the configuration is simulated from the sales point of view or the engineering point of view is defined.
    - If select Sales & distribution is selected the configuration in a sales document will be simulated (sales order or quotation), so the BOM explosion depends on the settings in the configuration profile.
    - If Engineering is selected, the configuration in order BOM processing will be simulated. The configuration and BOM explosion depend on the configuration parameters in the same way as when maintaining an order BOM. For example, we cannot configure the header material, because the configuration is copied from the sales order.
    &#61623; Simulation of a Planned Order
    - On the characteristic value assignment screen, we can choose Planned order to display the components that are determined in material requirements planning (MRP) according to the characteristic values assigned. This is especially relevant to assemblies whose BOMs are exploded in MRP, not in Sales & distribution (for example, assemblies with the BOM explosion setting None in their configuration profile).
    Procedure:
    SAP R/3 menu     Logistics &#61614; Production &#61614; Master Data &#61614; Bills of Material &#61614; Environment &#61614; Variant Configuration &#61614; Environment &#61614; Configuration Simulation
    Transaction Code     CU50
    &#61623; On the initial screen of the configuration simulation, select BOM to display the entire structure on the result screen.
    &#61623; If you have created more than one configuration profile for a material, you see a dialog box. Select a profile and choose Continue. If you want to call detailed information on the profile, choose Profile Detail or double-click on the profile.
    &#61623; To display the task list of an assembly on the result screen, select the assembly and choose View &#61614; Objects &#61614; Task list.
    &#61623; You see the operations or activities in the task list that was selected for the assembly during configuration.
    &#61623; Operations that have been changed by dependencies have an information icon next to them. You can display changes by choosing Information.
    &#61623; To return to the BOM explosion, choose View &#61614; Objects &#61614; BOM
    10.2 Sales and Distribution
    10.2.1 Creating Condition Records - VA00
    Purpose:
    The purpose of this activity is to create condition records for VA00.
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Sales and Distribution &#61614; Master Data &#61614; Conditions &#61614; Select Using Condition Type &#61614; Create
    Transaction Code     VK11
    &#61623; Create price for each value of the characteristics by select using condition type VA00.
    &#61623;  Create the Price for the condition type that represents these types of the standard-delivered condition type for this functionality is “VA00.” 
    &#61623; Condition type VA00 requires as key fields the sales Organization, distribution channel, and material number of the configurable.
    &#61623; Condition type PR00 used to maintain base price of the configurable material.
    &#61623; Using VA01it is also possible to maintain Surcharges and discounts.
    10.2.2 Condition records for Variant Price and Surcharges
    Purpose
    Condition records allow you to store and retrieve pricing data in the system. All the pricing elements of your daily business - the prices, discounts, and surcharges for freight and taxes - that you want to use for automatic pricing must be stored in the system as condition records. You can define as many condition records as you want for the different pricing elements for any validity period.
    You create condition records for all the pricing elements that the system takes into account during automatic pricing. During document processing, the system transfers data from the condition records and determines the amounts for individual pricing elements (prices, discounts and surcharges) and the final amount for the sales document
    Procedure
    10.2.2.1 Create a characteristic for the Pricing
    - Create Pricing characteristic like CAR_Pricing and go to additional data tab give SDCOM table name VKOND field name.
    SAP Menu     Logistic->Centralfunction->Environment->classification->Chracteristics
    Transaction Code     CT04
    10.2.2.2   Assign  the characteristic to the class
    Assign given characteristics to class, In variant configuration, a class is used to hold the characteristics that describe a configurable material. By linking the class to the configurable material, it allows the material to be configured using the characteristics of the class. In the standard R/3 System, the class type for configurable material is 300.
    SAP  Menu     Logistic->Central function->Environment->classification->Class
    Transaction Code     CL01
    10.2.2.3 Create a dependency that triggers the price
    A Dependency is a rule that defines how the different options and option values, represented by characteristics and characteristic values, relate to one another.  To create a dependency, follow the menu path
    SAP  Menu     Logistic->Central_function->VariantConfiguration->dependency->Single Dependency->Create Dependency
    Transaction Code     CU01
    10.2.2.4   Assign the dependency to the characteristic value that triggers the price
    For example eCar2002, the value “V8” refers to the engine selected by the customer.  Therefore, the dependency must be linked to the value “V8” of the characteristic that represents the engine type.  To do this, go to the master data record of the characteristic CAR_ENGINE
    SAP Menu     Logistic->Centralfunction->Environment->classification->Chracteristics
    Transaction Code     CT04
    Go to the “Values” tab.  From there, select the“V8” entry and use the menu path Extras Object dependencies Assignments, which brings you to the screenshot to the right; if you have created a global dependency, you can link it to the characteristic value.2 Once the dependency has been assigned, the information on this screen, such as the description (“Engine price”), will default to the information entered when you created the characteristic.
    10.2.2.5    Create variant price
      Create price for each value of the characteristics using condition type (or transaction VK11).  Create the Price for the condition type that represents these types of the standard-delivered condition type for this functionality is “VA00.”  Condition type VA00 requires as key fields the sales Organization, distribution channel, and material number of the configurable.
    In the same way using condition type VA01 is also used to maintain prices for surcharges and discounts.
    10.2.2.6   Creating the output condition records for sales
    Output types are used to represent various forms of output in the SAP system. Examples of output types in Sales and Distribution processing are order confirmations, freight lists, and invoices. You use the output type to control how the output should be transmitted, for example whether an order confirmation should be sent via EDI, or be printed
    10.2.3 Creating Output Condition Records: Sales
    Purpose:
    Output types are used to represent various forms of output in the SAP system. Examples of output types in Sales and Distribution processing are order confirmations, freight lists, and invoices. You use the output type to control how the output should be transmitted, for example whether an order confirmation should be sent via EDI, or be printed
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Sales and Distribution &#61614; Master Data &#61614; Output &#61614; Sales Document &#61614; Create
    Transaction Code     VV11
    &#61623; Choose Edit >Key combination
    &#61623; Select the key combination for which condition records are to be created.
    &#61623; Choose Enter.
    &#61623; Enter the appropriate key for each condition record, according to the key combination you selected.
    &#61623; For transmission medium 1 (Print output) or 7, you can maintain the communication data. To do this, choose Communication.
    &#61623; Save the condition records.
    10.2.3.1 Creating Output Condition Records: Billing
    Purpose
    The purpose of this activity is to create output condition records for billing. Output types are used to represent various forms of output in the SAP system. Examples of output types in Sales and Distribution processing are order confirmations, freight lists, and invoices. You use the output type to control how the output should be transmitted, for example whether an order confirmation should be sent via EDI, or be printed
    Procedure
    1. Access the activity using one of the following navigation options:
    SAP Menu     Logistics &#61614; Sales and Distribution &#61614; Master Data &#61614; Output &#61614; Billing Document &#61614; Create
    Transaction Code     VV31
    Enter an output type.
    &#61623; Choose Edit >Key combination
    &#61623; Select the key combination for which condition records are to be created.
    &#61623; Choose Enter.
    &#61623; Enter the appropriate key for each condition record, according to the key combination you selected.
    &#61623; For transmission medium 1 (Print output) or 7, you can maintain the communication data. To do this, choose Communication.
    &#61623; Save the condition records.
    10.2.4 Order BOM
    Purpose:
    Products that are made to order in plant engineering and construction and mechanical engineering are generally very complex and are specific to one customer. For this reason, you cannot define a BOM entirely in advance. Once you have created your sales order, you need to make manual changes to the BOM by creating an order BOM especially for the sales order, without changing the original BOM.
    The sales order, sales order item, and material number identify an order BOM. In variant configuration, you can work with 2 types of order BOM. The difference is in the way they are saved.
    Knowledge based order BOM
    The order BOM is saved as a copy of the super BOM with manual changes and dependencies.
    Result Oriented BOM
    The configuration result is saved as an order BOM, with manual changes but without dependencies.
    Procedure (For knowledge based BOM)
    SAP Menu     Logistics &#61614; Production Planning &#61614; Master Data &#61614; Bills of Material -> Order BOM  Maintain (Multi-Level)
    Transaction Code     CU51
    &#61623; The Create Order BOM: initial screen appears.
    &#61623; Enter the sales order number, the order item, the material number and the BOM usage
    &#61623; If you want to use material BOM, or an existing order BOM to copy from, go to step 4. If you want to create an order BOM without a reference, click and go to step 7
    &#61623; You cannot use a configurable BOM as a reference
    &#61623; Click on copy order BOM or Click on copy material BOM
    &#61623; The Copy material BOM or Copy order BOM dialog box appears
    &#61623; Enter the data required and click . The item overview appears, for the bill of material you are using as a reference.
    &#61623; Enter new items and alter items if necessary. Entering items in order BOMs is similar to entering items in material BOMs. However, you

    <u><i><b>Steps for SD Variant Configuration</b></i></u>
    Some light on Variant Configuration in Detail.
    The procedure is as follows:
    1. Create a Material - KMAT type with Item category (002)
    2. Create Charateristics in CT04 - Zbike, where in values mention the Color of the bile like Red, Blue etc
    3. Create another characteristics in CT04 - ZPrice, where directly go the additional data tab and maintain the table SDCOM and field VKOND (ABAP Dictionary it will ask for)
    4. Assign these two characteristics to a Class in CL01 - ZBikeclass ( Type 300) in characteristics tab page.
    5. Then go to CU41 Configuration profile select the material and enter the description click on the class assignment ie assign Zbikclass.
    Now go back to CT04 - enter Zbike -go to values- select Red- go to extras - Other Dependencies - Select Procedure enter in front 10 write - $self.ZPrice='Red' and save
    6. Now go back go to extras - Other Dependencies - assignments and assign relationship ( by default it will come just save)
    7. Now select Blue- go to extras - Other Dependencies - Editor - Select Procedure enter in front of 10 write - $self.ZPrice='Blue' and save
    8. Now go back go to extras - Other Dependencies - assignments and assign relationship ( by default it will come just save)
    9. Now go to VK11 - Enter VA00 (Condition)(For Std RVA001 Pricing Procedure) - enter variant Red and Blue give the rates accordingly and create the sales order.
    Reward if it helps
    Regards,
    Anbu

Maybe you are looking for