Custom tab not reflecting in ME21N & ME22N

Hello,
I need to add an additional tab on the Header level of PO. I have implemented the BAdI ME_GUI_PO_CUST & ME_PROCESS_PO_CUST as specified in the sample example.
However, I'm unable to see the custom tab in ME21N & ME22N, whereas I can see the tab in ME23N.  I have code in the method FIELDSELECTION_HEADER but it doesn't stop at breakpoints when I run ME21N & ME22N. 
When I debug, I can see the breakpoints but the program never reaches them. 
Thank you for any help on this and implementing these BAdIs in general.  This is the first time I have worked with these BAdIs and it has proved to be very frustrating. 
Kind regards,
Chris Mowl

Hi Chris,
Madhu is right. Check the point he suggests. For instance in IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER
  DATA: l_persistent TYPE mmpur_bool,
        l_changeable TYPE mmpur_bool.
* if the item is already on the database,
* we disallow to change field badi_bsgru
  l_persistent = im_header->is_persistent( ).
  l_changeable = im_header->is_changeable( ).
* after coding
   IF CONDITION IS TRUE.
      IF l_changeable = 'X'.
        <fs>-fieldstatus = '.'. " READY FOR INPUT
      ELSE.
        <fs>-fieldstatus = '*'. " view
      ENDIF.
    ELSE.
      <fs>-fieldstatus = '-'.    "SUPRESS IT
    ENDIF.
Remember note, if all fields that you add are suppressed, then the dynpro will not be viewed.
I hope this helps you
Regards
Eduardo

