Module-Pool application toolbar

Respected SAP guru,
  I like to know how Application Toolbar button should be disabled or enabled in Module-Pool Programming plz, explain with example.
Sincerly,
sandeep

As mentioned in the Thread, use the Syntax
SET Pf-STATUS 'STATUS' excluding itab
Example:
data: BEGIN OF MTAB_UCOMM_EXCLUDE OCCURS 0,
        VALUE(4) TYPE C,
      END OF MTAB_UCOMM.
AT USER-COMMAND.
  PERFORM SET_PF_STATUS. ...
FORM SET_PF_STATUS *
Set up the menus/buttons for the report *
FORM SET_PF_STATUS.
  CLEAR MTAB_UCOMM_EXCLUDE.
  REFRESH MTAB_UCOMM_EXCLUDE.
  CASE MI_CURRENT_PAGE.
    WHEN 1.
*-- Do not want any pushbuttons that point to items to the right
*-- since the list is at its rightmost position
    MTAB_UCOMM_EXCLUDE-UCOMM = 'FRST'.
    APPEND MTAB_UCOMM_EXCLUDE.
    MTAB_UCOMM_EXCLUDE-UCOMM = 'PREV'.
    APPEND MTAB_UCOMM_EXCLUDE.
  WHEN MI_TOTAL_PAGES.
*-- Do not want any pushbuttons that point to items to the left
*-- since the list is at its leftmost position
    MTAB_UCOMM_EXCLUDE-UCOMM = 'LAST'.
    APPEND MTAB_UCOMM_EXCLUDE.
    MTAB_UCOMM_EXCLUDE-UCOMM = 'NEXT'.
    APPEND MTAB_UCOMM_EXCLUDE.
  WHEN OTHERS.
*-- Want all pushbuttons to appear on any other page
  ENDCASE.
  SET PF-STATUS 'MAIN' EXCLUDING MTAB_UCOMM_EXCLUDE.
ENDFORM. " SET_PF_STATUS
Hope this helps
Vinodh Balakrishnan

