MIRO Header Customer Screens

Hi all,
We want to enhance MIR7 and MIRO txn screens to add own screen and data at header level. The data is populated and stored at custom tables. Which BADI or user exit will help us in getting custm tab screen at header level.
Prashant

hi Prashant,
Its Difficult task...To add a screen and to add fields and then have a link between fields and a table to store those values requires a very details ABAP coding....
Hope it helps...
Regards
Priyanka.P

Similar Messages

  • Adding the customer screen to enhance the header for Enjoy PO

    Dear Expert's,
    My requirement is to add a new tab on Header for Enjoy PO by enhancing ME21N/ME22N and ME23N.
    I have already implemented the BADI's ME_GUI_PO_CUST and ME_PROCESS_PO_CUST.
    Actions Taken:
    I have created a custom Function group and subscreen '9000'.
    I have created a 'Z' structure as per the screen layout on the Header Tab
    I have appended the custom fields in EKKO custom include CI_EKKO.
    Reactions:
    1. I am able to successfully display the screen on additional tab at header level.
    2. The Display & Change is working perfectly for screen '9000' on ME21N/ME22N and ME23N header.
    Problem:
    I am unable to read the 'Z' fields from EKKO to populate the TAB Screen '9000' and neither able to save the 'Z' fields from '9000' TAb screen for header data.
    I am not using any EXIT for this and have to use only BADI for this solution. Please help me to implement this solution using BADI only.
    Also i have tried implementaing the transport Data object -> Model + Model -> Dynpro + Dynpro -> Model + Model -> Data object methods, but these methods are not getting triggered.
    Please let me know if i can use EVENT_PBO & EVENT_PAI if yes , than how to trigger these events and where..?

    Hi ,
    try to enhance PO header using SAP Note 407975
    Summary
    Symptom
    You are using SAP customer enhancement MM06E005. There is no sample source
    code for this enhancement.
    More Terms
    User exit, customer enhancement, MM06E005, example, sample
    Cause and Prerequisites
    You want to activate user exit MM06E005. Note that this is a consulting
    note and not a correction of the user exit.
    Solution
    You can use the sample source code attached here to recognize the basic
    functions of the exit. This example is, however, only one of many options
    that are offered by the customer enhancement.
    The sample source code includes the following functions:
    o Supply of an additional field on header level
    o Supply of an additional field on item level
    o Derivation of a field on item level from the copied reference
    document
    Now, in order to be able to use the sample source code, you must create
    field ZZFLAG on the header level of the document and field ZZFIELD on the
    item level.
    Double-click on Include table CI_EKKODB
    Enter the following values:
    - Name Component type DType Length DecPlace Short text
    - ZZFLAG CHAR1 CHAR 1 0 1-digit indicator
    Save and activate the include table.
    Double-click on Include table CI_EKPODB
    Enter the following values:
    - Name Component type DType Length DecPlace Short Text
    - ZZFIELD CHAR1 CHAR 1 0 1-digit indicator
    Save and activate the include table.
    In order to activate the sample source code, you additionally have to carry
    out the following changes on screens 0101 and 0111.
    1. Screen 0101: Create the following fields:
    2010.02.05 Page 2 of 3
    SAP Note 407975 - MM06E005: Collective note: Examples for
    implementation
    "Checkbox" Name: EKKO_CI-ZZFLAG
    2. Screen 0111: Create the following fields:
    "Input/output field" Name: EKPO_CI-ZZFIELD
    "Pushbutton" Name: BUTTON
    FctCode: ZZDETERMINE
    The following assignments apply to the sample source code:
    EXIT_SAPMM06E_006 --> LXM06F36
    EXIT_SAPMM06E_007 --> LXM06F38
    EXIT_SAPMM06E_008 --> LXM06F37
    EXIT_SAPMM06E_009 --> LXM06F39
    EXIT_SAPMM06E_016 --> LXM06F41
    EXIT_SAPMM06E_017 --> LXM06F42
    EXIT_SAPMM06E_018 --> LXM06F40
    Copy the source code from the attachment and insert it into the
    corresponding function modules. Save and activate the function modules.
    Create the following variables in the corresponding TOP include in order
    not to get any syntax errors:
    INCLUDE ZXM06TOP
    data: gl_aktyp type c,
    gl_no_screen type c,
    gl_rekko like ekko,
    gl_ekko_ci like ekko_ci,
    gl_ekpo_ci like ekpo_ci,
    gl_ekpo like ekpo,
    gl_ucomm like sy-ucomm.
    types: begin of ekpo_tab,
    ebeln like ekpo-ebeln,
    ebelp like ekpo-ebelp,
    ekpo like ekpo,
    end of ekpo_tab.
    data: gt_ref_ekpo_tab type table of ekpo_tab.
    Save and activate the TOP include.
    On header level, you can now store a character, X or space, via field
    ZZFLAG on the database with the document and read it also again.
    On item level, you can fill field ZZFIELD with a one-digit value and save
    it with the document. If you copy this document, the system displays an
    additional function button on tab page "Customer data". If you press this
    button, the value of the reference document is copied to field ZZFIELD.
    If you want to store the source code as sample source code in your system,
    start Transaction SMOD. Enter MM06E005 as an enhancement. Select
    "Components". Press "Change". Position the cursor on the corresponding
    module and choose "Sample code". Create the corresponding include and copy
    2010.02.05 Page 3 of 3
    SAP Note 407975 - MM06E005: Collective note: Examples for
    implementation
    the source code from the note. Save the include. Note that, of course,
    syntax errors may occur when you check components. This is because the
    includes of the sample code are not integrated into a program but rather
    are completely independent and, therefore, do not have any relationship to
    each other either. For this reason, only save the include and do not
    activate or check it. The sample code has to be copied into the
    corresponding function modules in order to become active.
    If you use the user exit in the new purchase order, it is not guaranteed
    that the customer screen is always processed. To make sure that possible
    required fields are checked, include a corresponding message into the
    EXIT_SAPMM06E_012. This screen is always processed.

  • How to call a Custom screen in portal from a Poratal UWL ??

    How to display a Custom screen which is developed in portal when a work item is executed through the
    portal-UWL ?.
      In detail....
         A custom screen has been developed in portals.
    Workflow triggers when a new item is created on the custom screen then the workitem gets populated in the respective approver Portal UWL(universal work list).
    when the workitem is executed from the UWL then it has to display the custom screen with its header data on the portal.

    Hi sampath,
    Thanks. I found that the redirection is not working
    properly at IIS end and changed the configuaration to
    make it work.
    Thanks a lot,
    Gopi

  • MIRO of Custom duty in case of  Assets

    Dear Sir,
    While posting of MIRO for custom duty i(Planned delivery cost(n account assigned assets for non valuated material sytem is posting value as
    Vendor account credit
    Asset account debit
    my asset is debited by total custom duty including CVD ,ECS and SEcess. but I am taking credit of it in excise.
    At the time of taking 'CVD credit system is passing following entries
    Cenvat clearing Cr
    RG23C BED      DR
    RG23CECS      DR
    Cenvat on hold  DR
    Please advice how my cenvat clearing account is nullify
    Best regards,
    Jeewan Oberoi

    Fonzie,
    You would add the Custom Trigger server behavior. Under the Developer Toolbox>Forms>Custom Trigger.
    The Custom Trigger Wizard has 2 tabs, Basic and Advanced. I usually leave the box in the basic tab blank. You can add your php code here, but I prefer to add my Custom Trigger code to the Dreamweaver Code View directly.
    The Advanced Tab allows you to name your Trigger/function and you can set the execution order. Trigger's are registered to transactions Update, Insert, and/or Delete. You specify wether you want the Trigger to execute BEFORE or AFTER the Update/Insert/Delete transaction. By default this is set to AFTER.
    Priority allows you to control execution order of the transactions and triggers. You can have multiple triggers and control the order they execute.
    So I usually start the Custom Trigger Wizard and go right to the Advanced tab. I name my Trigger, and set the execution order. Then I close the Wizard. Then I go to the Dreamweaver Code View, and you will see something like this:
    //start Trigger_Custom trigger
    function Trigger_Custom(&$tNG) {
    //end Trigger_Custom trigger
    Add your code between the { } and add
    header("Location: error_page.php");
    exit;
    for the redirecting.
    Shane

  • Could not get Custom screen in me21n after implementing Badi ME_GUI_PO_CUST

    Hi.,
    I created implementation for the badi ME_GUI_PO_CUST... but i could not get the Tab and screen in header tab.
    also used below  link in the  forum to correct the issue ....but dint help me .
    Custom screen not displaying using BADI ME_GUI_PO_CUST
    Pls help me how to go abt...
    Thanks,
    Ranjitha.

    Hi ....
    Now the tab is reflecting in me22n & me23n but not in me21n ......can anybody tell what could be the reason?
    thanks
    ranjitha

  • Added custom screen in PO using BADI ME_GUI_PO_CUST and ME_PROCESS_PO_CUST

    Hi All,
    I have added custom screen with two z fields at item level using BADI ME_GUI_PO_CUST and ME_PROCESS_PO_CUST i can see my screen in tcodes ME21N , ME22N , ME23N but I am not able to save data.
    and also screen is coming in change mode even in ME23N .
    thanks.

    Hi,
    I have added two xfields at item level.
    This is the code i have added in zimplementation ZME_GUI_PO_CUST .
    IN Zimplementation ME_PROCESS_PO_CUST I have added code only in method FIELDSELECTION_ITEM . after doing this I can see only screens in ME21N, ME22N, ME23N but when enter data in zfields and trying to save it is giving me message no data has changed.
    method IF_EX_ME_GUI_PO_CUST~SUBSCRIBE.
    DATA: ls_subscriber LIKE LINE OF re_subscribers.
    we want to add a customer subscreen on the item detail tab
      CHECK im_application = 'PO'.
      CHECK im_element     = 'ITEM'.
    each line in re_subscribers generates a subscreen. We add one subscreen in this example
      CLEAR re_subscribers[].
    the name is a unique identifier for the subscreen and defined in this class definition
      ls_subscriber-name = subscreen1.
    the dynpro number to use
      ls_subscriber-dynpro = '0001'.
    the program where the dynpro can be found
      ls_subscriber-program = 'SAPLYMEPOBADIEX'.
    each subscreen needs his own DDIC-Structure
      ls_subscriber-struct_name = 'MEPO_BADI_STRUCT'.
    a label can be defined
      ls_subscriber-label = text-001.
    the position within the tabstrib can be defined
      ls_subscriber-position = 4.
    the height of the screen can be defined here. Currently we suport two screen sizes:
    value <= 7 a sevel line subscreen
    value > 7  a 16 line subscreen
      ls_subscriber-height = 7.
      APPEND ls_subscriber TO re_subscribers.
      ENDIF.
    method IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_MODEL.
      DATA: l_item       TYPE REF TO if_purchase_order_item_mm,
            ls_mepoitem  TYPE mepoitem,
            ls_customer  TYPE mepo_badi_exampl.
    system asks to transport data from the business logic into the view
      CASE im_name.
        WHEN subscreen1.
    is it an item? im_model can be header or item.
          mmpur_dynamic_cast l_item im_model.
          CHECK NOT l_item IS INITIAL.
    transport standard fields
          ls_mepoitem = l_item->get_data( ).
    transport customer fields
          CALL FUNCTION 'YMEPOBADIEX_GET_DATA'
            EXPORTING
              im_ebeln = ls_mepoitem-ebeln
              im_ebelp = ls_mepoitem-ebelp
            IMPORTING
              ex_data  = ls_customer.
    store info for later use
          MOVE-CORRESPONDING ls_mepoitem TO dynp_data_pbo.
          MOVE ls_customer-badi_bsgru TO dynp_data_pbo-badi_bsgru.
          MOVE ls_customer-badi_afnam TO dynp_data_pbo-badi_afnam.
        WHEN OTHERS.
      ENDCASE.
    endif.
    method IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_DYNP.
      CASE im_name.
        WHEN subscreen1.
          CALL FUNCTION 'YMEPOBADIEX_PUSH'
            EXPORTING
              im_dynp_data = dynp_data_pbo.
        WHEN OTHERS.
      ENDCASE.
    ENDIF.
    endmethod.
    method IF_EX_ME_GUI_PO_CUST~TRANSPORT_FROM_DYNP.
      CASE im_name.
        WHEN subscreen1.
          CALL FUNCTION 'YMEPOBADIEX_POP'
            IMPORTING
              ex_dynp_data = dynp_data_pai.
          IF dynp_data_pai NE dynp_data_pbo.
    something has changed therefor we have to notify the framework
    to transport data to the model
            re_changed = mmpur_yes.
          ENDIF.
        WHEN OTHERS.
      ENDCASE.
    ENDIF.
    endmethod.
    method IF_EX_ME_GUI_PO_CUST~TRANSPORT_TO_MODEL.
    DATA: l_item       TYPE REF TO if_purchase_order_item_mm,
            ls_mepoitem  TYPE mepoitem,
            ls_customer  TYPE mepo_badi_exampl.
    data have to be transported to business logic
      CASE im_name.
        WHEN subscreen1.
    is it an item? im_model can be header or item.
          mmpur_dynamic_cast l_item im_model.
          CHECK NOT l_item IS INITIAL.
          ls_mepoitem = l_item->get_data( ).
    standard fields changed?
         IF dynp_data_pbo-matkl NE dynp_data_pai-matkl OR
            dynp_data_pbo-plifz NE dynp_data_pai-plifz OR
            dynp_data_pbo-webaz NE dynp_data_pai-webaz.
    update standard fields
           ls_mepoitem-matkl = dynp_data_pai-matkl.
           ls_mepoitem-plifz = dynp_data_pai-plifz.
           ls_mepoitem-webaz = dynp_data_pai-webaz.
            CALL METHOD l_item->set_data( ls_mepoitem ).
         ENDIF.
            CALL FUNCTION 'YMEPOBADIEX_GET_DATA'
              EXPORTING
                im_ebeln = ls_mepoitem-ebeln
                im_ebelp = ls_mepoitem-ebelp
              IMPORTING
                ex_data  = ls_customer.
            ls_customer-badi_bsgru = dynp_data_pai-badi_bsgru.
            ls_customer-badi_afnam = dynp_data_pai-badi_afnam.
            CALL FUNCTION 'YMEPOBADIEX_SET_DATA'
              EXPORTING
                im_data = ls_customer.
         ENDIF.
        WHEN OTHERS.
      ENDCASE.
    ENDIF.
    method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM.
    DATA: l_persistent TYPE mmpur_bool.
    CONSTANTS:
    FIELD-SYMBOLS: <fs> LIKE LINE OF ch_fieldselection.
    l_persistent = im_item->is_persistent( ).
    *IF l_persistent EQ mmpur_yes.
    READ TABLE ch_fieldselection ASSIGNING <fs> WITH TABLE KEY
                         metafield = MMMFD_YYMAN_NUM."fd_cust_01.
    IF sy-subrc IS INITIAL.
    <fs>-fieldstatus = '*'. " Display <-- this one was as per the sample code given.
    <fs>-fieldstatus = '+'. " Input <-- this i added to make the field mandatory.
    ENDIF.
    READ TABLE ch_fieldselection ASSIGNING <fs> WITH TABLE KEY
                         metafield = MMMFD_YYMAN_DES."fd_cust_01.
    IF sy-subrc IS INITIAL.
    <fs>-fieldstatus = '*'. " Display <-- this one was as per the sample code given.
    <fs>-fieldstatus = '+'. " Input <-- this i added to make the field mandatory.
    ENDIF.
    *ENDIF.
    ENDIF.
    endmethod.

  • Custom Screen doesn't display properly

    I am on SRM 5.5 and I have created a custom screen with a custom field in all the proper structures it's supposed to be in.  The screen has been generated into HTML and it has a service.  I am calling the screen in the BADI BBP_CUF_BADI.  The field is showing properly, but my problem is that my custom screen is not displaying where I expect.  If I generate the HTML template as a type classic, it doubles my fields when it displays and it shows them at the top of the header above all the other standard fields.
    If I create my HTML template as WEBGUI, it covers the entire Header section and displays partly at the top over the standard buttons on the screen and partly at the bottom after the last header field.  I presume the custom screen should display after the last header field.  Does anyone know why the screens behave differently when I generate the templates as Classic (shows twice) versus WEBGUI and does anyone know what I might be doing wrong?
    Points will be rewarded.
    Thanks,
    Marty

    Hi
    There seems like a bug in the SRM system...
    Have you created a bespoke service in this case ? Please give some more insights in next reply ?
    Meanwhile, go through the links which might help ->
    Contract Custom fields are not showing
    Re: New Tab in Bid Process Screen
    Re: New screen with table control information in Process Bid Invitation
    BBP_CUF_BADI_2
    Regards
    - Atul

  • How to make a field in custom screen as display field in screen exit

    Hi ,
    I have created a screen exit for CO02 with a field for item text in header level as input field , when value is given and save button is cliked it gets updated in database but the problem is same field shows as input field in CO03 ( display mode ) .
    Code which i have used .
    in PBO
    if sy-tcode = 'CO03'.
    loop at screen .
    if screen-name cs 'SUBSCREEN' or screen-name cs 'RESB-POTX1'.
    ( subscreen - screen name given in screen editor and   resb-potx1 field name given in screen editor )
    SCREEN-INPUT = '0'.
    modify screen.
    endif.
    endloop.
    endif.
    and even i tried in PAI too .....
    if sy-tcode = 'CO01' or sy-tcode = 'CO02'.
    update resb set POTX1 = RESB-POTX1
    where aufnr = i_aufnr.
    elseif sy-tcode = 'CO03'.
    *oop at screen .
    *f screen-name cs 'SUBSCREEN' or screen-name cs 'RESBD-SORTF'.
    SCREEN-INPUT = '0'.
    modify screen.
    endif.
    endloop.
    endif.
    but itshows as input field only ........how to make that custom field as display field in CO03

    HI Andy,
    Try this out.
    FIrst check the sy-dynnr, if it is same as your custom screen number
    in PBO of your custom screen
    if sy-dynnr = 'YOUR_NUMBER' and sy-tcode = 'CS03'.
    loop at screen
    if screen-name = 'YOUR_SCREEN_NAME'
    screen-input = 0.
    modify screen
    endif
    endloop.
    endif.
    if it wont work they try using Tcode SHD0
    Hope this will serve your purpose.
    Regards
    Ramchander Rao.K

  • Search help on custom screen

    Hi,
    I have a question regarding search help on screen.
    I have searched, but did not find anything for my requirement.
    Here is my requirement...............
    I have a drop down on one of the field of the custom screen. This dropdown has three items to choose from.
    e.g.
    Dropdown has  PO, Reservation and  Pcard.
    And the other custom field is "Source". I want to put seach help on "Source" field.
    So my requirement is to when user chooses PO in dropdown, they should get search help for PO on "Source" field.
    And when user chooses Reservation in dropdown, they should get search help for Reservation on "Source" field.
    Is it possible to that? If yes, then how should i proceed for that?
    Any help would be appriciatable!!
    Thanks in Advance .

    HI Varam.
    Plesae copy this code and Paste in ABAP Editor and Format properly You will know it as it is appearing in Continuous Lines
    And i dont know how to rectify it. Hopp you understand it
    -->In Screen PVO
    -->PROCESS ON VALUE-REQUEST.
    -->  FIELD Screen-Field MODULE f4_get.
    -->in program
    -->MODULE f4_get INPUT.
      DATA : BEGIN OF f4_tab OCCURS 0,
    define Required Fields here
        END OF f4_tab.
      GET CURSOR FIELD fnam VALUE fval.
      DATA : dynpread TYPE TABLE OF dynpread WITH HEADER LINE.
    refresh dynpread.
      dynpread-fieldname = 'Screen-Field'.
      APPEND dynpread.
      CLEAR dynpread.
      CALL FUNCTION 'DYNP_VALUES_READ'
        EXPORTING
          dyname                               = sy-repid
          dynumb                               = sy-dynnr
        TRANSLATE_TO_UPPER                   = ' '
        REQUEST                              = ' '
        PERFORM_CONVERSION_EXITS             = ' '
        PERFORM_INPUT_CONVERSION             = ' '
        DETERMINE_LOOP_INDEX                 = 'X'
        START_SEARCH_IN_CURRENT_SCREEN       = 'X'
        START_SEARCH_IN_MAIN_SCREEN          = 'X'
        START_SEARCH_IN_STACKED_SCREEN       = ' '
        START_SEARCH_ON_SCR_STACKPOS         = ' '
        SEARCH_OWN_SUBSCREENS_FIRST          = ' '
        SEARCHPATH_OF_SUBSCREEN_AREAS        = ' '
        TABLES
          dynpfields                           = dynpread
       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
      IF sy-subrc IS INITIAL.
        READ TABLE dynpread WITH KEY fieldname = 'Screen-field'.
        IF sy-subrc IS INITIAL.
          SELECT Your Fields FROM Required FIelds
                INTO TABLE f4_tab
                 WHERE Required Condions.
          CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
            EXPORTING
            DDIC_STRUCTURE         = ' '
              retfield               = 'RETURN FIELD' To which the F4 value to be passed on to screen
            PVALKEY                = ' '
             dynpprog               = sy-repid
             dynpnr                 = sy-dynnr
             dynprofield            = 'Screen-Field' --> All single Quote Values to be Capital Letters
            STEPL                  = 0
            WINDOW_TITLE           =
            VALUE                  = ' '
             value_org              = 'S'
            MULTIPLE_CHOICE        = ' '
            DISPLAY                = ' '
            CALLBACK_PROGRAM       = ' '
            CALLBACK_FORM          = ' '
            MARK_TAB               =
          IMPORTING
            USER_RESET             =
            TABLES
              value_tab              = f4_tab
            FIELD_TAB              =
            RETURN_TAB             =
            DYNPFLD_MAPPING        =
          EXCEPTIONS
            PARAMETER_ERROR        = 1
            NO_VALUES_FOUND        = 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.
        ENDIF.
      ENDIF.
    ENDMODULE.                 " f4_get  INPUT
    Edited by: Ramchander Krishnamraju on Oct 31, 2009 4:32 AM

  • Custom screen for ME21n - BADI issue

    hi,
    I had implemented BADI ME_GUI_PO_CUST for ME21n/me22n. The control is going to Subscribe and Map Dynpro methods but the control is not going to other methods like TRANSPORT_FROM_MODEL, TRANSPORT_TO_DYNP, TRANSPORT_FROM_DYNP and TRANSPORT_TO_MODEL.
    Please explain how we can make the control to move to these methods. not sure what is missing in the implementation

    "Customer Data" on ME21N/ME22N uses the SMOD enhancement MM06E005. Screen 0101 is used for Header Customer Data. So, when you navigate through this screen it doesn't go through the TRANSPORT* methods.
    You can also use the BADI ME_GUI_PO_CUST to add your additional tabs in ME21N. You need to use the method SUBSCRIBE to set the Program, Subscreen number and other details. When you do the subscribe method, it would call the TRNSPORT* methods. Check the example code given in the class CL_EXM_IM_ME_GUI_PO_CUST.
    Regards,
    Naimesh Patel

  • Custom Screen in Shopping cart

    Hi Guys,
    I am currently trying to use the BADi BBP_CUF_BADI to get a custom screen in my Shopping Cart header.
    I created a new custom screen & followed all the steps required.
    I implemented the BADI & actiavted it. To my surprise the custom screen that i cretaed is visible in the carryout sourcing section (instead of the shopping cart section). That is not what i require. I suppouse this is beacuse of the settings that are made in the BADI.
      Under the subscreens tab of the BADI i have maintained the following values:
    Call Program     :  SAPLBBP_SC_UI_ITS
    Scr.No              :  140
    Subscreen area :   GC_SUB_COMPLETE_CUSTOMERFIELDS.
    Can anyone tell me what details are to be maitained, so that we can get the custom screen in  shopping cart section.

    Hi
    Pls refer to the following SAP OSS Notes -
    Note 825569 - Customer Field (CUF). Customer screens are not called
    Note 458591 - User-defined fields: Preparation and use
    Note 672960 - User-defined fields 2
    Note 812679 - BBP_CUF_BADI calls the incorrect template
    You should start with a training on web developement with Internet Transaction Server (ITS).
    ITS is emulating SAP GUI transaction into a web transaction.
    To do this you need:
    - the SAP GUI transaction, program, PBO, PAI...
    - the ITS templates
    For each SAP transaction, there is an ITS service.
    For each SAP dynpro, ITS requires an HTML template.
    So if you use the BADI to call your custom screen (a dynpro from program Z), you must also create the corresponding HTML template.
    If no template is provided, then ITS will use the webgui service to emulate the screen.
    Pls reward suitable points.
    Regards
    - Atul

  • Custom screen lisbox and button

    Hello Friends.  How to add a custom screen field lisbox and a button to an existing sales order header view. The listbox is a screen field (not a CUSTOMERH field).  What are the steps besides copying the view .Please suggest.

    I do not know the answer about existing JSF components, but here is something that might work for you
    Drop a Grid Panel component where you want the text field and button.
    Set the columns property to 2.
    Drop a Text Field Component in the Grid Panel. Then Drop a Button component. If they don't drop in the right order, use the Outline window to rearrange.
    Try setting the width (setColumns) of the Text Field component in the prerender method. The button should nicely sit to the right, and you should not have overlap.
    Hope this helps,
    Chris

  • How to create PO through BAPI from custom screen

    Hi SAP Technical Guru,
    i am new to module pool programming.
    i designed custom screen which is like TA me21n means it has one tabstrip and tablecontrol.
    for header details(fields) at tab strip, and item detials(fields) at table control i used.
    now i have to capture screen fields into FM bapi_po_create1 and update the database tables.
    please suggest me how to create Purchase Order through BAPI FM.
    regards,

    here is the sample code
    *tables for passing podata to bapi
    DATA : gt_header   TYPE STANDARD TABLE OF bapimepoheader,
           gt_headerx  TYPE STANDARD TABLE OF bapimepoheaderx,
           gt_item     TYPE STANDARD TABLE OF bapimepoitem,
           gt_itemx    TYPE STANDARD TABLE OF bapimepoitemx,
           gt_account  TYPE STANDARD TABLE OF bapimepoaccount,
           gt_accountx TYPE STANDARD TABLE OF bapimepoaccountx,
    *tables used for passing custom field data to bapi
           gt_custom   TYPE STANDARD TABLE OF bapiparex,
           gt_custdata_in TYPE STANDARD TABLE OF bapi_te_mepoaccounting,
           gt_custdata_ix TYPE STANDARD TABLE OF bapi_te_mepoaccountingx,
    *tables used for cathing messages returned by bapi
           gt_return   TYPE STANDARD TABLE OF bapiret2,
           gt_return1   TYPE STANDARD TABLE OF bapiret2,
    *Work area declaration for passing custom field data to bapi
           w_custom   LIKE LINE OF gt_custom,
           w_custdata_in LIKE LINE OF gt_custdata_in,
           w_custdata_ix LIKE LINE OF gt_custdata_ix,
    *Work area declaration for passing podata to bapi
           w_header   LIKE LINE OF gt_header,
           w_headerx  LIKE LINE OF gt_headerx,
           w_item     LIKE LINE OF gt_item,
           w_itemx    LIKE LINE OF gt_itemx,
           w_account  LIKE LINE OF gt_account,
           w_accountx LIKE LINE OF gt_accountx,
    *work area declaration for cathing messages returned by bapi
           w_return   LIKE LINE OF gt_return,
           w_return1  LIKE LINE OF gt_return1.
    *populating po dat into internal tables
    w_header-comp_code  = 'PH02'.
    w_header-doc_type   = 'TEST'.
    w_header-vendor     = '0000600019'.
    w_header-purch_org  = 'PH02'.
    w_header-pur_group  = '901'.
    w_headerx-comp_code  = 'X'.
    w_headerx-doc_type   = 'X'.
    w_headerx-vendor     = 'X'.
    w_headerx-purch_org  = 'X'.
    w_headerx-pur_group  = 'X'.
    w_item-po_item      = '00001'.
    w_item-short_text   = 'test po'.
    w_item-po_unit      = 'CM'.
    w_item-matl_group   = '01'.
    w_item-po_unit      = 'EA'.
    w_item-plant        = 'PH02'.
    w_item-quantity     = '1.000'.
    w_item-net_price    = '10.00'.
    w_item-item_cat     = '0'.
    w_item-acctasscat   = 'K'.
    APPEND w_item TO gt_item.
    w_itemx-po_item    = '00001'.
    w_itemx-short_text = 'X'.
    w_itemx-matl_group = 'X'.
    w_itemx-po_unit    = 'X'.
    w_itemx-plant      = 'X'.
    w_itemx-stge_loc   = 'X'.
    w_itemx-quantity   = 'X'.
    w_itemx-tax_code   = 'X'.
    w_itemx-net_price  = 'X'.
    w_itemx-item_cat   = 'X'.
    w_itemx-acctasscat = 'X'.
    APPEND w_itemx TO gt_itemx.
    w_account-po_item    = '00001'.
    w_account-serial_no  = '01'.
    w_account-quantity   = '1.000'.
    w_account-gl_account = '0000199999'.
    w_account-costcenter = '0000400011'.
    APPEND w_account TO gt_account.
    w_accountx-po_item    = '00001'.
    w_accountx-serial_no  = '01'.
    w_accountx-quantity   = 'X'.
    w_accountx-gl_account = 'X'.
    w_accountx-costcenter = 'X'.
    APPEND w_accountx TO gt_accountx.
    w_custdata_in-po_item   = '00001'.
    w_custdata_in-serial_no = '01'.
    w_custdata_in-zzttry    = '1000'.
    w_custom-structure = 'BAPI_TE_MEPOACCOUNTING'.
    MOVE w_custdata_in TO w_custom-valuepart1.
    APPEND w_custom TO gt_custom.
    w_custdata_ix-zzttry    = 'X'.
    w_custdata_ix-po_item   = '00001'.
    w_custdata_ix-serial_no = '01'.
    w_custom-structure = 'BAPI_TE_MEPOACCOUNTINGX'.
    MOVE w_custdata_ix TO w_custom-valuepart1.
    APPEND w_custom TO gt_custom.
    *bapi to create po oreders
    CALL FUNCTION 'BAPI_PO_CREATE1'
      EXPORTING
        poheader                     = w_header
        poheaderx                    = w_headerx
    TABLES
      return                       = gt_return
      poitem                       = gt_item
      poitemx                      = gt_itemx
      poaccount                    = gt_account
      poaccountx                   = gt_accountx
      extensionin                  = gt_custom.
    *bapi for po data commit
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
      EXPORTING
        wait   = ' '
      IMPORTING
        return = w_return1.
    *clearing tables & work area
    REFRESH:gt_account,gt_item,gt_itemx,gt_accountx.
    CLEAR:w_header,w_headerx.
    *displaying message returned by bapi
    LOOP AT gt_return INTO w_return.
      WRITE: w_return-type , w_return-id , w_return-number , w_return-message .
    ENDLOOP.

  • Identifying changes in the custom screen added to Delivery

    Hello,
    I have added a custom screen in delivery transaction(VL02n) at header level. I used BADI LE_SHP_TAB_CUST_HEAD to do that. Now if user comes and enters some data on the custom screen, then goes to menu option Subsequent processing-->Create Transfer Order, user is not prompted with a pop up screen to save changes.
    It happens with SAP Standard screens for any data changes. How do we achieve the same functionality to prompt a popup message for any changes in the custom screen and save the data?
    Thanks
    Anil

    Hi Appana,
    Yes, we can identify any screen changes from sy-datar. It is set when I make any changes in the custom screen also. But I dont want to give a pop up every time I leave the custom screen. I want to give raise a pop up for saving the delivery document just like any other SAP screen (For eg. SAP Screens do not give a pop up when we move from one screen to another screen, but it gives a pop up if we try to do a subsequent functions like picking without saving the changes in delivery).
    Thanks
    Anil

  • Using BBP_CUF_BADI to display custom screens

    I am using BBP_CUF_BADI to display my customer screen on the Shopping Cart Item Screen. How do I pass data to my custom screen? I would like to display my CUF fields, I would like the data from the standard fields on the Shopping Cart line item. Any help would be appreciated.

    Hi Jagathi,
    You'll name the FM as you want.
    The pupose of these 2 FM is to exchange data between the BADIs methods and the Function Group (with global data of the FG).
    The 1st FM is to be called from the PUT_DATA method of the BADI, to send data to the Function Group (FG global data): for example items and/or header and iv_mode, ...
    The 2nd FM is to be called from the GET_DATA method of the BADI to get the result of the subscreen (CUF changes).
    Hope you'll get it all.
    Vadim

Maybe you are looking for

  • Hardware key is not displayed in SAP B1 8.81

    Hi, We installed  SAP B1 8.81(Evaluation version). Hardware key is exists in     Service manager -> Licence Manger. But it is not displaying in   Client  System 's       Help -> About SAP Business one. Please let me know how to retrieve hardware key.

  • Detatched PDF generation

    I have a requirement to capture a PDF report at a scheduled time (ie out of hours) and store on the DB. The reason behind this is that the data is purged every few hours (hundreds of millions of rows) and so they would like to capture the stats befor

  • Can I disable the ESC key in camera raw?

    When working in Photoshop in general, I've gotten into the habit of using the ESC key to get out of a tool I'm currently using, but when using Camera Raw, this has the consequence of closing the image I've been working on without saving any of the ed

  • Can´t sync iphoto properly after OS4 update

    geez I am going mad, after inszalling OS4 I cannot sync properly iphoto with my iphone. I did a restore from backup but it did not help. It either tells me that it is not possible to copy to or from iphone or it just says there is no free space on th

  • Discovered new Volume on managed storage is shown as "unmanaged"

    Hello, I'm working with OVM 3.1.1.305 and a managed storage device (ETERNUS). 2 volumes are configured on my storage device and this volues are used for repository and cluster file system. With the storage plug in it is possible create new physical d