Validate plant and material on selection screen

Hi all,
I want to validate plant and material on selection screen. More over I need to validate the combination of that also (i.e plant based materials). Individually I made the validations, but combination I didn’t get it.
For your information both are select-options, please reply me if you have an idea. The table to get the relationship is KEKO. I have the below code for parameters, but I require code for select options.
SELECT MATNR WERKS FROM KEKO UP TO 1 ROWS
INTO (KEKO-MATNR, KEKO-WERKS)
WHERE MATNR = P_MATNR AND
WERKS = P_WERKS.
IF SY-SUBRC <> 0.
MESSAGE E023 WITH 'COST ESTIMATE NOT FOUND FOR '
P_MATNR P_WERKS 'COMBINATION'.
ENDIF.
ENDSELECT.
<b>Note: I need to calidate on KEKO only..</b>
Surely I will reward you.
Thanks in Advance,
Raghu.

Hi rag ,
The following code will works .... i have practically used in my report.
Local data declaration
  DATA: l_material TYPE matnr.
Validation check for material
  IF s_matnr IS NOT INITIAL.
    SELECT matnr          "material
      FROM mara
        UP TO 1 ROWS
      INTO l_material
     WHERE matnr IN s_matnr.
    ENDSELECT.
    IF l_material IS INITIAL .
    Invalid material entered .
      MESSAGE e136.
    ELSEIF s_mawerk IS NOT INITIAL.
      CLEAR l_material .
    Validation check for material exists in plant
      SELECT  matnr        "material
        FROM marc
        UP TO 1 ROWS
        INTO l_material
       WHERE matnr  IN s_matnr
         AND werks IN s_mawerk.
      ENDSELECT.
      IF sy-subrc NE 0 .
      Invalid material entered for the plant.
        MESSAGE e130.
      ENDIF .
    ENDIF.
  ENDIF.