Similar Messages

  • Expose module pool application to ITS with HTML Images

    I am facing issue while exposing my module pool application to ITS.
    I have splitting container and HTML images in Tab strip. When I expose same to ITS, Its not displaying any HTML image tab however its displaying rest of screen element. I have to show the screen in ITS as it is in module pool. help me to resolve if anyone faced same kind of issue.

    As mentioned in the Thread, use the Syntax
    SET Pf-STATUS 'STATUS' excluding itab
    Example:
    data: BEGIN OF MTAB_UCOMM_EXCLUDE OCCURS 0,
            VALUE(4) TYPE C,
          END OF MTAB_UCOMM.
    AT USER-COMMAND.
      PERFORM SET_PF_STATUS. ...
    FORM SET_PF_STATUS *
    Set up the menus/buttons for the report *
    FORM SET_PF_STATUS.
      CLEAR MTAB_UCOMM_EXCLUDE.
      REFRESH MTAB_UCOMM_EXCLUDE.
      CASE MI_CURRENT_PAGE.
        WHEN 1.
    *-- Do not want any pushbuttons that point to items to the right
    *-- since the list is at its rightmost position
        MTAB_UCOMM_EXCLUDE-UCOMM = 'FRST'.
        APPEND MTAB_UCOMM_EXCLUDE.
        MTAB_UCOMM_EXCLUDE-UCOMM = 'PREV'.
        APPEND MTAB_UCOMM_EXCLUDE.
      WHEN MI_TOTAL_PAGES.
    *-- Do not want any pushbuttons that point to items to the left
    *-- since the list is at its leftmost position
        MTAB_UCOMM_EXCLUDE-UCOMM = 'LAST'.
        APPEND MTAB_UCOMM_EXCLUDE.
        MTAB_UCOMM_EXCLUDE-UCOMM = 'NEXT'.
        APPEND MTAB_UCOMM_EXCLUDE.
      WHEN OTHERS.
    *-- Want all pushbuttons to appear on any other page
      ENDCASE.
      SET PF-STATUS 'MAIN' EXCLUDING MTAB_UCOMM_EXCLUDE.
    ENDFORM. " SET_PF_STATUS
    Hope this helps
    Vinodh Balakrishnan

  • Table control in Module pool Program

    Hi All,
    here i have a small requirement on module pool application.
    i will explain my scenario more in detail.Here i have one delivery number.if i give this delivery number and click on capture it will capture all the materials for that delivery numeber in a table control.here the material may be one or more than one.we can select table control records.so if the material is more than one user has to select only one material once.if he will try to select the second material we want to display an error message will display.how to handle this requirement.
    please give me suggestions regarding coding also.
    Thanks in advance,
    swami
    Edited by: swaminath kamasani on Oct 1, 2008 11:50 PM

    Do you need to know how to display an error message if multiple lines are selected or the coding for the entire requirnment??
    For error message part:
    Dont set the Table control attributes - multiple selection.

  • Module Pool - Refresh Screen Fields Progmatically

    Hello All!
    I have a slightly frustrating problem. I have built a Module Pool application to display shipments and their underlying deliveries (various information from each).
    I have structured the application as follows
    An object to store the Data. This object has an internal table of Shipments and an internal table of Deliveries. The tables are related by TKNUM. When the application needs to display a shipment, it requests the shipment's information and the underlying deliveries information from the object. The object is structured to move through the shipments with methods like "GetFirstHeader", "GetPrevHeader", "GetNextHeader", "GetLastHeader". These return the data for the application to use.
    The Deliveries are displayed in a CL_SALV_TABLE, the Shipment information is displayed in textbox type fields above the table.
    The form for display has buttons to trigger the "Move" methods of the data object. This currently will retrieve the new data from the object, modify the fields and the alv grid and then go back through PBO (I'm assuming because a button was pressed). This works well. It will bring in the new data and refresh the screen everything is fine.
    I also have a button to print the currently displayed Shipment and Deliveries. This Print is handled through a SmartForm.
    The area that is giving me troubles is my other button. Since the Application can store a range of shipments at once, I have a "Print All" button. This button moves to the first shipment in the data object,
    calls the Print Form, then moves through the rest of the data object calling the Print Form for each Shipment Displayed. This happens from one button push. The problem I am running into is that the screen does not refresh when the data changes during this movement through the data objects. I believe this is due to the PBO module not being triggered yet. My question is, is there a way to refresh the screen progmatically?
    I have tried SET USER-COMMAND to move through the data, instead of calling the "GetFirstHeader" and "GetNextHeader" method directly, but that has some unpredictable behavior (works in debug, not in regular execution). I have also tried a LEAVE SCREEN statement, as that would trigger the PBO, since the Next Screen is set to the same screen number, but that kills execution of that block of code at the LEAVE SCREEN STATEMENT.
    I am including my code from my PAI module that runs this processing, hopefully that will help.
    << unformatable code removed >>
    Moderator message - Please go through your code and post only what is relevant to your question.
    Edited by: Rob Burbank on Apr 28, 2009 1:44 PM

    MODULE USER_COMMAND_9999 INPUT .
      CASE OK_CODE .
        WHEN 'NEXT' .
          PERFORM Next .
          PERFORM GetGridData .
          PERFORM RefreshALV .
        WHEN 'PREV' .
          PERFORM Prev .
          PERFORM GetGridData .
          PERFORM RefreshALV .
        WHEN 'EXIT' .
          SET SCREEN 0 .
        WHEN 'PRNT' .
          PERFORM Print .
        WHEN 'PRNA' .
          PERFORM PrintAll .
        WHEN 'BACK' .
          PERFORM HideInitials .
          SET SCREEN '1000' .
        WHEN 'CANC' .
          SET SCREEN '1000' .
        WHEN 'FRST' .
          PERFORM First .
          PERFORM GetGridData .
          PERFORM RefreshALV .
        WHEN 'LAST' .
          PERFORM Last .
          PERFORM GetGridData .
          PERFORM RefreshALV .
        WHEN 'CFAX' .
          PERFORM Show6000 .
      ENDCASE .
    ENDMODULE .
    FORM PrintAll .
      DATA sPromptB TYPE STRING .
      DATA sPromptM TYPE STRING .
      DATA sPromptE TYPE STRING .
      DATA sPromptF TYPE STRING .
      DATA cAnswer  TYPE C LENGTH 1 .
      IF NOT oLTend->isEmpty( ) = 1 .
        sPromptB = text-995 .
        sPromptM = ITOTSHIPNUM .
        sPromptE = text-994 .
        CONCATENATE sPromptB sPromptM sPromptE INTO sPromptF SEPARATED BY SPACE .
        CALL FUNCTION 'POPUP_TO_CONFIRM'
          EXPORTING
            TITLEBAR                    = 'Print All?'
            TEXT_QUESTION               = sPromptF
            DISPLAY_CANCEL_BUTTON       = ' '
          IMPORTING
            ANSWER                      = cAnswer
          EXCEPTIONS
            TEXT_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 cAnswer = '1' .
          PERFORM First .
          PERFORM GetGridData .
          PERFORM RefreshALV .
          " >>> Need Screen Refreshed right here
          PERFORM Print .
          DO .
            PERFORM Next .
            PERFORM GetGridData .
            PERFORM RefreshALV .
            " >>> Need Screen Refreshed right here
            PERFORM Print .
            IF oLTend->GetIndex( ) = oLTend->GetCount( ) .
              EXIT .
            ENDIF .
          ENDDO .
        ENDIF .
      ENDIF .
    ENDFORM .
    That is the general flow. Hope that helps, if more info is needed, let me know.

  • Module pool subscreen issue

    Hi
    I my module pool application, I have a tab strip having 4 tabs designed in local scrolling (PAI). But after entering some values on tab 1 , when I navigate to tab 2, the gui components of tab1 also appear on tab2  and screen becomes messed up.
    How to correct it?
    Regards
    Vishal Kapoor

    Hi,
    Just check if u are using same subscreen area and calling the same subscreen in all of them..
    If u use different subscreen area for each tab then try this:
    Pbo.
    Call subscreen subarea1
    Including sy-cprog ‘subscno’.
    Call subscreen subarea2
    Including sy-cprog ‘subscno’.
    Call subscreen subarea3
    Including sy-cprog ‘subscno’.
    Pai.
    Call subscreen subarea1.
    Call subscreen subarea2.
    Call subscreen subarea3.
    If u are using same subscreen area for all tabs then try this :
    Data dynnr type sy-dynnr.
    Pbo.
    Case my_tab-activetab.
    When ‘fc1’.
    Dynnr = ‘subscno1’.
    When ‘fc2’.
    Dynnr = ‘subscno2’.
    When ‘fc3’.
    Dynnr = ‘subscno3’.
    Endcase.
    Pai.
    Case ok_code.
    When ‘fc1’ or ‘fc2’ or ‘fc3’.
    My_tab-active tab = ok_code.
    Endcase.
    hope it helps.
    reward if useful.

  • How to configure Application module pooling?

    I want to know wheather bc4j container itself manages Application module pooling if yes then please tell me is there any file to set parameters for congiguration like one which we have for apache web server.
    If no then please let me know how to create applicatiom module pooling.
    Thanks in advance.

    Application module pooling is configurable through an application module configuration. In order to edit an application module configuration you may right click an application module and select Configurations...
    The BC4J data web beans and the BC4J JSP datatags are both application pool clients. The BC4J documentation includes descriptions of the application pool properties. The documentation also includes a code sample which illustrates how to write your own pool client.

  • How to give the application server file path in the module pool programming

    Hi,
         Could somebody help me how to provide the application server file path in module pool programming once the logo is uploaded to sap system.
      For eg I have imported a logo name ‘owens’ into sap system by using transaction ‘se78’; now I need to call the path in the below url,
    if container2 is initial.
    CREATE OBJECT CONTAINER2
      EXPORTING
        CONTAINER_NAME              = 'PICTURE_CONTAINER2'.
    CREATE OBJECT PICTURE2
      EXPORTING
        PARENT = CONTAINER2.
    CALL METHOD PICTURE2->SET_DISPLAY_MODE
      EXPORTING
        DISPLAY_MODE = CL_GUI_PICTURE=>display_mode_fit_center
      EXCEPTIONS
        ERROR        = 1.
    CALL METHOD PICTURE2->LOAD_PICTURE_FROM_URL
      EXPORTING
        URL    = " ? "
      EXCEPTIONS
        ERROR  = 1
        Others = 2.
    endif.
    Thanks in advance
    Deepu

    hi Deepu,
    Use FM '/SAPDMC/LSM_F4_FRONTEND_FILE' for fetching the data from the application server path/presentation server path
    Regards,
    Santosh

  • Table QBE-Filter BUG in combination with Application Module Pooling ?

    Hi,
    i use JDEVADF_11.1.1.1.0_GENERIC_090615.0017.5407, Java 1.6.0_14, ADF BC and ADF Faces.
    I have one View Object, one Page with a panelCollection and a table with option filtering (create via drag-and-drop from datacontrol).
    When I disable the application module pooling on the AM configuration and run the application, i can execute the query-by-example filter, but when I delete the filterCriteria and press enter (requerry for select all) the table shows the old data.
    Image for setting on application module:
    http://img265.imageshack.us/img265/1374/filterdoesnotwork1.png
    Image for execute querry and requerry for "all rows" (deleted filterCriteria)
    http://img140.imageshack.us/img140/1963/filterdoesnotwork2.png
    When I enable application module pooling all works fine. Is this a issue?
    kind regards

    Hi Frank,
    if I filter for employees which firstname starts with "D" and then for employees with "F" --> i see "No data to display.".
    So uncheck "Enable Application Module Pooling" on application module doesn't work with QBE-Filter ?
    I can send a testcase but it is so simple you can create it with jdeveloper in 2 minutes ;)
    Martin

  • Guidelines for setting Application Module Pool Size Parameters?

    Are there guidelines for setting the application module pool size parameters, such as initial pool size, maximum pool size, etc., based on the expected number of users or other factors? I've read the developer guide sections (ch 28-29), but still don't have a good feel for how to correctly set the optimal values for the pool configuration parameters? Even more importanty, how do I monitor the pool's efficiency during runtime to determine if the pooling parameters are configured correctly?
    This will be critical to performance and scalability, so I'm looking for a way to get some visibility into how the pooling is working during production operation to assess whether there are bottlenecks/constraints/ineffeciencies?
    Note I am using Tomcat as the java runtime container; ADF BC / JSF jdev 10.1.3.1
    Thanks in advance and Merry Christmas!

    KUBA - were you able to resolve these issues and if so are there any lessons learned you can share?
    I'm hoping someone from the ADF team can answer our original question including guidelines for setting pool parameters and how to monitor the pool's performance while running in production.
    thanks

  • BC4J Application Module Pooling for JClient App

    Helo,
    i wonder why all documentation about bc4j application module pooling available is for Web app ? (jsp) . I'm creating swing JClient app and i need some doc about how the application module pooling works in this kind of application.
    anybody know where can i get those docs ?
    Need help and Thank you,
    Ricky H.P.

    Connection pooling can be achieved when a JVM instance manages the pool, in 3tiers the Java App. Server has that task.
    If you are 2tiers that means that you are communicating with the database through JDBC.
    When a user launches your JClient app in fact he lauches his own JVM instance so I don't how he could share a pool with other users.
    In your case you have at most 2 open transactions per user.
    You can achieve that by sharing a same binding context with n forms composed of m panels.
    Let's say:
    1 main form
    connection 1: forms a,b,c
    connection 2: forms x,y,z
    In your main form your open your 2 connections and share them.
    You can achieve that by:
    1) in our main form, initialize 2 binding containers
    Example of one:
    DCBindingContainer bc1 = this.createBindingContainer("package name","model name");
    private DCBindingContainer createBindingContainer(String packageName, String panelModelName)
    StringBuffer sb = new StringBuffer(packageName);
    sb.append(ViewConstants.STRING_DOT);
    sb.append(panelModelName);
    DCBindingContainerDef bcdef = DCBindingContainerDef.findDefObject(sb.toString()); //NOTE THE NAME.
    if (bcdef == null)
    throw new JboException("System error, "+getClass().getName()+".createBindingContainer, DCBindingContainerDef: "+sb.toString()+" not found");
    DCBindingContainer bc = bcdef.createBindingContainer(panelBinding.getBindingContext());
    bc.setName(panelModelName);
    panelBinding.getBindingContext().put(panelModelName, bc);
    return bc;
    2) Before that the jbInit method gets called in the called form, set the binding context:
    form1 = new Form1(...);
    form1.setBindingContainer(bc1) ;
    Example of methods in form 1 and form 2:
    public void setBindingContainer(DCBindingContainer ctr)
    this.panelBinding = (JUPanelBinding)ctr;
    setBindingContext(ctr.getBindingContext());
    public void setBindingContext(BindingContext bindCtx)
    if (panelBinding.getPanel() == null)
    panelBinding = panelBinding.setup(bindCtx, this);
    registerProjectGlobalVariables(bindCtx);
    panelBinding.refreshControl();
    try
    System.out.println("Form setBindingContext calling jbInit");
    jbInit();
    panelBinding.refreshControl();
    // FL added
    isBindingContextSet = true;
    System.out.println("Form isBindingContextSet true");
    catch(Exception ex)
    System.out.println("Form setBindingContext exception caught");
    panelBinding.reportException(ex);
    Regards
    Fred

  • Use of application module pool and ADF Busines Components

    Hi to all;
    Lets suppose an web application with about 10 CRUD forms and 15 to 20 reports or forms just to query and show data;
    That's clear to me, all the advantages of using App modules pool.
    But for that reports ..... Just an Read only and Forward Only data ?
    I was wondering, if it will be more effective and lightweight if we just take an JNDI JDBC connection query data and show it.
    This imaginary application will make use of application module pool to provide that 10 CRUD web forms and in other hand, will have for reports,JNDI data sources;
    What are your opinion about having this two architectural approach working together in one application ?
    Very thanks;
    Marcos Ortega
    Brazil;

    Hi Deepak;
    BC4J in my opinion is great and i am proud to share this opinion with all of you;
    As a meter of fact, i post this thread to help me better understand BC4J architecture.
    I think that my doubt main point is ...
    Are application modules pool's life cycle an extra work , when the job is just to read and show data ?
    Perhaps, an document about statefull and/or stateless application service release, help me;
    IMHO;
    cached data most of the time must to be discarted for reports, always we want to query database directly, View's object ClearCache() method would be called to reports.
    I think that it's different, when we are talking about sequent requests when we need to span the session, views and entities states.
    Forwards Thanks;

  • Small Dash board Application thru module-pool

    Hi,
    Can anybody provide ideas to make a small dashboard type application.
    Can this type of application be created on module-pool or just selection-screen in se38 will do job.
    1. screen 1 has 10 pushbuttons (btn1, btn2....)
    2. when  ok_code of btn1 will call screen 2
    3.  screen 2 has 10 pushbutton (btn1,btn 2..)
    4. When Ok_code of btn1 will call ztcode.
    Just need suggestions or directions to start my work ... how many ways it could be done.
    Many thanks

    Hi,
    yes when ever we press enter key then the cusor will trigger PAI event for every action. so according to your requirement use function code and wirte required code (as per your requrement) in PAI event.
    check below example.
    Example:
    PAI.
    Module action.
    Module action.
    case sy-ucomm.
    when INSR.
    write code.
    when Other.
    No code.
    Endcase.
    Endmodule.
    Ram.

  • Problems with the Application Module Pool

    Hello,
    We have an Oracle ADF Application working in a production enviroment. The application module pool seems to work properly during the first days, but after a few days, the application module pool seems not to work properly. We start to get some errors like JBO-30003: the application pool failed to checkout an application module.
    We have included in the application a DumpPoolStatistics servlet, and what we have observed is:
    1. When the application is restarted in the server, the "total number of application modules in the pool" is equal to "maximum number of application modules in the pool".
    2. Several days after, the "total number of application modules in the pool" starts to decrease.
    We don't know why the "total number of application modules in the pool" starts to decrease, but we think this is the reason of the errors. In fact, "total number of application modules in the pool" is lower than the "jbo.ampool.minavailablesize" parameter value.
    The management of the application module pool is not a task of the developer, so we don't undestand where is the problem.
    We have configured the application module with the next parameters:
    <jbo.ampool.initpoolsize>10</jbo.ampool.initpoolsize>
    <jbo.ampool.maxpoolsize>100</jbo.ampool.maxpoolsize>
    <jbo.ampool.minavailablesize>10</jbo.ampool.minavailablesize>
    <jbo.recyclethreshold>15</jbo.recyclethreshold>
    <jbo.ampool.maxinactiveage>600000</jbo.ampool.minavailablesize>
    <jbo.ampool.monitorsleepinterval>600000</jbo.ampool.monitorsleepinterval>
    <jbo.initpoolsize>15</jbo.initpoolsize>
    <jbo.maxpoolsize>30</jbo.maxpoolsize>
    <jbo.poolminavailablesize>15</jbo.poolminavailablesize>
    <jbo.poolmaxavailablesize>25</jbo.poolmaxavailablesize>
    <jbo.poolmonitorsleepinterval>30000</jbo.poolmonitorsleepinterval>
    <jbo.poolmaxinactiveage>30000</jbo.poolmaxinactiveage>
    <jbo.dofailover>true</jbo.dofailover>
    <jbo.ampool.resetnontransactionalstate>true</jbo.ampool.resetnontransactionalstate>
    <jbo.ampool.doampooling>true</jbo.ampool.doampooling>
    We are working with JDeveloper 10.1.3.4.
    Thanks in advance!

    Sorry, you are right, the number of application modules created whe the application starts is given by the jbo.ampool.initpoolsize. But what it is sure is that the "total number of application modules in the pool" starts to decrease. The number of days is not always the same. But we have to restart the application occasionally.
    I think the time parameters are ok, I would like for example 10 minutes for pool resoruce cleanup, and 10 minutes for considering an inactive AM instance in the pool as a candidate for removal during the next resource cleanup.
    <jbo.ampool.monitorsleepinterval>600000</jbo.ampool.monitorsleepinterval> --> 10 minutes
    <jbo.ampool.maxinactiveage>600000</jbo.ampool.minavailablesize> --> 10 minutes
    Is this right?

  • Application module pool

    does anyone have any good links or docs to get a better understanding of how Application Module Pool works in Ebusiness 11i. For example profile option FND:AM Pool set to enabled , what does it actually do?
    thanks.
    Raj

    If you have a app module running on that server, then you can find a link in the middle page, it is a table. Click the link in the table, then you can find more.

  • Monitor  Application Module Pool

    Hi i am tunning my ADF app parameters, how can i monitor my Application Module Pool (Like live instances and so on) so i can make adjustments on its values?

    See example #83 on my blog:
    http://radio.weblogs.com/0118231/stories/2004/09/23/notYetDocumentedAdfSampleApplications.html