Similar Messages

  • SOLUTION: tab not showing in ME21N/ME22N with badi ME_GUI_PO_CUST

    Hi,
    I implemented BADI's ME_GUI_PO_CUST and ME_PROCESS_PO_CUST to show a custom tab in the header section of ME21N, ME22N and ME23N.
    But after implementing the BADI's, the tab showed up in ME23N, but not in ME21N and ME22N.
    So I started looking for a solution in the SDN forum, and I saw that there were a LOT of people with the same problem, but nobody ever posted a solution.
    So here is the solution:
    So, I added the fields I wanted to show in the structure CI_EKKODB, implemented the BADI ME_GUI_PO_CUST (the methods SUBSCRIBE and MAP_DYNPRO_FIELDS), and the BADI ME_PROCESS_PO_CUST.
    After that the tab showed up in ME23N, not in ME21N or ME22N.
    So I found an SAP note saying the following:
    Question:
    I implemented the 'ME_GUI_PO_CUST' Business Add-In to display customer-
    specific tab titles in the EnjoySAP purchase order. They are only shown in display mode (ME23N) however, not in create or change. Why?
    Solution:
    You may have forgotten to assign a field status to the user-defined fields on these tabs. As a result, the system automatically interprets the field status as 'hidden' in create and change modes. However if a tab contains only hidden fields, then the entire tab is set to hidden. In display mode, fields without a field status are automatically set to display. That is why the tab is displayed in this case.
    To assign a field status to the user-defined fields, use the methods provided for this purpose in the Business Add-In 'ME_PROCESS_PO_CUST' (compare sample source code in the FIELDSELECTION_ITEM method).
    So in my case, I had to add some code to the  FIELDSELECTION_HEADER method of the BADI ME_PROCESS_PO_CUST.
    This is the code:
    method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER.
      DATA: l_persistent TYPE mmpur_bool.
      FIELD-SYMBOLS: <fs> LIKE LINE OF ch_fieldselection.
    * if the item is already on the database, we disallow to change field badi_bsgru
      l_persistent = im_header->is_persistent( ).
    *   IF l_persistent EQ mmpur_yes.
        READ TABLE ch_fieldselection ASSIGNING <fs> WITH TABLE KEY metafield = mmmfd_cust_01.
        IF sy-subrc IS INITIAL.
          <fs>-fieldstatus = '*'. " Input
        ENDIF.
    *   ENDIF.
    endmethod.
    But then, I realized that this BADI was never triggered. When I entered one of the transaction codes ME21N, ME22N or ME23N, the code in the fieldselection_header method was never executed.
    So I went to transaction SE18, and entered ME_PROCESS_PO_CUST in 'Enhancement Spot' and pushed the button display.
    And there in the tab 'Enhancement Implementations', I saw an implementation that was not mine, and that did not show up in the overview of the SE18 'BADI NAME' tab for the same BADI... which to me seems strange.
    So as you may know, there can never be more than one active implementation of the BADI ME_PROCESS_PO_CUST.
    So I disactivated my implementation and put my code in the existing implementation.
    And after that it worked!

    implement first badi :ZME_GUI_PO_CUST:
    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     = 'HEADER'.
    * 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 = 'SAPLMEPOBADIEX'.
    * 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.
    ENDMETHOD.
    implement 2nd badi : ZME_PROCESS_PO_CUST:
    method IF_EX_ME_PROCESS_PO_CUST~FIELDSELECTION_HEADER.
       DATA: l_persistent TYPE mmpur_bool.
       FIELD-SYMBOLS: <fs> LIKE LINE OF ch_fieldselection.
    * if the item is already on the database, we disallow to change field badi_bsgru
       l_persistent = im_header->is_persistent( ).
    *   IF l_persistent EQ mmpur_yes.
         READ TABLE ch_fieldselection ASSIGNING <fs> WITH TABLE KEY metafield = mmmfd_cust_01.
         IF sy-subrc IS INITIAL.
           <fs>-fieldstatus = '*'. " Input
         ENDIF.
    *   ENDIF.
    endmethod.

  • How to make the custom field enable/disable in ME21n/ME22n/ME23n trans

    Hi Experts,
    I need help.
    I have created one custom field in the transaction ME21n/ME22n/ME23n under customer data 2 tab. But my problem is the field is always in enable (means editable only)  even in Display mode. How to make the field is non editable in display mode and editable in change mode.
    I have tried by putting some logic to make that field to change alternatively according to change/display button. And it is working fine but if we click any othe button , this field is becoming editable even in display mode.
    How to make this field to behave as standard fields?
    Please reply me <removed by moderator>
    Thank you in advance.
    Best Regards,
    Divakar.
    Edited by: Thomas Zloch on Mar 2, 2012

    If you have BADI implimented for custom tabs then you can do this in method ME_PROCESS_PO_CUST~FIELDSELECTION_ITEM
    lv_changeable = im_header->is_changeable( ).
      LOOP AT ch_fieldselection ASSIGNING <fs>
        IF lv_changeable IS INITIAL.
          <fs>-fieldstatus = '*'. " Display
        ELSE.
          <fs>-fieldstatus = '+'. " Change
        ENDIF.
    endloop.

  • Custom Tab not getting high-lighted

    Custom Tab not getting high-lighted
    Hi,
    I have added a new tab TabX in Item Master data form.
    When only my add-on is running, it is working properly:
    When I click on the TabX, all the controls belonging to the tab are displaying correctly.
    TabX control is getting highlighted.
    When my add-on runs with another add-on (DBS):
    When I click on the TabX, all the controls belonging to the tab are displaying correctly.
    But, TabX is not getting highlighted. Instead, some other tab(purchasing tab) is getting highlighted.
    1) I'm not sure what is done by the other add-on.
    2) I cannot debug my add-on when the other add-on is running. (Because we cannot get the other add-on installed in our office network. It is running only in client site.)
    So, I need to 'guess' what might solve this problem.
    Please help me if you know any work-arounds, so that I can highlight TabX (The normal effect of pressing a tab) in this situation.
    Thank you.
    Regards,
    Geetha

    Hi Geeta,
    on FormLoad event,add the panelevel and set the panelevel of the Items.(must ber unique on that form)
    OnLoadAfter(ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
                BubbleEvent = true;
                AddNew_IndirectCost_Tab()
    private void AddNew_IndirectCost_Tab()
                     oForm.DataSources.UserDataSources.Add("Folder", SAPbouiCOM.BoDataType.dt_LONG_TEXT, 100);
                    oItem = (SAPbouiCOM.Item)oForm.Items.Item("36");
                    oNewItem = oForm.Items.Add("oFldrCost", SAPbouiCOM.BoFormItemTypes.it_FOLDER);
                    // oNewItem.AffectsFormMode = true;
                    oNewItem.Top = oItem.Top;
                    oNewItem.Height = oItem.Height;
                    oNewItem.Width = oItem.Width;
                    oNewItem.Left = oItem.Left + oItem.Width + 50;
                    oFolder = (SAPbouiCOM.Folder)oNewItem.Specific;
                    oFolder.DataBind.SetBound(true, "", "Folder");
                    oNewItem.AffectsFormMode = false;
                    oFolder.Caption = "Indirect Cost";
                    oFolder.GroupWith("36");
                    oItem = (SAPbouiCOM.Item)oForm.Items.Item("60");
                    oNewItem = oForm.Items.Add("LblMacCost", SAPbouiCOM.BoFormItemTypes.it_STATIC);
                    oNewItem.Top = oItem.Top;
                    oNewItem.Height = oItem.Height;
                    oNewItem.Width = oItem.Width + 20;
                    oNewItem.Left = oItem.Left;
                    *oNewItem.FromPane = 222;*      // set pane level
                    *oNewItem.ToPane = 222;*          //set panelevel
                    oStaticText = (SAPbouiCOM.StaticText)oNewItem.Specific;
                    oStaticText.Caption = "Actual Machine Cost";
    on click of the your pane set the panelevel, like;
    protected override void  etClickBeforeAction(ref SAPbouiCOM.ItemEvent pVal, out bool BubbleEvent)
                BubbleEvent = true;
                 if (pVal.ItemUID == "oFldrCost")                    // oFldrCost-My pane,
                     oForm.PaneLevel = 222;
    The main thing is that you have to set the form's panelevel on click_before event and youe pane will be high lighted

  • Update fields from custom tab in selected lines in ME22N

    Hello all,
    I have implemented BAdis ME_PROCESS_PO_CUST & ME_GUI_PO_CUST and created a custom tab at the header level in ME21N/ME22N. I have fields such as Delivery Date and Ex Factory Date in my tab.
    We are able to put data in these fields and have that data populate their respective fields in the Purchase Order.
    Our users would like to be able to run ME22N and select certain line items and have only those items changed with the data from the custom fields.
    So, my question is how do I handle line selection in the context of these BAdIs? Is there a way to know which lines have been selected and then only change the data in those items?
    I have looked in Class CL_PO_ITEM_HANDLE_MM for an attribute or method that might help but I haven't found anything as of yet.
    I have found that the field MEPO1211-TCSELFLAG is set when a line is selected in ME22N. However, I haven't found a way to work with it. It doesn't get passed to any of the methods in the BAdIs, as far as I know.
    Thanks for any help.
    Kind Regards,
    Chris

    Hi, i understand
    if you are sure that if with MEPO1211-TCSELFLAG  this variable you can able to get,
    even though it is not been passed to BADI, you can achieve it to get the variable.
    Just try as follows,
    DATA lv_head_ptr(30) VALUE '(SAPLMEGUI)MEPO1211'.
    FIELD-SYMBOLS: <l_MEPO1211> TYPE MEPO1211.
    ASSIGN (lv_head_ptr) TO <l_MEPO1211>.
    Now, <l_MEPO1211> will contain the structure of the MEPO1211.

  • Changes in custom tab shud reflect in std Item overview tab in VL32N

    Hi all,
    I have added a custom tab (Overview tab) in transaction VL32N and Vl33N using the BADI "LE_SHP_TAB_CUST_OVER".
    Now for transaction Vl32N,when I change delivery ,if i change the quantity field in teh  custom tab,then the chnages have to be reflected in the std ITEM OVERVIEW tab .Is this possible??
    My understanding was ,I cna do changes i n the std tab and those will be rfelected to the custom tab but not vice-versa.can someone pls confirm?
    Thanks.

    Hi xperts,
    Please advise.Is this requirement doable?

  • Changes to custom VO not reflecting

    Hello All,
    I created a new VO which extends standard. I did a jpximport. First time it worked. But now when I make changes to the VO files, the changes, query and new attributes, are not reflecting on the OA page. The page is picking the old version. Saw the details through About Page. Apache was bounced a couple of times still no use.
    Can anybody tell me if I'm missing out anything here ?
    Thanks.

    You can also use functional administrator responsibility.
    --Shiv                                                                                                                                                                                               

  • Customer field Not shown in ME21n and ME22N

    Hi,
    While creation ME21N and change ME22N we are unable to get Customer field in Delivery address tab of the PO, We are getting Address and Vendor (Sc Vendor) fields in Delivery address tab , but customer not able to see.
    The Customer field we can seen through ME23N.
    We have cross check screen layout for ME21N and ME22 and NBF here in all cases Customer field is Optional.

    Hi,
    Please check screen layout for AKTH & AKTV.
    Regards
    Subbu.

  • PS 2013 - Changing the formula in custom field not reflected in the report columns

    Hi, 
    The company where I work have a Sharepoint environment / EPM 2013 with about seven hundred registered projects. 
    We have a customer demand where it is necessary to change the formula of one of the custom fields of the environment. This field is used in some management reports made ​​in Reporting Services and accessed by the entire board. The report uses as a source
    'MSP_EpmProject_UserView' view. 
    The change in formula was simple, but we found that the change will not be reflected in the reports when the user saves the project in Sharepoint or publish the schedule associated with the Project. 
    I believe this is the expected behavior of the EPM, but I wonder if there is some other way than through the PSI, to publish all environmental projects.  
    Best regards,
    Armando Machado Gonçalves - Sharepoint / EPM 2013

    Hello,
    That is expected, it will not update until the project is open and republished. No automatic way to do this without automating project pro. Publishing all projects via the PSI wont cause the plan to recalculate, the plans will need to be opened.
    Paul
    Paul Mather | Twitter |
    http://pwmather.wordpress.com | CPS

  • Custom Theme not reflecting on NWBC HTML

    Dear All,
    I copied the corbu theme and then modified the same to create the custom theme. Now when I use the custom theme the applications do come up in the custom theme but the shell loses even the corbu theme and falls back to the basic theme. Can you give me any pointers to solve this issue.
    Pls see the below screen shot.
    thanks,
    raghavendra

    Thanks Samuli for taking at look at the problem. I put in the config table or the URL parameter, it has the same effect. I am using NWBC HTML. The last patch applied was patch 38 based on this note
    1353538 - NWBC -Patch Collection- SERVER SIDE (ABAP)+NWBC for HTML

  • Custom theme not reflected for Panel control in HRTMC_SHORT_PROFILE application.

    Hi All
       After the ECC and portal upgrade , I have been facing issues with most of the application being visible in standard SAP theme.
      Some changes were resolved by changing the parameter parpghtbgcolor etc.
      For the Short Profile panel under HRTMC_SHORT_PROFILE application , the colour of the Panel bar is coming in blue instead of custom theme.
      Can you please suggest which parameter value should be changed under
       System Administration -> Support -> Themes -> Update Customer Unified Rendering Theme Parameters
      Please reply at the earliest.
    Regards
    Shaily

    Quote from: Svet on 08-October-11, 02:01:08
    Remove current Virtu Control Panel/Driver & software with "Your Uninstaller!":
    http://www.ursoftware.com/download.php
    [which removes any registry entries and files that can be left assotiated with corespond sofware]
    when its done, reboot machine and then install the Virtu from msi web again:
    http://www.msi.com/service/download/driver-17057.html
    Hi Svet,
    Thanks for your reply.
    I've done as you requested (although I will point out that Your Uninstaller contains a Toolbar which is flagged as Spyware...) and uninstalled Virtu with Your Uninstaller:
    And then I re-installed the version of Virtu Control Centre from your link (it's the same as I downloaded earlier but I re-downloaded it to be sure...), and exactly the same happens:
    HU16E, I think your correct. Reading the other issues with the missing Certificate/License on the BIOS has plagued a few other MSI motherboards but has been fixed with BIOS updates - I've submitted a support request to MSI but haven't heard anything back yet. I can't beleive they can/would miss something like this out, it's an integral feature of the Z68 chipset!
    I might see if the retailer I bought it from will accept it back for a refund, I'll either get an ASUS or the GD80, unless someone can suggest anything else or MSI come up with a BIOS update sharpish!

  • Hiding a customized tab (from header and item) in ME21N, ME22N and ME23N

    Hi SAP gurus,
    I need to make invisible a customized tab in Po creation(me21n), change(me22n) and display(me23n) in enjoySAP transaction for a particulat Doucument type.
    Please let me know the possibility and the solution to implement.
    Thanks,
    Kishore P

    Hi Kishore,
    The customized tab cannot be made visible or invisible conditionally. Instead you can write some text inside the tab to distinguish between different document types.
    Hope this helps.
    Regards,
    Abhijeet Kapgate

  • On ME21N / ME22N / ME23N  PUT SOME TAB INVISIBLE.

    Hi,
    I need put the text tab on this transactions me21n me22n and me23n INVISIBLE for some users, how can i do this?
    tks.
    Carlos Siqueira.

    We had a requirement for hiding the tab Spec2000 in item detail.
    The code in the enhancement implementation AD_S2K_SUB_LMEGUIU08 in function module MEGUI_BUILD_PO_ITEM_PLUGIN was commented out to remove the extra tab as the structure that is linked to this tab was MEPO1339.
    May be the same works for you for the other tab.

  • PSCD custom Tabs u2013 need to hide a Tab on the CAA1, CAA2, CAA3 transactions

    We are using Business Data Toolset (BDT) (transaction CAWM) for these changes.
    We are using PSCD for one department and created a Tab for the custom data screens and it works just fine.
    Now we need to setup a 2nd department to use PSCD and we want to create a 2nd Tab for the custom data screens for this department. This I have been able to do.
    However we want the department to see only their custom Tab Not the other departments. I have not been able to figure out how to hide a Tab.
    I can not find any documentation on how to do this.
    Is it even possible?

    Your idea sounds do-able.
    For any FP object that you want to extend, you would create a "Shortcut Menu Activation?" Event. Within the event, you can retrieve a MenuRef.
    Using the Menu Palette, you use the Insert Menu Items function, each item has a displayed name and a tag.
    You then add a Shortcut Menu Selection (User) Event for the FP object to handle the selection made by the user. The ItemTags that you assign in the are available to use as a case selector. Your example would simply set the Tab control's index value to switch to the panel you want.
    I built a fancy tree control (as an XControl) a few years ago for an internal tool that presented a view of files on disk and the right-click menu was context sensitive the the extension of the filename selected. Look in the Facade and the FileView Set Context Menu.vi for the guts of what I did.
    I always deleted the tree menu choices and then added my own. If you don't delete the items, then your options are appended to the end.
    I've attached the files here as a ZIP. (LV8.6)
    Now is the right time to use %^<%Y-%m-%dT%H:%M:%S%3uZ>T
    If you don't hate time zones, you're not a real programmer.
    "You are what you don't automate"
    Inplaceness is synonymous with insidiousness
    Attachments:
    LV 8.6 Upgrade Tool.zip ‏745 KB

  • Custom tab data not saving in ME22N w/ BAdI ME_PROCESS_PO_CUST

    Hello all,
    I have implemented BAdis ME_PROCESS_PO_CUST & ME_GUI_PO_CUST and created a custom tab at the header level in ME21N/ME22N. I have fields such as Delivery Date and Ex Factory Date in my tab.
    We are able to put data in these fields and have that data populate their respective fields in the Purchase Order.
    Our users would like to be able to run ME22N and select certain line items and have only those items changed with the data from the custom fields. 
    So, my question is how do I handle line selection in the context of these BAdIs?  Is there a way to know which lines have been selected and then only change the data in those items?
    I have looked in Class CL_PO_ITEM_HANDLE_MM for an attribute or method that might help but I haven't found anything as of yet. 
    I have found that the field MEPO1211-TCSELFLAG is set when a line is selected in ME22N.  However, I haven't found a way to work with it.  It doesn't get passed to any of the methods in the BAdIs, as far as I know. 
    January 27, 2012  **************
    We were able to capture the lines selected by using code from method mass_change in Include LMEGUICJK, Function Group MEGUI.  The lines are in the lt_models table. 
    So, now my issue is getting data to save in ME22N.  When I put data in my custom tabs and select a line, the data gets changed on the screen but does not save.  It does work when I make a change in another field, like changing the description for instance.  I'm using the set_changed method in Process_Header from ME_PROCESS_PO_CUST but it doesn't work. 
    I'm getting the idea that I'm the first ABAP developer to try this...
    Thanks for any help.
    Kind Regards,
    Chris
    Edited by: Chris  Mowl on Jan 11, 2012 10:33 AM
    Edited by: Chris  Mowl on Jan 11, 2012 4:24 PM
    Edited by: Chris  Mowl on Jan 27, 2012 10:57 AM
    Edited by: Chris  Mowl on Jan 27, 2012 2:00 PM

    Hi,
    Checkout the below link :
    <link to blacklisted site removed by moderator>
    Shailaja Ainala.
    Edited by: Thomas Zloch on Jan 28, 2012 9:06 PM

Maybe you are looking for

  • Solve oracle multimedia post upgrade errors

    Hello, I performed and out of place upgrade from oracle 10.2.0.4 to 11.2.0.4. when I run the postupgrade script i have issues on oracle multimedia that i cannot solve.. it is about shared memory. I followed all the recommendations suggested on the pr

  • Bridging between WRT54G v6 and WRT54G2 v1, possible?

    I have been using a WRT54G v6 for quite some time now, and I recently purchased a WRT54G2 to use at my home theater system with my Tivo and HTPC.  I want to have my Tivo and HTPC hard wired to the WRT54G2, and have that linked wirelessly to my WRT54G

  • Error in afab test run in background - very urgent

    Friends I have a problem with one of my clients. Depreciation ( AFAB) has been run in test mode in foreground. - Run without errors( Successfully) The same has run in back ground ( TEST MODE), we are getting errors? ( There are no changes of master d

  • Creating a CNN, Sky type news ticker

    Hi, I have a three minute video and would like to add a news ticker that will loop once during the three minutes. The ticker text is considerable. Before I used to use Sony Vegas. A video I created using Sony Vegas is at http://youtu.be/bmcXM7fE6s0 (

  • How to find list of ALL Events

    How can I find all the events I can listen for in Flex? I want to find/listen for the show event, that is used on UIComponents. Example: <mx:label show={function()}/> I want to listen to the Show Event, possibly force it to dispatch again.