Similar Messages

  • Validate plant and material on selection screen with select-options

    Hi all,
    I want to validate plant and material on selection screen. More over I need to validate the combination of that also (i.e plant based materials). Individually I made the validations, but combination I didn’t get it.
    For your information both are select-options, please reply me if you have an idea. The table to get the relationship is KEKO. <b>I have the below code for parameters, but I require code for select options.</b>
    SELECT MATNR WERKS FROM KEKO UP TO 1 ROWS
    INTO (KEKO-MATNR, KEKO-WERKS)
    WHERE MATNR = P_MATNR AND
    WERKS = P_WERKS.
    IF SY-SUBRC <> 0.
    MESSAGE E023 WITH 'COST ESTIMATE NOT FOUND FOR '
    P_MATNR P_WERKS 'COMBINATION'.
    ENDIF.
    ENDSELECT.
    Surely I will reward you.
    Thanks in Advance,
    Raghu.

    Raghu,
    You can't validate on select-options, MARC will have N to 1 relation between Material and plant.
    You can do one thing, keep material as select-option and plant as parameter, now you can validate the materials on plant level.
    Reward if this helps,
    Satish

  • Need to add Plant and CostCenter as Selection fileds of CJI3 Initial screen

    Hello Team,
    Can you suggest me OSS note or User exit to add Plant and CostCnters as selection criteria for CJI3 Actual cost line Items report.
    Thanks in advance,
    Best regards,
    Harish.P

    Harisha
    I agree with above reply but your requirement sounds a bit weird.
    Note sure if cost element reports are any useful for your requirement.
    Look (refer note) at the report painter option ( but you might still need to enter the Project/WBS)
    Note 668513 - FAQ 2: Cost element reports in Project System
    Regards
    Sreenivas

  • Collect in an internal table with keys plant and material

    Hi ,
    I have an output internal table with material , plant and var quantitites .
    I would like to use Collect statement and sum the quantities but do it by plant and material .
    How do I specify that i want to do it on plant or material ?
    Thanks !

    hi here is an example like urs..
    DATA: BEGIN OF seats,
            carrid TYPE sflight-carrid,
            connid TYPE sflight-connid,
            seatsocc TYPE sflight-seatsocc,
          END OF seats.
    DATA seats_tab LIKE HASHED TABLE OF seats
                   WITH UNIQUE KEY carrid connid.
    SELECT carrid connid seatsocc
           FROM sflight
           INTO seats.
      COLLECT seats INTO seats_tab.
    ENDSELECT.
    check for help..
    http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/collect.htm
    regards,
    venkat

  • How to  find the Open sale orders till date for  given plant and material ?

    Hi experts,
                     I have a requirement to calculate the open sale orders for a given plant and material. I have tried in VA05 wherein i can get only for the material and sales area combination. From the document nos obtained from VA05 i can then find the plant. But my question is how do i get the output of VA05 into my progra. (can i use submit for a module pool report ).
    Also if ther is some other standard table or Function module to find the open sale orders till a given date ,it will be even more helpful....in which case i can drop the VA05 route.
    Kindly help
    Thanks in advance
    Ashwin

    Hi Ashwin,
        You can use SAP Tables VBAK and VBUP to get to know if the document is complete or not.
       VBUK-GBSTK is the field that will give you the status of the Sales Order .
      VBUK is used at header level , whereas VBUP is used for Item level.
      So in your case what I would do is :
      Get the Sales Orders that satisy the plant and material criteria from VBAP table , take this Sales Document numbers and go to VBUK or VBUP table to get the Sales Order Status. 
       If I need to find the open quantity as well I will link to VBFA table based on the document number.
      Reward if helpful.
    Thanks,
    Imran

  • Plant  and Material data in New GL

    Currently, we are implementing ECC6 New GL and BW management reporting. The requirement is to report all inventory related costs and COGS by plant code.
    The profit center structure (model) is not supporting the plant view.
    Is there anyway to populate the plant and material code in the ne GL FAGLFLEXT table. The reporting is done in BW and currently SAP provides standard extractor for the new GL summary table.
    SAP documentation says it's possible to add ZZ customer fields like plant and material to the new GL table.
    Anyone in SAP community have experience with addition of customer fields to new GL table. If YES, how did you solve the configuration issue? Any help is appreciated.
    Thanks
    Krishna Bhat

    Hi Kishan,
    Plant is avaialable as 'standard' field for additional field in FAGLFLEXT. It's added as ZZWERKS but you don't have to create coding block field. The field can be added by trx.FAGL_GINS.
    Note 923687 gives the example about material field.
    Br, Kyoko

  • By entering month and year in selection screen

    Hi Friends,
                   My requirement is , when i enter month and year in selection screen and again i press enter now it show me the begin and end date of that month  in selection screen.
    Thanks & Regards,
    Himanshu

    u can use this type of code...
    AT SELECTION-SCREEN.
      DATA it_dynfield TYPE STANDARD TABLE OF dynpread WITH HEADER LINE.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname               = sy-repid
          dynumb               = sy-dynnr
          request              = 'A'
          translate_to_upper   = 'X'
        TABLES
          dynpfields           = it_dynfield
        EXCEPTIONS
          invalid_abapworkarea = 1
          invalid_dynprofield  = 2
          invalid_dynproname   = 3
          invalid_dynpronummer = 4
          invalid_request      = 5
          no_fielddescription  = 6
          invalid_parameter    = 7
          undefind_error       = 8
          double_conversion    = 9
          stepl_not_found      = 10
          OTHERS               = 11.
      READ TABLE it_dynfield WITH KEY fieldname = 'month'.
      IF it_dynfield-fieldvalue IS NOT INITIAL.
        month = it_dynfield-fieldvalue.
      ENDIF.
      READ TABLE it_dynfield WITH KEY fieldname = 'year'.
      IF it_dynfield-fieldvalue IS NOT INITIAL.
        year = it_dynfield-fieldvalue.
      ENDIF.
    use FM HR_JP_MONTH_BEGIN_END_DATE..
    get startdate and enddate
    AT SELECTION-SCREEN OUTPUT.
    startdate = <start date from FM>.
    end date = <end date from FM>.

  • How do we validate input fields on the selection screen

    How do we validate input fields on the selection screen

    hi balram,
    u can validate input fields using <b>AT SELECTION-SCREEN</b>  Event.
    PARAMETERS : p_werks TYPE marc-werks.
    AT SELECTION-SCREEN ON p_werks.
    SELECT SINGLE *
    FROM t001w
    WHERE werks = p_werks.
    IF sy-subrc <> 0.
    MESSAGE 'Invalid Plant' TYPE 'I'.
    ENDIF.
    Like this, we can validate user input for plant.
    check this link:
    http://help.sap.com/saphelp_nw04s/helpdata/en/9f/db9a2e35c111d1829f0000e829fbfe/frameset.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/56/1eb6c705ad11d2952f0000e8353423/content.htm
    Reware me if useful......
    Harimanjesh AN

  • To get plant field in my selection screen based on user profile maintained

    Hi All,
    I have plant (WERKS) field in my selection screen. Now I need to get the plant value maintained in the user profile for that user. So how to get the plant value based on the user profile.
    Please let me know if anyone having idea on this. I will reward to you with the valid points.
    Regards
    raghu.

    Hi Raghu,
    I have searched and found this information, check it may help you
    Check the SY-UNAME with the the name of the Plant
    User Plant user data take it from T001W table
    and All logon User data will be in USR02 table
    take the data from corresponding tables and check.
    If you are working in SRM
    Use FM BBP_READ_ATTRIBUTES to get the User plant after passing the User ID to the FM.
    in SUIM go to Users by Complex Selection criterion.
    In that there would be the Authorization Object..select an object which has the value plant in it and enter the value inthat....
    Also u can enter WERKS value as 1120 in the object field and get the list,
    Regards,
    Satish

  • Unable to save the ALV layout variant and display of selection screen on F4

    Hi All,
    The end user wants to directly select the layout variant (SLIS_VARI). I have used the following code to display the layout variant on selection screen. But, I am unable to save the variant on ALV. Whenever I am trying to select the layout variants (by doing F4 on selection screen) its displaying "No Layout found".
    Following is the code for displaying layout variant:
    PARAMETERS: p_var TYPE slis_vari.
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_var.
      PERFORM f4_variant CHANGING p_var.
    FORM f4_variant  CHANGING c_variant TYPE slis_vari.
      DATA: ls_variant TYPE disvariant,
                l_exit     TYPE char1.
      ls_variant-report = sy-repid.
      CALL FUNCTION 'REUSE_ALV_VARIANT_F4'
        EXPORTING
          is_variant = ls_variant
          i_save     = 'A'
        IMPORTING
          e_exit     = l_exit
          es_variant = ls_variant
        EXCEPTIONS
          not_found  = 2.
      IF sy-subrc = 2.
        MESSAGE ID sy-msgid TYPE 'S' NUMBER sy-msgno
                WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ELSE.
        IF l_exit EQ space.
          c_variant = ls_variant-variant.
        ENDIF.
      ENDIF.
    ENDFORM.                    " f4_variant
    and following is the code for displaying the ALV:
    FORM edition_alv.
      ws_variant2 = ls_variant.
    * Call ALV editor in list mode
      IF p_list = 'X'.
        CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
          EXPORTING
            i_callback_program      = ws_extract1-report
            i_callback_user_command = ws_user_command
            is_layout               = ws_layout
            it_fieldcat             = wt_fieldcat
            it_sort                 = wt_sort
            i_save                  = 'A'
            is_variant              = ws_variant2
            it_events               = wt_events[]
          TABLES
            t_outtab                = wt_edition.
    * Call ALV editor in grid mode
      ELSE.
        CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
          EXPORTING
            i_callback_program      = ws_extract1-report
            i_callback_user_command = ws_user_command
            it_fieldcat             = wt_fieldcat
            it_sort                 = wt_sort
            i_save                  = 'A'
            is_variant              = ws_variant2
            it_events               = wt_events[]
          TABLES
            t_outtab                = wt_edition.
      ENDIF.
    ENDFORM.  
    I am not sure whats going wrong, but I am unable to save variants.
    Please help.
    Thanks,
    Vishal.

    The F4 will display you the existing layouts only. So you need to save the layout first & then execute the report again & check if you are getting F4 values for that field.
    The Layout needs to get stored with variant.
    Regards,
    Mahesh

  • Report to transport vendors for a plant and material type

    Hi Guys ..
    Is there any report fwhere is can download all the vendors for a particular Plant and type of material.
    Thanks for your support

    Hello Vivek,
    I have checked these tables but my issue is to get the list of Material numbers in the table along with a field for Class type.
    So this does not happen in these tables.
    However thank you for the tables given
    Regards
    Mahesh

  • ALV Grid and return to selection screen

    Hello
    I have an ALV Grid and when I push a buttom that I program appears another ALV Grid. In this second ALV I try to program different buttoms. When I program the BACK buttom I want to go to selection screen.
    I try with CALL SELECTION SCREEN but when I stay in selection screen and push the execute buttom the ALV that I see is the second, not the first. It seems that we don't catch the news selections.
    I put rs_selfied-refresh = 'X' after the CALL SELECTION SCREEN but is wrong again.
    What can I do????

    Hello Silvia
    There is a simple trick to return from the second ALV list directly back to the selection screen:
    *& Report  ZUS_SDN_REUSE_ALV_GRID_DISPLAY
    REPORT  zus_sdn_reuse_alv_grid_display.
    TYPE-POOLS: slis.
    DATA:
      gt_t001        TYPE STANDARD TABLE OF t001,
      gt_knb1        TYPE STANDARD TABLE OF knb1.
    DATA:
      gs_fcat        TYPE slis_fieldcat_alv,
      gt_fcat_t001   TYPE slis_t_fieldcat_alv,
      gt_fcat_knb1   TYPE slis_t_fieldcat_alv.
    PARAMETERS:
      p_bukrs        TYPE bukrs  DEFAULT '1000'.
    START-OF-SELECTION.
      SELECT * FROM  t001 INTO TABLE gt_t001.
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
    *     I_PROGRAM_NAME               =
    *     I_INTERNAL_TABNAME           =
          i_structure_name             = 'T001'
    *     I_CLIENT_NEVER_DISPLAY       = 'X'
    *     I_INCLNAME                   =
    *     I_BYPASSING_BUFFER           =
    *     I_BUFFER_ACTIVE              =
        CHANGING
          ct_fieldcat                  = gt_fcat_t001
        EXCEPTIONS
          inconsistent_interface       = 1
          program_error                = 2
          OTHERS                       = 3.
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
    *     I_INTERFACE_CHECK                 = ' '
    *     I_BYPASSING_BUFFER                = ' '
    *     I_BUFFER_ACTIVE                   = ' '
          i_callback_program                = syst-cprog
          i_callback_pf_status_set          = 'ALV_SET_PF_STATUS'
          i_callback_user_command           = 'ALV_USER_COMMAND'
    *     I_CALLBACK_TOP_OF_PAGE            = ' '
    *     I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    *     I_CALLBACK_HTML_END_OF_LIST       = ' '
    *     I_STRUCTURE_NAME                  = ' '
    *     I_BACKGROUND_ID                   = ' '
    *     I_GRID_TITLE                      =
    *     I_GRID_SETTINGS                   =
    *     IS_LAYOUT                         =
          it_fieldcat                       = gt_fcat_t001
    *   IMPORTING
    *     E_EXIT_CAUSED_BY_CALLER           =
    *     ES_EXIT_CAUSED_BY_USER            =
        TABLES
          t_outtab                          = gt_t001
    *   EXCEPTIONS
    *     PROGRAM_ERROR                     = 1
    *     OTHERS                            = 2
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    END-OF-SELECTION.
    *&      Form  set_pf_status
    *       text
    *      -->RT_EXTAB   text
    FORM alv_set_pf_status USING rt_extab TYPE slis_t_extab.
    * NOTE: identical to STANDARD_FULLSCREEN with additional button
    *       for detail list ('DETAILLIST')
      SET PF-STATUS 'STANDARD_FULLSCREEN'.
    ENDFORM.                    "set_pf_status
    *&      Form  alv_user_command
    *       text
    *      -->R_UCOMM    text
    *      -->RS_SELFIELDtext
    FORM alv_user_command  USING r_ucomm LIKE sy-ucomm
                             rs_selfield TYPE slis_selfield.
      CASE r_ucomm.
    *   Display detail list: all customers for selected company code
        WHEN 'DETAILLIST'.
          IF ( rs_selfield-fieldname = 'BUKRS' ).
            SELECT        * FROM  knb1 INTO TABLE gt_knb1
                   WHERE  bukrs  = rs_selfield-value.
            CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
              EXPORTING
    *         I_INTERFACE_CHECK                 = ' '
    *         I_BYPASSING_BUFFER                = ' '
    *         I_BUFFER_ACTIVE                   = ' '
                i_callback_program                = syst-cprog
                i_callback_pf_status_set          = 'ALV_SET_PF_STATUS'
                i_callback_user_command           = 'ALV_USER_COMMAND'
    *         I_CALLBACK_TOP_OF_PAGE            = ' '
    *         I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
    *         I_CALLBACK_HTML_END_OF_LIST       = ' '
                i_structure_name                  = 'KNB1'
    *       IMPORTING
    *         E_EXIT_CAUSED_BY_CALLER           =
    *         ES_EXIT_CAUSED_BY_USER            =
              TABLES
                t_outtab                          = gt_knb1
              EXCEPTIONS
                program_error                     = 1
                OTHERS                            = 2.
            IF sy-subrc <> 0.
    *     MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *             WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
            ENDIF.
    <b>*       NOTE: when the program logic returns from the 2nd ALV list
    *             and exit = 'X' then the program leaves the
    *       1st ALV list, too, and returns to the selection screen.</b>
            rs_selfield-exit = 'X'.
          ENDIF.
        WHEN OTHERS.
      ENDCASE.
    ENDFORM.                    "alv_user_command
    Regards
      Uwe

  • Problem with ALV and user defined selection screen. please help!

    Hi Experts,
           I have program which has a user defined selection screen 9001. On executing the selection screen i call a ALV using resuse_alv_grid function module.
    What problem I am facing is that when I press back button from ALV page it goes to the se38 editor instead of selection screen.
    How to resolve this?
    Thanks
    Gopal

    Hi,
    This might be due to LEAVE TO TRANSACTION statement. You might be running the program from SE38. Try to run the program using Z-TCode assigned to it.
    Thanks and Regards,
    Bharat Kumar Reddy.V
    Message was edited by: Bharat Reddy V

  • ALV-Freeze colums and Icon on Selection Screen

    Dear All,
    suppose i have 10 columns in an ALV Report and i want to freeze from my 3rd column onwards so that if I scroll to right my these 3three columns can still be seen.How to do this.
    also how to display icon on selection screen.I remeber doing some copy pasting from icon table to my selection texts.
    How to acheive these two.
    Regards,
    Rahul Bhat.

    Hi,
    I hope the following links will help you,
    how to freeze columns in table
    how to freeze the selection column in the table control of the module pool.
    Freeze Column
    Regards,
    Harish

  • Problem in calling FBL3N and passing Dynamic Selection Screen Parameters

    Hi Experts,
    I am calling the standard report FBL3N in one of my reports using Submit.
    I am passing the GLcode, Company code and Open at key Date in the selection screen.
    Now my requirement is that I need to pass the Posting Key as '40' in my report.
    40 signifies a Debit Entry.
    Now the Posting key comes as a Dynamic Selection parameter in the FBL3n program.
    I am unable to determine the name of the field to which I should pass the value 40.
    Please advice.
    Regards

    Hi,
    Each GL Account belongs to Field status group--> table SKB1.
    Each Field Status group will have specific field combinations --> We can get this using the tables TMODO and TMODP.
    Pls design ur BDC depending on the values from these table.
    (Note: I have done same like this for populating values to dynamic fields ).
    Let me know if u need any information.
    Thanks,
    Senthil

Maybe you are looking for

  • Radeon 9600 Pro and Westinghouse 19" Widescreen Mon.  1440 X 900 Possible?

    I have a G4 MDD with a Radeon 9600 Pro, 256 Mb card with dual DVI outs. I just got two Westinghouse 19' widescreen monitors which have a max res of 1440 X 900. Problem is when I try to set the res of the two monitors in the Displays pane, there is no

  • File Copy with resume enable

    I am thinking of making a file copy program like the download managers, which provides resume enables, so that users can continue at later times. Suppose, i have a 10 GB file, and i want to transfer it over to my external, then instead of non breakab

  • ECC 6.0 SR3  Master Installation

    I've downloaded the latest version ERP 6 (SR3), the master installation  BS_2005_SR3_SAP_Installation_Master (DVD label D51033511). When execute sapinst the menus for ERP installation only shows the options : RAPID CONFIGURATION and SOFTWARE LIFE CYC

  • When do i know the download installation is finished?

    1. I have started and stopped the download several times, as my computer shuts down after 4 hours, and then I have to start the download from scratch. 2. I am finally at the end point of the installation, but now it is stuck at: Downloading 6,352 MB,

  • HT4623 iphone in recovery mode

    phone in recovery mode please helpppppp