Maybe you are looking for

  • How to know which Action has been done by a Dialog in ControlsFX?

    Hello! I am using ControlsFX for the "Dialog" class. This class lets you build a dialog with "Node" Content. I set the content to a GridPane and and had wanted to set up a custom Action. There are premade Actions like "OK" "CANCEL "YES" "NO" "CLOSE"

  • Double Band Wireless adapter

    Guys., Do I need a Double Band Wireless adapter in order to see or connect to 5GHz broadcasting? Cause i have a WRT610n but I,m not able to see 5ghZ broadcasting, only 2.4ghz, and the wireless card in my laptop is internal and is only g/and auto.....

  • 8.02 killed all my apps, DONT UPGRADE!!!

    Go I don't know what the hell has happened. I upgraded to 8.02 of Dreamweaver and now any for with a update or insert record item on it is destroyed. If I open a page that container a form to insert into a database, make any edit and save it, it trie

  • PARTNER BANK TYPE PROBLEM

    Hi All, We all know that for maintaing 'PARTNER BANK TYPE' in 'Vendor Master Record' the 'Country, Bank Key & Account Number' is 'Primary Key' so we cannot make 1 to Many relation for example- Country         BankKey      Account Number            Pa

  • Mountain Lion Notes has no boolean search?

    Mountain Lion is an early Christmas present!  I really apprteciate the upgrade.  BUT, Notes, are a very big disappointment.  It is now at times slow as molasses, and reasonably fast at others, and that's on the Mac! It appears to be using the iOS eng