Add  button "complete"  to ME21N in service selection

Hello,
How can I add the button "Complete" in the service selection at purchase order?
This button allows you to download the hierarchy of services to the application.
Thanks.
LR

Hi,
If you have Knowledge of ABAP Coding then only you can do this otherwise not.
Because it requires changes in the Standard Program .
And this work is done by ABAPers only.
They will do development as per your requirement ,Test it and Transport it.
Hope it clears,
Rahul.

Similar Messages

  • How to add buttons/text to right pane when selection is made from left pane

    Hi,
    I am new to JAVA development with SWING.
    I am trying to create an application where in the left pane there is a Tree Menu and in the right pane I have some buttons. Based on the selections in the left Pane, I should be able to add more buttons and or text to the right pane.
    How do I accomplish this? If you guys have any sample code, Please post it or suggest different ways of accomplishing.
    Thanks in advance.
    user2325986

    It looks like you are declaring different main_Frame, rightPane and leftPane and have too many items static and final. Take a look at the code below. I have set GridBagLayout for the frame for a better look.
    I am not sure what you mean when you say that you want right panel only and want to add to it. Also, I think you would be better off using CardLayout for rightPanel as stated by jduprez
    When you want to show code use {_code_} code here {_code_} tags (code in brackets without underscores)
    Here is a working sample of what you had:
    import javax.swing.*;
    import javax.swing.event.*;
    import java.awt.*;
    import javax.swing.tree.*;
    public class Main
        public static void main(String[] args)
            main_Frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            main_Frame.setVisible(true);
        public static TestFrame main_Frame = new TestFrame();
    class TestFrame extends JFrame
        public TestFrame()
            setTitle("Test Frame");
            setSize(500, 500);
            setLayout(new GridBagLayout());
            leftGBC = new GridBagConstraints();
            leftGBC.gridx = 0;
            leftGBC.gridy = 0;
            leftGBC.fill = leftGBC.BOTH;
            leftGBC.weightx = 10;
            leftGBC.weighty = 100;
            rightGBC = new GridBagConstraints();
            rightGBC.gridx = 1;
            rightGBC.gridy = 0;
            rightGBC.fill = rightGBC.BOTH;
            rightGBC.weightx = 100;
            rightGBC.weighty = 100;
            leftPanel = new JPanel();
            leftPane = new JScrollPane(leftPanel);
            leftPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
            leftPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            rightPanel = new JPanel();
            rightPane = new JScrollPane(rightPanel);
            rightPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
            rightPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            DefaultMutableTreeNode root = new DefaultMutableTreeNode("main_Tree");
            DefaultMutableTreeNode Branch1 = new DefaultMutableTreeNode("Branch1");
            DefaultMutableTreeNode Leaf1 = new DefaultMutableTreeNode("Leaf1");
            root.add(Branch1);
            Branch1.add(Leaf1);
            DefaultMutableTreeNode Branch2 = new DefaultMutableTreeNode("Branch2");
            DefaultMutableTreeNode Leaf2 = new DefaultMutableTreeNode("Leaf2");
            root.add(Branch2);
            Branch2.add(Leaf2);
            JTree tree = new JTree(root);
            tree.setRootVisible(true);
            tree.setShowsRootHandles(true);
            tree.getSelectionModel().setSelectionMode(TreeSelectionModel.SINGLE_TREE_SELECTION);
            tree.addTreeSelectionListener(new TreeSelectionListener()
                public void valueChanged(TreeSelectionEvent se)
                    JTree tree = (JTree) se.getSource();
                    DefaultMutableTreeNode node = (DefaultMutableTreeNode)tree.getLastSelectedPathComponent();
                    if (node == null) return;
                    String nodeInfo = node.toString();
                    if (nodeInfo.equals("Leaf1"))
                        rightPanel = new JPanel();
                        rightPanel.add(label);
                        Main.main_Frame.remove(rightPane);
                        rightPane = new JScrollPane(rightPanel);
                        rightPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
                        rightPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
                        Main.main_Frame.add(rightPane, rightGBC);
                        Main.main_Frame.validate();
                        Main.main_Frame.repaint();
                    if (nodeInfo.equals("Leaf2"))
                        rightPanel = new JPanel();
                        rightPanel.add(Jbt2);
                        Main.main_Frame.remove(rightPane);
                        rightPane = new JScrollPane(rightPanel);
                        rightPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
                        rightPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
                        Main.main_Frame.add(rightPane, rightGBC);
                        Main.main_Frame.validate();
                        Main.main_Frame.repaint();
            DefaultTreeCellRenderer renderer = (DefaultTreeCellRenderer) tree.getCellRenderer();
            tree.setRowHeight(30);
            renderer.setLeafIcon(new ImageIcon("blue-ball.gif"));
            renderer.setOpenIcon(new ImageIcon("red-ball.gif"));
            renderer.setClosedIcon(new ImageIcon("yellow-ball.gif"));
            renderer.setFont(new Font("Monospaced",Font.BOLD|Font.ITALIC,15));
            renderer.setTextNonSelectionColor(Color.blue);
            renderer.setTextSelectionColor(Color.white);
            renderer.setBackgroundNonSelectionColor(Color.white);
            renderer.setBackgroundSelectionColor(Color.gray);
            renderer.setBorderSelectionColor(Color.lightGray);
            leftPanel.add(tree);
            add(leftPane, leftGBC);
            add(rightPane, rightGBC);
        private JPanel leftPanel;
        private JPanel rightPanel;
        private JScrollPane leftPane;
        private JScrollPane rightPane;
        private GridBagConstraints leftGBC;
        private GridBagConstraints rightGBC;
        private JButton Jbt1 = new JButton("Button1");
        private JButton Jbt2 = new JButton("Button2");
        private JLabel label = new JLabel("Enter your message below");
        private JTextArea jta = new JTextArea(10,15);
        private JButton Jbt3 = new JButton("Button3");
        private JButton Jbt4 = new JButton("Button4");
    }

  • Button "Service Selection" in ML81N doesn't appear

    After introducing the PO and creating the SES, the button "Service Selection" is missing, so I can't continue doing the SES.
    This happens only in DEV, but not in QAS and PROD.
    I believe it has nothing to do with customizing.
    Thanks.

    Hi,
    Check latest GUI 6.40 or 7.10 version and update patch level in DEV. Better Consult Basis Consultant.
    Regards,
    Biju K

  • Add button on Service Calender home page grid

    Hi ,
    We tried to add the button on Service calender home page grid but not able to add it. We tried page rule, in that we used the
     <PageRule Address="/sm/home_apptbook.aspx" /> but it failed to add button.
    We also tried to add button using Mscrm.AptbookTab but still not succeeded.
    So any one have solution on this.
    Thanks!

    Post Author: jsanzone
    CA Forum: Deployment
    Michelle,
    Thank you for noting your observations on the new OnDemand button and link to the home page.  Several admins have been wondering how to disable this new feature and I've been working with BusObjects Tech Support for a .NET on IIS solution.  Your posting looks like what I was provided from TS on an initial effort, however, TS has updated as follows:
    For .NET on IIS
    In the CCM stop the World Wide Web Publishing Service
    <Install Path> below refers to the location Business Objects is installed.  By default it is: c:\Program Files\Business Obejcts\BusinessObjects Enterprise11.5\
    Go to <Install Path>\Web Content\Enterprise115\Infoview
    Open the web.config file in notepad or other text editor.
    Search for the following: supportOnDemand
    Change true to false
    Save and close the file
    In the same directory open the home.aspx in notepad or other text editor.
    Search for the following: ondemandlink
    Go up 2 lines to the <tr> tag.  At the beginning of this line type <!--
    Now go down to the </tr> which should be 4 lines down.  Add --> to the end of the line after the </tr> tag.
    Now search for the following: ondemandlabel
    Go up 3 lines to the <tr> tag.  Place <!-- at the beginning of the line.
    Go down 4 lines and add --> to the end of the line after the </tr> tag.
    Save and close the file.
    Start the World Wide Publishing Service in the CCM.
    Per advisement from Tech Support, they do plan on publishing this as a Knowledge Base article sometime soon.

  • How to display a selection option for service selection

    Dear All,
    I want to display the selection option ("Other sources") which I find
    in the /nse80 screen painter but cannot be display in the ME22N.
    /nME22N
    -> select one Purchase Order for Services
    -> select one Item Line
    -> at "Services" tab on Item Details Level
    -> Add new ICON behind "Serv. selection"
    Any ideas?
    Thanks,
    Neil

    Hi Sharmila,
    Thanks for your reply!
    Actually, I find a User Exit program ("EXIT_SAPLMLSP_011") in selection screen program ("SAPLMLSP" ). This User Exit is for the radio button ("Other sources").
    However, I don't know how to activate that button at ME22N.
    By the way, can you go more details on how screen exits work?
    Really thank for your support!
    Neil
    Message was edited by:
            Neil Lam

  • Add Button behaviour

    Hi,
    After completion of my coding, while debugging ,  my validations,data retrievals everything is working fine.But when I press the Add Button, lam getting the Message "You cant change the document after you have add it.."
    and data is not adding, there is no action takes place after clicking on Add Button,except this message..
    Please tell me how to rectify it...
    Thanks & Regards
    Chakrapani Bandaru

    Hi Mahendra,
    Iam placing my code here pls go thru this..in the item event
    If pVal.Before_Action = False Then
                Select Case pVal.FormUID
                    Case "DISTILLASION_"
                        Select Case pVal.EventType
                            Case SAPbouiCOM.BoEventTypes.et_CLICK
                                If pVal.ItemUID = "1" And pVal.FormMode = "3" Then
                                    oForm = SBO_Application.Forms.Item("DISTILLASION_")
                                    BubbleEvent = False
                                    oItem = oForm.Items.Item("Disp") '8
                                    If (oItem.Specific.value = "") Then
                                        oItem.Click()
                                        SBO_Application.MessageBox("- Please Enter 'Dispensing Document Number'")
                                        Return
                                    End If
                                    var1 = SBO_Application.MessageBox("You cannot change this document after you have added it. Continue?", 1, "Ok", "Cancel", "")
                                    If (var1 = 1) Then
                                     SBO_Application.MessageBox("Operation completed successfully"}
                                    End If
                                End If
                        End Select
                End Select
            End If

  • Add Button Column in IR

    Hi,
    I have created an Interactive report on a table. I want to add two buttons in each row: Accept and Reject, so that i can change the status(db column) of the corresponding record on button action.
    How can I do so?

    Hi poojaC,
    Try the below code,
    i am giving the idea to add buttons..may be this is not the way you want.
    step1
    -- put this code in report region
    select "ROWID",
    '<input type="button" value="Accept"  onclick="func('||EMPNO||')">'  as "Accept",
    '<input type="button" value="Reject"  onclick="func('||EMPNO||')">'  as "Reject",
    "EMPNO",
    "ENAME",
    "JOB",
    "MGR",
    "HIREDATE",
    "SAL",
    "COMM",
    "DEPTNO"
    from "#OWNER#"."EMP"
    -- edit the Accept and reject column and change Display type to "standard report column"Step 2 : create one function in page header like
    -- here you can execute your process on button action
    <script>
    function func(id)
    alert(id);
    </script>Hope this will give you some idea.
    Regards,
    Jitendra

  • How can I add buttons that do different things to each row of an rpt result

    Hi there,
    I'm trying to figure out how to add buttons to each row of a report. Here is the scenario:
    report query returns a set of data that needs to be "approved". The options are "Append", "Replace", or "Reject" (I want to make the results look like so:)
    Person1 today blah, blah blah... Append button Replace button Reject button
    Person2 today blah, blah, blah... Append button Replace button Reject button
    PersonA today something, blah... Append button Replace button Reject button
    and so on.
    I'd like to set up the page so that there is an append, replace, reject button for each row returned by the report. So when the "Approver" clicks on the append button, something happens for that row, etc. How does one do this? So far I can only get the buttons to show up in the region. I also thought it might be possible to somehow turn the append, replace, reject text into links that called a plsql proceedure that would handle the action, but I'm not having any success with that idea either.
    Edited by: user10361829 on Sep 29, 2009 12:10 PM

    What I've done is make my report query as follows:
    select field_a, field_b, field_c, 'Append', 'Replace', 'Reject'
    from table_x
    where field y = :PX_ID
    That gives me the words (append, replace, reject) in the report. Then I go to the report attributes section and make a link out of the columns (append, replace, reject) so far, so good.
    Next question is how to make clicking on those links activate an update action on tableN. In the column_link section there is a box marked "Request" that looks like it might be relevant because Request is a term connected to buttons, but I've no idea how to use it. Or, can one use the tabluar form element section of the report attributes page to connect the Append (pseudo column) to an action? I've looked at your example (Sam) with the delete button, but what I really need to see is the Apex menu that sets it up because there are so many levels in the interface it is not intuitive (at least for me). I know exactly what I want it to look like but I'm missing the crucial step to get there... Thanks for your help so far.
    Column link section is described below :
    Column Link     Top
    Link Text      flashlight          
         [*Append*][Icon 1][Icon 2][Icon 3][Icon 4][Icon 5]
    Link Attributes      
    Target: *"Page in this application"*     Page: *10*     
    Reset Pagination
    Request Clear Cache      
    Name     Value
    Item 1      Px_page_item flashlight *#????#*          flashlight
    Item 2      flashlight          flashlight
    Item 3      flashlight          flashlight
    URL      
    Page Checksum

  • How to Add/Concatenate to a text field, values selected in a combo box

    I have a combo box form field that allows the user to select a value from a list and click on an Add button. The Add button should add/concatenate the vaue selected to a text field in order to create a list of values selected. I'm not sure how to do this using Javascript in Acrobat? I know I need to add the javascript to the Add button's Mouse Up action. Any help would be greatly appreciated. Thanks!

    Thanks so much - it works!
    >>> "Gilad D (try67)" <[email protected]> 9/25/2013 9:16 AM >>>
    Re: How to Add/Concatenate to a text field, values selected in a combo box created by Gilad D (try67) ( http://forums.adobe.com/people/try67 ) in JavaScript - View the full discussion ( http://forums.adobe.com/message/5712118#5712118 )
    Let's say the text field's name is "Text1", and the combo is called "Combo1". You can then use this code as the MouseUp script of the Add button:
    var f1 = this.getField("Text1");
    var f2 = this.getField("Combo1");
    if (f1.value=="") f1.value = f2.value;
    else f1.value = f1.value + ", " + f2.value;
    Please note that the Adobe Forums do not accept email attachments. If you want to embed a screen image in your message please visit the thread in the forum to embed the image at http://forums.adobe.com/message/5712118#5712118
    Replies to this message go to everyone subscribed to this thread, not directly to the person who posted the message. To post a reply, either reply to this email or visit the message page: http://forums.adobe.com/message/5712118#5712118
    To unsubscribe from this thread, please visit the message page at http://forums.adobe.com/message/5712118#5712118. In the Actions box on the right, click the Stop Email Notifications link.
    Start a new discussion in JavaScript by email ( mailto:[email protected].com ) or at Adobe Community ( http://forums.adobe.com/choose-container!input.jspa?contentType=1&containerType=14&contain er=3286 )
    For more information about maintaining your forum email notifications please go to http://forums.adobe.com/message/2936746#2936746.

  • How to add button in reuse_alv not in gui status

    hi guys,
    my question how can i add button to reuse_alv not in gui_status or pf_status ? and also i have an internal table which contains a checkbox field when user select one or more check box and push button , new table will be sended to batch input program.how can i do add button part, the rest of it is done.?

    Hi,The following sample report ZUS_SDN_ALV_BUTTON_CLICK_LTXT shows a possible way how to handle the BUTTON_CLICK event in order to retrieve a longtext for a ALV entry. Please note that for the sake of simplicity I have choosen an obsolete function module for text editing (only enter numerical values otherwise the function module crashes).
    *& Report ZUS_SDN_ALV_BUTTON_CLICK_LTXT
    *& Screen '0100' contains no elements.
    *& ok_code -> assigned to GD_OKCODE
    *& Flow logic:
        * PROCESS BEFORE OUTPUT.
        * MODULE STATUS_0100.
        * PROCESS AFTER INPUT.
        * MODULE USER_COMMAND_0100.
    *& PURPOSE: Demonstrate event BUTTON_CLICK for entering long text
    REPORT zus_sdn_alv_button_click_ltxt.
    TYPE-POOLS: icon.
    TYPES: BEGIN OF ty_s_outtab.
    INCLUDE TYPE knb1.
    TYPES: button TYPE iconname.
    TYPES: line TYPE bapi_line.
    TYPES: END OF ty_s_outtab.
    TYPES: ty_t_outtab TYPE STANDARD TABLE OF ty_s_outtab
    WITH DEFAULT KEY.
    DATA:
    gd_okcode TYPE ui_func,
    gd_repid TYPE syst-repid,
    go_docking TYPE REF TO cl_gui_docking_container,
    go_grid TYPE REF TO cl_gui_alv_grid,
    gt_fcat TYPE lvc_t_fcat,
    gt_variant TYPE disvariant,
    gs_layout TYPE lvc_s_layo.
    DATA:
    gs_outtab TYPE ty_s_outtab,
    gt_outtab TYPE ty_t_outtab.
        * CLASS lcl_eventhandler DEFINITION
    CLASS lcl_eventhandler DEFINITION.
    PUBLIC SECTION.
    CLASS-METHODS:
    handle_button_click FOR EVENT button_click OF cl_gui_alv_grid
    IMPORTING
    es_col_id
    es_row_no
    sender.
    ENDCLASS. "lcl_eventhandler DEFINITION
        * CLASS lcl_eventhandler IMPLEMENTATION
    CLASS lcl_eventhandler IMPLEMENTATION.
    METHOD handle_button_click.
        * define local data
    DATA:
    ld_answer(1) TYPE c,
    ls_outtab TYPE ty_s_outtab.
    CHECK ( sender = go_grid ).
    READ TABLE gt_outtab INTO ls_outtab INDEX es_row_no-row_id.
    " Note: This function module is obsolete and crashes if
    " non-numerical values are entered. Choose a more
    " appropriate way of entering the longtext.
    CALL FUNCTION 'POPUP_TO_GET_VALUE'
    EXPORTING
    fieldname = 'LINE'
    tabname = 'BAPITGB'
    titel = 'Enter Longtext'
    valuein = ls_outtab-line
    IMPORTING
    answer = ld_answer
    valueout = ls_outtab-line
    EXCEPTIONS
    fieldname_not_found = 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.
    IF ( ld_answer NE 'C' ). " 'C' = cancel
    MODIFY gt_outtab FROM ls_outtab INDEX es_row_no-row_id
    TRANSPORTING line.
    ENDIF.
        * Triggers PAI of the dynpro with the specified ok-code
    CALL METHOD cl_gui_cfw=>set_new_ok_code( 'REFRESH' ).
    ENDMETHOD. "handle_button_click
    ENDCLASS. "lcl_eventhandler IMPLEMENTATION
    START-OF-SELECTION.
    SELECT * FROM knb1
    INTO CORRESPONDING FIELDS OF TABLE gt_outtab
    WHERE bukrs = '1000'.
    CLEAR: gs_outtab.
    gs_outtab-button = icon_change_text.
    MODIFY gt_outtab FROM gs_outtab
    TRANSPORTING button LINE
    where ( bukrs NE space ). " modify all lines
    PERFORM build_fieldcatalog.
        * Create docking container
    CREATE OBJECT go_docking
    EXPORTING
    parent = cl_gui_container=>screen0
    ratio = 90
    EXCEPTIONS
    OTHERS = 6.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
        * Create ALV grids
    CREATE OBJECT go_grid
    EXPORTING
    i_parent = go_docking
    EXCEPTIONS
    OTHERS = 5.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
        * Set event handler
    SET HANDLER: lcl_eventhandler=>handle_button_click FOR go_grid.
        * Display data
    gs_layout-grid_title = 'Customers'.
    CALL METHOD go_grid->set_table_for_first_display
    EXPORTING
    is_layout = gs_layout
    CHANGING
    it_outtab = gt_outtab
    it_fieldcatalog = gt_fcat
    EXCEPTIONS
    OTHERS = 4.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
        * Link the docking container to the target dynpro
    gd_repid = syst-repid.
    CALL METHOD go_docking->link
    EXPORTING
    repid = gd_repid
    dynnr = '0100'
        * CONTAINER =
    EXCEPTIONS
    OTHERS = 4.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
        * NOTE: dynpro does not contain any elements
    CALL SCREEN '0100'.
        * Flow logic of dynpro (does not contain any dynpro elements):
    *PROCESS BEFORE OUTPUT.
        * MODULE STATUS_0100.
    *PROCESS AFTER INPUT.
        * MODULE USER_COMMAND_0100.
    END-OF-SELECTION.
    *& Module STATUS_0100 OUTPUT
        * text
    MODULE status_0100 OUTPUT.
    SET PF-STATUS 'STATUS_0100'. " contains push button "DETAIL"
        * SET TITLEBAR 'xxx'.
    CALL METHOD go_grid->refresh_table_display
        * EXPORTING
        * IS_STABLE =
        * I_SOFT_REFRESH =
        * EXCEPTIONS
        * FINISHED = 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.
    ENDMODULE. " STATUS_0100 OUTPUT
    *& Module USER_COMMAND_0100 INPUT
        * text
    MODULE user_command_0100 INPUT.
    CASE gd_okcode.
    WHEN 'BACK' OR
    'END' OR
    'CANC'.
    SET SCREEN 0. LEAVE SCREEN.
        * Refresh -> pass PAI and PBO where flushing occurs
    WHEN 'REFRESH'.
    WHEN OTHERS.
    ENDCASE.
    CLEAR: gd_okcode.
    ENDMODULE. " USER_COMMAND_0100 INPUT
    *& Form BUILD_FIELDCATALOG
        * text
        * --> p1 text
        * <-- p2 text
    FORM build_fieldcatalog .
        * define local data
    DATA:
    ls_fcat TYPE lvc_s_fcat,
    lt_fcat TYPE lvc_t_fcat.
    REFRESH: gt_fcat.
    CLEAR: lt_fcat.
    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
    EXPORTING
    i_structure_name = 'KNB1'
    CHANGING
    ct_fieldcat = lt_fcat
    EXCEPTIONS
    OTHERS = 99.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    APPEND LINES OF lt_fcat TO gt_fcat.
    CLEAR: lt_fcat.
    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
    EXPORTING
    i_structure_name = 'BAPITGB'
    CHANGING
    ct_fieldcat = lt_fcat
    EXCEPTIONS
    OTHERS = 99.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    READ TABLE lt_fcat INTO ls_fcat
    WITH KEY fieldname = 'LINE'.
    IF ( syst-subrc = 0 ).
    INSERT ls_fcat INTO gt_fcat INDEX 4.
    ENDIF.
    CLEAR: lt_fcat.
    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
    EXPORTING
    i_structure_name = 'ICON'
    CHANGING
    ct_fieldcat = lt_fcat
    EXCEPTIONS
    OTHERS = 99.
    IF sy-subrc 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    READ TABLE lt_fcat INTO ls_fcat
    WITH KEY fieldname = 'NAME'.
    IF ( syst-subrc = 0 ).
    ls_fcat-fieldname = 'BUTTON'.
    ls_fcat-style = cl_gui_alv_grid=>mc_style_button.
    INSERT ls_fcat INTO gt_fcat INDEX 4.
    ENDIF.
    LOOP AT gt_fcat INTO ls_fcat.
    ls_fcat-col_pos = syst-tabix.
    MODIFY gt_fcat FROM ls_fcat INDEX syst-tabix.
    ENDLOOP.
    ENDFORM. " BUILD_FIELDCATALOG[/code]
    Reward If Found Useful.

  • Document Add button - change a UDF so B1 writes value to  tables

    When the user presses the add button on a document, like an invoice, I want to loop through the items matrix and update a UDF on each row, so that Business one will write my values in the UDFs to the line item table (INV1), but I can't figure out how.
    2 problems: The first is all the message boxes that B1 sometimes displays (like document total is zero, or error messages like 'no tax code entered'.  I need to do my work AFTER these all occur, but just BEFORE the document is created.  WHEN do I do this?
    The other problem is that it seems like when I've tried something like this before, My changes to anything on the screen cause B1 to re-fire the events and then cancel the Add.
    I don't want users to change these fields after I've loaded them, and I'd rather not retrieve the document after it's added and then change the values.  I've found similar problems in the forum but none of them speaks exactly to this
    Any ideas?
    Thanks/Gracias/Dankeschoen/Merci/Danyavad/Toa chie

    Hi John,
    Hope you're doing well.
    I suggest the formdataevent.
    There is a example in the sdk.
    This is what I use:
    Public Sub FormDataEvent(ByRef BusinessObjectInfo As SAPbouiCOM.BusinessObjectInfo, ByRef BubbleEvent As Boolean) Handles UIAPP.FormDataEvent
                'Occurs when the application performs the following actions on forms connected to business objects:
                '            Add()
                '            Update()
                '            Delete()
                'Load form data via browse, link button, or find
                'The event provides the unique ID (BusinessObjectInfo.ObjectKey) of the modified business object.
                'You can use the value of this property as an input parameter in the DI API DataBrowser.GetByKeys method to get a DI object.
                Dim form As SAPbouiCOM.Form = UIAPP.Forms.Item(BusinessObjectInfo.FormUID)
                Dim bisObj As SAPbouiCOM.BusinessObject = form.BusinessObject
                Dim uid As String = bisObj.Key
                FormDataEventCommon.FormDataEventLogic(BusinessObjectInfo, BubbleEvent, bisObj, form)
                System.Runtime.InteropServices.Marshal.ReleaseComObject(form)
                System.Runtime.InteropServices.Marshal.ReleaseComObject(bisObj)
                form = Nothing
                bisObj = Nothing
                GC.Collect()
            End Sub
    calls this function.
    Public Function FormDataEventLogic(ByRef BusinessObjectInfo As SAPbouiCOM.BusinessObjectInfo, ByRef BubbleEvent As Boolean, ByRef bisobj As SAPbouiCOM.BusinessObject, ByRef form As SAPbouiCOM.Form) As Boolean
                Dim Test As Integer = form.Mode
                Dim mat As String = ""
                Dim Fld As String = ""
                Dim rep As String = ""
                Dim ColFlag As Boolean = False
                If BusinessObjectInfo.BeforeAction Then
                    Select Case BusinessObjectInfo.EventType
                        Case SAPbouiCOM.BoEventTypes.et_FORM_DATA_ADD
                            Select Case BusinessObjectInfo.Type
                                Case "COMMISSION OBJ UDO"
                                    Dim CommTblClass As New CommAdj_Class(form.UniqueID)
                                    Dim StrLN As String = CommTblClass.GetFieldValue(form.UniqueID, "EMONLN")
                                    If StrLN = "" Then
                                        CommTblClass.Displayerror("Please enter a load number")
                                        BubbleEvent = False
                                    End If
                                    CommTblClass.release()
                            End Select
                    End Select
                Else
                    Select Case BusinessObjectInfo.EventType
                        Case SAPbouiCOM.BoEventTypes.et_FORM_DATA_ADD
                            ' Addnew information for a new document
                            Select Case BusinessObjectInfo.Type
                                Case SAPbobsCOM.BoObjectTypes.oDeliveryNotes
                                Case SAPbobsCOM.BoObjectTypes.oPurchaseDeliveryNotes
                                Case SAPbobsCOM.BoObjectTypes.oOrders
                                Case SAPbobsCOM.BoObjectTypes.oInvoices
                                Case SAPbobsCOM.BoObjectTypes.oCreditNotes
                                Case SAPbobsCOM.BoObjectTypes.oReturns
                                Case SAPbobsCOM.BoObjectTypes.oQuotations
                                Case SAPbobsCOM.BoObjectTypes.oPurchaseInvoices
                                Case SAPbobsCOM.BoObjectTypes.oInventoryGenEntry
                                Case "COMMISSION OBJ UDO"
                            End Select
                        Case SAPbouiCOM.BoEventTypes.et_FORM_DATA_UPDATE
                            ' Update exisitng Document
                            Select Case BusinessObjectInfo.Type
                                Case SAPbobsCOM.BoObjectTypes.oDeliveryNotes
                                Case SAPbobsCOM.BoObjectTypes.oPurchaseDeliveryNotes
                                Case SAPbobsCOM.BoObjectTypes.oInvoices
                                Case SAPbobsCOM.BoObjectTypes.oCreditNotes
                                Case SAPbobsCOM.BoObjectTypes.oReturns
                                Case SAPbobsCOM.BoObjectTypes.oOrders
                                Case SAPbobsCOM.BoObjectTypes.oQuotations
                                Case SAPbobsCOM.BoObjectTypes.oInventoryGenEntry
                                Case "COMMISSION OBJ UDO"
                            End Select
                        Case BoEventTypes.et_FORM_DATA_LOAD
                            Select Case BusinessObjectInfo.Type
                                Case SAPbobsCOM.BoObjectTypes.oDeliveryNotes
                                Case SAPbobsCOM.BoObjectTypes.oPurchaseDeliveryNotes
                                Case SAPbobsCOM.BoObjectTypes.oInvoices
                                Case SAPbobsCOM.BoObjectTypes.oCreditNotes
                                Case SAPbobsCOM.BoObjectTypes.oReturns
                                Case SAPbobsCOM.BoObjectTypes.oOrders
                                Case SAPbobsCOM.BoObjectTypes.oQuotations
                            End Select
                    End Select
                End If
                Return True
            End Function

  • Service Selection in SES

    Hi,
    While creating SES, service selection is called to select serives from Work Order, Contract etc. But, at times or for some Work Orders, the radio button option for Service Selection from Contract is missing. Any explanations, please ?
    Thanks in advance,
    Sheeja.

    Hi,
    A contract Limit can be maintained under Overall Limit in purchase Order.
    This ensures some restrictions on the unplanned activity (the reason why limits are maintained). If only Contract Limit is maintained it would ensure that the unplanned activity would only be from the contract which exist between the Buyer and the Vendor (the same vendor for whom the current Purchase Order is made).
    If such Contract Limit is maintained, it would be available as an option during Service Entry Sheet. (the Contract Line item number would be in Display mode).
    The contract would be called off by the same amount as it is enetered in the Service Entry Sheet.
    Another interesting thing to notice here is the Value tab (Vals) tab in Service Entry Sheet. There are 4 fields. Two of them is Unplanned Portion and Portion without Contract. Just try entering two unplanned activity, one with reference to the contract limit and second any other unplanned activity. See the difference for yourself!
    Regards,
    Ashu

  • CF10 HF7 shows Win2k3 PerfMon Counters but Add button disabled

    hi there
    in another topic I am looking for a cpu load prob where the cpu hits the ceiling and remains there.
    So i wanted to use Windows' PerfMon to do a long time log to get a timestamp to corelate with the server logs ...
    However, PerfMon shows the CF10 and its options, but the Add button for all options or select ones is disabled (grayed out). However, PerfMon does show their explanations.
    In CF, we have set Server Monitoring on, except for memory, because memory is not an issue.
    I checked all related msgs here, but no one has this behavior i am facing ...
    thanks for hints
    Martin

    hi there
    in another topic I am looking for a cpu load prob where the cpu hits the ceiling and remains there.
    So i wanted to use Windows' PerfMon to do a long time log to get a timestamp to corelate with the server logs ...
    However, PerfMon shows the CF10 and its options, but the Add button for all options or select ones is disabled (grayed out). However, PerfMon does show their explanations.
    In CF, we have set Server Monitoring on, except for memory, because memory is not an issue.
    I checked all related msgs here, but no one has this behavior i am facing ...
    thanks for hints
    Martin

  • Adobe reader closes automatically while table entry is added by add button

    Hi Team,
    I am new in adobe form. I have developed an adobe interactive form using livecycle designer integrated with SAP. My form has a table and under that there is an add button. When the form is opened in adobe reader and  add button is clicked, I have written a javascript code which appends a new entry in the table above. Everything is fine upto here.
    Now when I keep on clicking the add button, new entries are created and table grows. But when the table populates the current page and grows to populate the next page, suddenly the adobe form closes. I think there is an inconsistancy happening as my configuration for the table or the subform wrapping the table and the add button is conflicting.
    Could you guys give me some advise on this. I can provide screenshots or the adobe document on request.
    Thanks,
    Mainak

    Hi,
    I would say you are definitely coming up against memory restrictions. There are a couple of posts by John Brinkman that I would recommend.
    First I would look at why the form is 6Mb and see if you can reduce this down. For example, select fonts that are already in Reader (like Myriad Pro) and then deselect Embed Fonts in the File > Form Properties > Save Options. Also do not embed images into the form. See:
    http://blogs.adobe.com/formfeed/2010/02/big_and_complex_forms.html.
    http://blogs.adobe.com/formfeed/2010/09/xdp-size-matters.html.
    http://blogs.adobe.com/formfeed/2009/11/linked_vs_embedded_template_im.html.
    Next look at your script. You mention loops, so check is your script efficient. For example, use xfa.resolveNodes() once outside of the loop, instead of xfa.resolveNode() inside the loop. Make sure that variables are declared. See:
    http://blogs.adobe.com/formfeed/2011/10/script-performance-exercise.html.
    http://assure.ly/kUP02y.
    Also check for any script that you have in events that fire frequently, like layout:ready event and comment these out. See.
    http://assure.ly/nB0Bvz.
    The dataset seems very large at 2Mb. Does this include image data? It may be that the user is interacting with the form, while it is still trying to process the XML and the loops.
    Hope that helps,
    Niall

  • Start Developing iOS Apps Today tutorial Edit button instead of Add button

    In the Start Developing iOS Apps Today tutorial, I followed the instructions but after adding data (the final part), instead of seeing the + symbol, which should take me to the add item view, I saw the word edit, which took me to a screen where I could delete items.
    The instructions say:
    The actual code for viewDidLoad includes some additional lines—inserted by Xcode when it created XYZListViewController—that are commented out. Feel free to leave them in.
    Referring to the following code in XYZToDoListTableViewController:
    // Uncomment the following line to preserve selection between presentations.
    self.clearsSelectionOnViewWillAppear = NO; 
    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    self.navigationItem.rightBarButtonItem = self.editButtonItem;
    As it turns out, the bottom line overrides the add button with an edit button. The good news is that by changing rightBarButtonItem to leftBarButtonItem, the add symbol reappears, and the Edit button is moved to the other side.

    make sure u wrote the method in XYZToDoListViewController.m rather than XYZAddToDoItemViewController.m

Maybe you are looking for