How to-Transaction across method calls

With reference to the article
"http://otn.oracle.com/tech/java/oc4j/htdocs/how-to-ejb-tx-X-Calls.html", the downloadable example is not available.
Is it possible to recover it ?
Thank yoy in advance

Can't you specify "Requires" in your deployment descriptor for all of these methods involved in the transaction? This should enable the container to manage it for you.

Similar Messages

  • How to restrict repeated method call?

    I have a method which fetches data from DB and returns a map.
    public Map myDataList(){
    returns mymap;
    I call this method in the body of another method.
    public void myCall(){
    myDatalist();
    now i want myDatalist() method to be called only once even if myCall() is executed multiple times.

    Kapil wrote:
    but if i call the method in a static block will it give what i want?
    static{ 
    }I'm not quite sure why you're so fixated on only calling a method once. What's wrong with:
    static {
       // some set-up code
       while (moreRowsToFetch) {
          fetchAnotherRow();
    }But Kayaman's quite right. Explain what you want properly.
    Winston

  • Transactional business method is called 4 times on failure

    Hi I'm experiencing a strange situation. does anybody have an idea what is wrong or just going on?.
    There is a stateful session bean which has a transactional business method called 'apply' to delegate insert/update requests to Toplink which will persist data in database. 'trans-attribute' is defined 'Required'. Toplink registers with the OC4J's external transaction.
    when there is an error in commiting the data apply method is called 3 more times (4 times in total).
    any idea????
    thanks
    -Erdem.

    Hi Erdem,
    This question has been discussed previously on this forum.
    [However, when I searched the forum archives to make sure, I couldn't find it -- but I _know_ I had a similar problem _and_ found the answer while monitoring this forum!]
    In any case, I think the behaviour that you are seeing is caused by the "max-tx-retries" attribute in the "orion-ejb-jar.xml" file. Here is a resource with some more details:
    http://kb.atlassian.com/content/orion/docs/deployment/orion-ejb-jar.xml.html
    You may also find relevant information at one (or more) of the following Web sites (if you haven't already looked at them):
    http://technet.oracle.com
    http://tahiti.oracle.com
    http://www.orionserver.com
    http://www.orionsupport.com
    http://www.elephantwalker.com
    Hope this helps.
    Good Luck,
    Avi.

  • How can I refresh a calling page on return from a TF activity ?

    Hi,
    I have a (sounds easy) case where a view activity invokes a BTW with fragments. The called BTF has been declared with isolated data control scope. Inside the BTF some updates happen and when the BTF returns the calling view should display the modified data. The BTF should not be opened as a dialog and the above take place inside a region. There are examples in the Internet for how to implement such case but only calling a taskflow with pages from a dialog.
    I tried creating first the Taskflow binding definition [19.10.1 How to Associate a Page Definition File with a Task Flow Activity|http://docs.oracle.com/cd/E35521_01/web.111230/e16182/taskflows_activities.htm#sthref539] , then I set the related operations (Execute, setCurrentRowWithKey, ...) in the Page Definition and invoke the operations inside the “After Listener” Listener (<after-listener>) of the taskflow activity but the binding context is not accessible inside the listener, I get NPE accessing the binding.
    After some tests I have found that I can call the Operations using “#data.taskflowdefinition..” but I afraid using this technique because of so many papers stating that this is a bad practice.
    Additionally I tested using an invokeAction in the calling page definition page and it works but I prefer “refreshing” the model from the activity (there are many pages calling the same activity).
    I am wondering if there is a more elegant solution that I haven’t seen yet.
    Thanks for any ideas,
    Yiannis
    Edited by: Tses on Mar 8, 2013 11:15 PM

    Hi Timo and thank you for your reply,
    As far as I know any method executed in the BTF has no effect in the calling page because of the isolated data control scope.
    Consider the following layout of a very simple TF diagram. The BTF has "Share data controls with calling task flow" unchecked and "Always begin new transaction"
    View --> Method Call --> BTF
    Now imagine that a user navigates from the View to the BTF, make updates and finally commits the transaction from a taskflow return activity. The updates are executed inside the "private" BTF's data control scope because of the BTF settings.
    Returning to the calling View the user sees stale data from the Data Control of the View, until he re-queries the model.
    ADF supports execution of code during the call of the BTF (through Method Call) and also sending and returning parameters from the View to the BTF.
    Conversely on return from the BTF there is no handler for executing code (something like "Return Method Call") in order to refresh (e.g. re-query and set current row) the View exploiting the return parameters.
    The "After Listener" in the taskflow call activity has not access to the bindings context. Using #{data.bindingTFXXX} I guess that has a risk in a high availability environment for NPE where the http call to the BTF might be processed in a different server than the returning http call so the #{data.bindingTFXXX} might not exists.
    The other solution I found using invokeAction with RefreshCondition depends on the returning values of the BTF, bloats the View with Bindings that I would prefer to be in a central place.
    Am i missing something in the whole flow above ?
    Yiannis

  • How to handle the call transaction in method of a custom business object

    Hello all,
    There is a custom report " RPTCORAPP" for approving leaves . As per my requirement i have develop a copy of leave workflow and for approval process i have call  "RPTCORAPP" in Custom method of custom object. i have made a transaction for this custom report for approving attendances. I am calling this method though call transaction statement within method.
    Problem: while approving the attendance workitem is not disappearing from the portal. Problem is due to call transaction statement.
                   once workitem come to the user, user click on it. control goes to the report, which display all the leave to approve on
                   the portal.
                   If after approving/ rejecting attendance user close the screen.workflow remain in the "process" status.Control wont come  back after call transaction statement in the method.
                 At the same time if user clicks on back button inspite of closing the screen. it is working fine. workitem disappears from the portal.
    How to handle the scenarion. if after approving/rejecting, i want the control to come back to the NEXT STATEMENT after call transactionstatement in my method.
    Please help it out........:)

    Hi swami,
    thanks for reply. but i am not using BDC in my method. iam just calling a custom transaction thriugh statement
    Call transaction 'ZHR_APPROVE_CLINOUT'. This transaction directly run the report RPTCORAPP and display all the request.

  • Using the transaction launcher to call a BOR method to display a PDF

    Hello gurus,
    I have created a PDF icon and an onclick action to open a pdf, that displays on every row of an assignment block in the actions column, but I do not know the technical process to determine how to get a PDF from the IXOS system from the line selected. (even if I know it depends on an ID attribute of that assignment block) I want to to call a transaction launcher with the url for the pdf in the IXOS that has an ID that identifies which line in the assignment block the user has clicked the pdf icon for (does that make sense?)
    In CRM 4, in the collection factsheet assignment block, the link was coded into an XSLT which is then displayed in the GUI and you would have a clickable link for a pdf file in a row in a table. That link would be as follows:
             <xsl:variable name="ev_key">SAPEVENT:?OBJTYPE=<xsl:value-of select="attributes/OBJTYPE"/>&amp;OBJKEY=<xsl:value-of select="@KEY"/>&amp;LOGSYS=<xsl:value-of select="attributes/LOGSYS"/></xsl:variable>
                 <a href="{$ev_key}"></a>
    This will get the file in IXOS and display it, in CRM 4. In CRM 7, the link is an icon in every line of an assignment block.
    Here are some questions I have now for the functional side in the meantime:
    1) Can we fetch the PDF in IXOS for each line of an assignment block and have it open? If so, how? Transaction launcher, function modules (like ARCHIVOBJECT_DISPLAY) in the OPTA package? (the package for all IXOS related function modules..)
    2) Which URL should I call with the transaction launcher? a URL link to the PDF on the IXOS system?? or sapevent:xxx?
    3) Do we have to configure a transaction in the IMG to be launched with the attributes listed there? Do we have to link it to any classes/ objects?
    4) Do we have to have the code to the logical link dynamically to call the right PDF for each table line? Is it right to put this code in my event handler?? Usually transaction launchers are just in the nav bar.....
    5) Are there any existing examples of this or a similar functionality/ logic that I could refer to, preferably in CRM 7 WebUI?
    6) Do you have any code to just display a PDF in a new window? Or prompt a download?
    One possible way I thought of would be for me to have a logical link defined in the IMG for the transaction launcher, and have the attributes defined for my BOR object that I would call, and pass it different attributes (eg. objtype, objkey, logsys...) and then return the PDF and display it in the UI in a new browser window by itself. (There is a BOR method for my BOR object named  'display_pdf'!!!!)
    What do you think would be the optimal solution here? Does my theory of calling a BOR object with a transaction launcher to display a PDF make ANY sense whatsoever???
    Please do not hesitate to propose any potential solution. Any partial answers/ links to wikis/ other threads, anything would be much appreciated.
    Thank you in advance.
    Best regards,
    Jonathan Laplante
    Edited by: Jonathan Laplante on Jul 2, 2011 4:50 AM

    Hi Any help on this....I am still awaiting the response.
    Requirement: My requirement is to launch the SE38 transaction on WEBUI using transaction luncher tool and set the parameter on the selection screen.
    Issue: The issue is that I am able to lunch the transaction but unable to set the parameter
    Steps Performed:
    I want to list down all the steps I performed to launch an SE38 transaction using transaction launcher on the WEBUI
    1) Defined logical system in tcode CRMS_IC_CROSS_SYS
    -The logical link looks like this
    http://<server>:<port>/sap/bc/gui/sap/its/webgui/!?transaction=IC_LTXE&okcode=ICEXECUTE ?sap-client=300
    2) Defined URL & paratemeter wherein the request method is "GET", opted for NON-BSP URL
    URL link here is
    http://<server>:<port>/sap/bc/gui/sap/its/webgui/!?transaction=SE38&okcode=ONLI
    -Note: My selection screen okcode os ONLI*
    -The logical system ref is provided here
    3) Defined the parameter by giving the screen name like for SE38 selection screen name is "RS38M-PROGRAMM"
    4) Configured the transaction launcher of type B - URL type and provided the reference of the URL ID, choose the relevant parameter from the drop down and have hardcoded the value, cheked the box "Save Data in Activity Clipboard
    5) Added this in the NAvlink/Bus Role etc
    6) Now in the handler class of the TL the code looks like this:
    IF_CRM_IC_ACTION_HANDLER~PREPARE_DATA_FLOW
    __gdc ?=
    cl_crm_ui_data_context_srv=>get_instance( gv_view_controller ).
    __value
    =
    'ZC_TEST'.
    add_parameter(
       iv_name =
    'RS38M-PROGRAMM'
    iv_value = __value ).
    However, after performing the above steps I am unable to set the parameter. Please suggest where am I missing out on. An early response would really be appreciated.

  • How to Call Transaction iView that calls RRMXP from Web Dynpro for ABAP

    Dear Experts,,
    I'm developing an application in Web Dynpro for ABAP wherein I'm supposed to give a link that should open an SAP Transaction iView that calls  tcode = 'RRMXP' and I pass the application parameter as QUERY/WBID = <BI query/Workbook ID>.
    I tried calling com.sap.portal.appintegrator.sap.bwc.Transaction iView, but it asks for system/application and GUI type parameters. How to pass through the URL?
    Any help would be highly appreciated
    Regds,
    Srini

    Hi Wolfgang,,
    My problem was that I was supposed to call the BeX Web Analyser ( a BI excel based tool - client installation) on click of a button in my WD-ABAP application. I solved it as follows :
    In the portal pcd, I cam across a folder content provided by SAP. Here, you'll find standard template iViews that can be used to call applications ( for which you make iViews). I had to call an SAP TCode : RRMXP so as to call a BI Workbook/Query.
    So, I called the standard iView template for sap_transaction_iView as follows :
    irj/servlet/prt/portal/prtmode/preview/prtroot/'
               'pcd!3aportal_content!2fcom.sap.pct!2ftemplates'
               '!2fiviews!2fcom.sap.portal.sap_transaction_iview?'
               'sap-config-mode=true&System=BWR3System&TCode=RRMXP'
               '&GuiType=WinGui&OkCode=y&ApplicationParameter='  <appnm>  into url.
          l_popup =
             l_window_manager->create_external_window( url = url
                                          has_menubar = ' '
                                         has_statusbar = ' '
                                          has_toolbar = ' '
                                          has_location = ' ').
          l_popup->open( ).
    And , it worked.
    Any more help pls feel free to revert.
    Regds,
    Srini

  • Ejbload() on CMP with transaction = supports - why called before every method?

    If an entity bean (CMP v2) has its transaction attrib "supports", why
    when a client (ejb/servlet/jsp) calls its business methods does WLS
    call ejbLoad() before every method call? Note that the calls do not
    occur inside a transaction!
    This is not intuitive to me. I would think that ejbLoad() would be
    called once when the bean is activated and then all business methods would
    access that data.
    Note that if you put the entity bean behind a session bean with a
    transaction attrib "Required", then the ejbLoad() gets called once no
    matter how many business methods are called from the session bean.
    This is (obivously) correct.
    Why is this relevant? The latest java petstore demo essentially calls
    EJBLocal's from jsp (via taglib's) - I guess no different from WLS
    EJB to taglib product - where the fine grained getter methods are
    called. From what I gather, this means that every one of the jsp
    get methods results in a database read! This can't be right!
    What am I missing? As above, if the entity bean has "supports"
    and is called from a jsp, it appears that ejbLoad()/ejbStore()
    would be called for every jsp taglib invocation.
    Glenn

    "Glenn R. Kronschnabl" wrote:
    Rob,
    Thanks for your reply. This implies that even EJBLocals with fine
    grained getter methods should never be used outside a tx scope.Yes, unless you are using Read-Only entity beans which cache data for longer
    periods of time.
    Even
    though you bypass the RMI semantics, you'll be killed by the local tx.
    Which to me says that using EJB's from JSP (even via tags) is a bad
    idea because each getter method will result in a database read/write,
    (unless you go with a readonly EJB as you stated).
    Accessing transactional entity beans via tags is probably a bit off. You
    could start the tx in the JSP or the tag library, but I don't really like
    that pattern much. I prefer making the tags more coarse-grained and having
    the tags talk to a stateless session bean which in turn talks to the entity
    beans.
    >
    Unfortunately, I've been seeing some threads on the net advocating
    using EJBLocals with tx=supports because one of the most common
    patterns has session beans (where you can specify your desired tx)
    in front of entity beans (so you're set methods are protected via
    the session bean tx),RIght, I think Required or Mandatory is a better choice for the entity beans
    here.
    but then you can use the EJBLocal (via tags)
    on a JSP page (no tx) to view the data via fine grained getter
    methods.Other than the performance issues, I dislike this because it exposes the
    entity bean directly to the JSP. If I have to go through an interface (the
    session bean) to access the entity bean, then I shouldn't have another route
    to access the entity bean directly.
    -- Rob
    >
    As you state, this is a disaster because each getter method
    will run in a local tx, requiring a database read/write. Oouch!
    Glenn
    On Thu, 06 Dec 2001 17:08:07 -0600, Rob Woollen wrote:
    First off, I wouldn't recommend that you ever run any EJB with the
    'supports' transaction attribute. If you want transactional behavior
    use Required, RequiresNew, or Mandatory. If you want to run in an
    unspecified tx, use NotSupported or Never.
    WLS runs entity beans with an unspecified tx in their own local tx.
    That's why you see the reads and writes on the method call boundary.
    Your scheme of only reading when the bean is activated could make the
    bean's data out of sync with the underlying database. That's acceptable
    in many cases, and that's why we have the Read-Only entity bean option.
    It gives you exactly what you'd like.
    -- Rob
    "Glenn R. Kronschnabl" wrote:
    If an entity bean (CMP v2) has its transaction attrib "supports", why
    when a client (ejb/servlet/jsp) calls its business methods does WLS
    call ejbLoad() before every method call? Note that the calls do
    not occur inside a transaction!
    This is not intuitive to me. I would think that ejbLoad() would be
    called once when the bean is activated and then all business methods
    would access that data.
    Note that if you put the entity bean behind a session bean with a
    transaction attrib "Required", then the ejbLoad() gets called once no
    matter how many business methods are called from the session bean. This
    is (obivously) correct.
    Why is this relevant? The latest java petstore demo essentially calls
    EJBLocal's from jsp (via taglib's) - I guess no different from WLS EJB
    to taglib product - where the fine grained getter methods are called.
    From what I gather, this means that every one of the jsp get methods
    results in a database read! This can't be right! What am I missing? As
    above, if the entity bean has "supports" and is called from a jsp, it
    appears that ejbLoad()/ejbStore() would be called for every jsp taglib
    invocation.
    Glenn
    AVAILABLE NOW!: Building J2EE Applications & BEA WebLogic Server
    by Michael Girdley, Rob Woollen, and Sandra Emerson
    http://learnWebLogic.com
    [att1.html]

  • Combination of call transaction & session methods

    hi,
    how to combine call transaction & session methods in a single transaction.
    give me the exact steps to proceed with the above.

    Hi Saritha,
    Your question is not clear to me but I am assuming your queestion like this
    "Providing choice for user for using either call transaction & Session method for uploading data"
    When you generate the BDC (Batch Data Communication options define the processing mode for a batch input session) program with SHDB, you can remove a lot of unwanted fields by copying this customize abap include program.  It allows you to execute the BDC program immediately without filling up those SAP generate fields.  To run background, just run it as a background job.
    Execute BDC immediately by replacing the include BDCRECX1
    Written by : SAP Basis, ABAP Programming and Other IMG Stuff
                     http://www.sap-img.com
    ***INCLUDE ZBDCRECX1.
    When you generate the program using SHDB, you can replace it
    with this if you want to execute it immediately without having
    to process it using SM35.
    During testing you can used the original include.
    For example,
    include zbdcrecx1.   "After test
    include bdcrecx.     "Before test
    Declare your internal table as RECORD
    for programs doing a data transfer by creating a batch-input session
    and
    for programs doing a data transfer by CALL TRANSACTION USING
    *SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS SESSION RADIOBUTTON GROUP CTU.  "create session
    SELECTION-SCREEN COMMENT 3(20) TEXT-S07 FOR FIELD SESSION.
    selection-screen position 45.
    PARAMETERS CTU RADIOBUTTON GROUP CTU DEFAULT 'X'. "call transaction
    SELECTION-SCREEN COMMENT 48(20) TEXT-S08 FOR FIELD CTU.
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: SESSION NO-DISPLAY,
                CTU     NO-DISPLAY DEFAULT 'X'.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S01 FOR FIELD GROUP.
    selection-screen position 25.
    PARAMETERS GROUP(12).                      "group name of session
    SELECTION-SCREEN COMMENT 48(20) TEXT-S05 FOR FIELD CTUMODE.
    selection-screen position 70.
    PARAMETERS CTUMODE LIKE CTU_PARAMS-DISMODE DEFAULT 'N'.
                                         "A: show all dynpros
                                         "E: show dynpro on error only
                                         "N: do not display dynpro
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: GROUP(12) NO-DISPLAY,
                CTUMODE   NO-DISPLAY DEFAULT 'N'.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S02 FOR FIELD USER.
    selection-screen position 25.
    PARAMETERS: USER(12) DEFAULT SY-UNAME.    "user for session in batch
    SELECTION-SCREEN COMMENT 48(20) TEXT-S06 FOR FIELD CUPDATE.
    selection-screen position 70.
    PARAMETERS CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L'.
                                         "S: synchronously
                                         "A: asynchronously
                                         "L: local
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: USER(12) NO-DISPLAY DEFAULT SY-UNAME,
                CUPDATE LIKE CTU_PARAMS-UPDMODE DEFAULT 'L' NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S03 FOR FIELD KEEP.
    selection-screen position 25.
    PARAMETERS: KEEP AS CHECKBOX.       "' ' = delete session if finished
                                         "'X' = keep   session if finished
    SELECTION-SCREEN COMMENT 48(20) TEXT-S09 FOR FIELD E_GROUP.
    selection-screen position 70.
    parameters E_GROUP(12).             "group name of error-session
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: KEEP        NO-DISPLAY,
                E_GROUP(12) NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) TEXT-S04 FOR FIELD HOLDDATE.
    selection-screen position 25.
    PARAMETERS: HOLDDATE LIKE SY-DATUM.
    SELECTION-SCREEN COMMENT 51(17) TEXT-S02 FOR FIELD E_USER.
    selection-screen position 70.
    PARAMETERS: E_USER(12) DEFAULT SY-UNAME.    "user for error-session
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: HOLDDATE LIKE SY-DATUM NO-DISPLAY,
               E_USER(12) DEFAULT SY-UNAME NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 51(17) TEXT-S03 FOR FIELD E_KEEP.
    selection-screen position 70.
    PARAMETERS: E_KEEP AS CHECKBOX.     "' ' = delete session if finished
                                         "'X' = keep   session if finished
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: E_KEEP NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 51(17) TEXT-S04 FOR FIELD E_HDATE.
    selection-screen position 70.
    PARAMETERS: E_HDATE LIKE SY-DATUM.
    *SELECTION-SCREEN END OF LINE.
    *SELECTION-SCREEN SKIP.
    PARAMETERS: E_HDATE LIKE SY-DATUM NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(33) TEXT-S10 FOR FIELD NODATA.
    PARAMETERS: NODATA DEFAULT '/' LOWER CASE.          "nodata
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: NODATA DEFAULT '/' LOWER CASE NO-DISPLAY.
    *SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 1(33) FOR FIELD SMALLLOG.
    PARAMETERS: SMALLLOG as checkbox.  "' ' = log all transactions
                                        "'X' = no transaction logging
    *SELECTION-SCREEN END OF LINE.
    PARAMETERS: SMALLLOG NO-DISPLAY.
      data definition
          Batchinputdata of single transaction
    DATA:   BDCDATA LIKE BDCDATA    OCCURS 0 WITH HEADER LINE.
          messages of call transaction
    DATA:   MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
          error session opened (' ' or 'X')
    DATA:   E_GROUP_OPENED.
          message texts
    TABLES: T100.
      at selection screen                                                *
    AT SELECTION-SCREEN.
    group and user must be filled for create session
      IF SESSION = 'X' AND
         GROUP = SPACE OR USER = SPACE.
        MESSAGE E613(MS).
      ENDIF.
      open dataset                                                       *
    FORM OPEN_DATASET USING P_DATASET.
      OPEN DATASET P_DATASET IN TEXT MODE.
      IF SY-SUBRC <> 0.
        WRITE: / TEXT-E00, SY-SUBRC.
        STOP.
      ENDIF.
    ENDFORM.
      close dataset                                                      *
    FORM CLOSE_DATASET USING P_DATASET.
      CLOSE DATASET P_DATASET.
    ENDFORM.
      create batchinput session                                          *
      (not for call transaction using...)                                *
    FORM OPEN_GROUP.
      IF SESSION = 'X'.
        SKIP.
        WRITE: /(20) 'Create group'(I01), GROUP.
        SKIP.
      open batchinput group
        CALL FUNCTION 'BDC_OPEN_GROUP'
             EXPORTING  CLIENT   = SY-MANDT
                        GROUP    = GROUP
                        USER     = USER
                        KEEP     = KEEP
                        HOLDDATE = HOLDDATE.
        WRITE: /(30) 'BDC_OPEN_GROUP'(I02),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ENDIF.
    ENDFORM.
      end batchinput session                                             *
      (call transaction using...: error session)                         *
    FORM CLOSE_GROUP.
      IF SESSION = 'X'.
      close batchinput group
        CALL FUNCTION 'BDC_CLOSE_GROUP'.
        WRITE: /(30) 'BDC_CLOSE_GROUP'(I04),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ELSE.
        IF E_GROUP_OPENED = 'X'.
          CALL FUNCTION 'BDC_CLOSE_GROUP'.
          WRITE: /.
          WRITE: /(30) 'Fehlermappe wurde erzeugt'(I06).
        ENDIF.
      ENDIF.
    ENDFORM.
           Start new transaction according to parameters                 *
    FORM BDC_TRANSACTION USING TCODE.
      DATA: L_MSTRING(480).
      DATA: L_SUBRC LIKE SY-SUBRC.
    batch input session
      IF SESSION = 'X'.
        CALL FUNCTION 'BDC_INSERT'
             EXPORTING TCODE     = TCODE
             TABLES    DYNPROTAB = BDCDATA.
        IF SMALLLOG <> 'X'.
          WRITE: / 'BDC_INSERT'(I03),
                   TCODE,
                   'returncode:'(I05),
                   SY-SUBRC,
                   'RECORD:',
                   SY-INDEX.
        ENDIF.
    call transaction using
      ELSE.
        REFRESH MESSTAB.
        CALL TRANSACTION TCODE USING BDCDATA
                         MODE   CTUMODE
                         UPDATE CUPDATE
                         MESSAGES INTO MESSTAB.
        L_SUBRC = SY-SUBRC.
        IF SMALLLOG <> 'X'.
         WRITE: / 'CALL_TRANSACTION',
                  TCODE,
                  'returncode:'(I05),
                  L_SUBRC,
                  'RECORD:',
                  SY-INDEX.
          IF SY-SUBRC = 0.
             FORMAT COLOR OFF.
             WRITE:/ 'Successfully Process ', MESSTAB, RECORD.
          ELSE.
             FORMAT COLOR COL_NEGATIVE.
             WRITE:/ 'Failed Process ', MESSTAB, RECORD.
          ENDIF.
          LOOP AT MESSTAB.
            SELECT SINGLE * FROM T100 WHERE SPRSL = MESSTAB-MSGSPRA
                                      AND   ARBGB = MESSTAB-MSGID
                                      AND   MSGNR = MESSTAB-MSGNR.
            IF SY-SUBRC = 0.
              L_MSTRING = T100-TEXT.
              IF L_MSTRING CS '&1'.
                REPLACE '&1' WITH MESSTAB-MSGV1 INTO L_MSTRING.
                REPLACE '&2' WITH MESSTAB-MSGV2 INTO L_MSTRING.
                REPLACE '&3' WITH MESSTAB-MSGV3 INTO L_MSTRING.
                REPLACE '&4' WITH MESSTAB-MSGV4 INTO L_MSTRING.
              ELSE.
                REPLACE '&' WITH MESSTAB-MSGV1 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV2 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV3 INTO L_MSTRING.
                REPLACE '&' WITH MESSTAB-MSGV4 INTO L_MSTRING.
              ENDIF.
              CONDENSE L_MSTRING.
              WRITE: / MESSTAB-MSGTYP, L_MSTRING(250).
            ELSE.
              WRITE: / MESSTAB.
            ENDIF.
          ENDLOOP.
          SKIP.
        ENDIF.
    Erzeugen fehlermappe ************************************************
        IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
          IF E_GROUP_OPENED = ' '.
            CALL FUNCTION 'BDC_OPEN_GROUP'
                 EXPORTING  CLIENT   = SY-MANDT
                            GROUP    = E_GROUP
                            USER     = E_USER
                            KEEP     = E_KEEP
                            HOLDDATE = E_HDATE.
             E_GROUP_OPENED = 'X'.
          ENDIF.
          CALL FUNCTION 'BDC_INSERT'
               EXPORTING TCODE     = TCODE
               TABLES    DYNPROTAB = BDCDATA.
        ENDIF.
      ENDIF.
      REFRESH BDCDATA.
    ENDFORM.
           Start new screen                                              *
    FORM BDC_DYNPRO USING PROGRAM DYNPRO.
      CLEAR BDCDATA.
      BDCDATA-PROGRAM  = PROGRAM.
      BDCDATA-DYNPRO   = DYNPRO.
      BDCDATA-DYNBEGIN = 'X'.
      APPEND BDCDATA.
    ENDFORM.
           Insert field                                                  *
    FORM BDC_FIELD USING FNAM FVAL.
      IF FVAL <> NODATA.
        CLEAR BDCDATA.
        BDCDATA-FNAM = FNAM.
        BDCDATA-FVAL = FVAL.
        APPEND BDCDATA.
      ENDIF.
    ENDFORM.

  • How do I keep track of how many times a method is called inside anthr clas?

    I am writing code for a program that solves a Knight's Tour. A Knight's Tour is a path a Knight Chess piece can take around the board starting at any spot, touching every square once, and only once. I have to write 2 classes and one is provided. The provided class is encrypted and written by our professor. All I know that it does is simulates the game using the two classes I write and provides a print out and prompts to ask the user which square they want to move to next.
    The square class I have to write consists of a constructor that makes a square object that keeps track of its color (white/black) and its status (whether it has been visited, is occupied by the knight, or is free and has not be visited).
    The GameBoard class I have to write is what I am having problems with. I am writing a method that determines how many squares have been visited. The previous mentioned class that my professor wrote for me contains a method moveKnight();. The way the program works is that every time moveKnight() is called a square's status is changed to occupied and therefore visited later. moveKnight() will only work if the move requested by the user is a valid move.
    SO! My main problem (sorry for all the explaining, just trying to give you all the information) is that I don't know how to keep track of how many times moveKnight() is called by the program. If i can figure this out it should be simple. I'm new to java but i believe...
    if(moveKnight() is called)
    {count++;} //count is a member variable already initialized
    return count;
    the moveKnight() is called section within the if() statement is what I am unclear how to do. Please help.
    Thanks, Veritas

    in your case you want 'count' to be a class attribute rather than a local variable. But yes, incrementing it each time that the method is called will serve your purpose.

  • How detect method calls that are not already in 1.4

    My program is compiled with JDK 1.5 or 1.6 and retroweaved to 1.4.
    If I do not take care I may type
    int i=65;
    Character.isDigit(i);
    instead of
    Character.isDigit(char)i);
    Without casting to char it uses a method that exists only since 1.5 but not
    yet in 1.4.
    There are a few other methods that had been added since 1.5
    Their use leads to NoSuchMethodError on 1.4 clients.
    Their usage must be avoided.
    How can I recognize them at compile time?
    Or has anybody written a tool to check all method calls
    whether they already exist in 1.4 ?
    If not I would write it myself and probably will use the javap output.
    After reading through the docs of java.lang.reflect.Method I guess that
    there is no flag telling when a method had been introduced.

    there was some discussion on that here:
    http://forum.java.sun.com/thread.jspa?threadID=586602
    If you use ant, you could also try and configure the src and target properties of javac task:
    http://ant.apache.org/manual/CoreTasks/javac.html
    Alper

  • How to print a method trace to a file (first method called to the end)

    I have a tomcat war that I am deploying. I want to use some command line parameter or some tool that will show me a method trace of each method that gets executed.
    There is some static initializer in the code that starts everything in the war (the war is not a web app) but simply a process that runs in the background that does stuff.
    I want to find out what the first method called in the war is and to locate the static initializer. Having a method trace would do this because this method would be printed out first.
    After the static initializer gets called I want to see a method trace of all methods called. Having this printed to a file like Class:Method(params) would be nice.
    Even better would be some sort of tool that I could open a trace file with and see method calls in the order they were called.
    I tried several Java profiling tools but none of them show me the order (first to last) of the methods called. All I need is to see a method trace from beginning to end.
    Any help would be appreciated.

    JProbe provided almost everything I needed to see a method call trace. The method graph feature was great.
    I have a single static class with a static initializer that runs in a loop but did not know what the class name was (I inherited some code and was told about the static initializer).
    So when I fired it up in JProbe it showed me the class running off the root thread. In fact I found another static initializer that was unknown to me and another oddity as well.
    The only problem is that the method call graph is collapsed and you need to click [+] to expand every method call.
    I am told by JProbe support that there was an "expand all" option in JProbe 7.0 but it is not there in 7.1.
    Not sure why they took the time, money and energy to take a needed feature out.
    It would be great to have something that did the same thing from the command line or to be able to print a method call trace out to a file but not sure how to do this.

  • How to use CTUPARAMS in CALL TRANSACTION

    Hi ,
    How to pass ctuparms in CALL TRANSACTIION.
    Please give me some example.
    Thanks in Advance,
    Kuma A.

    Hi,
    Check this example..
      DATA: ls_params TYPE ctu_params.
      DATA: t_bdcdata TYPE STANDARD TABLE OF bdcdata.
      ls_params-dismode  = 'N'.   " No display
      ls_params-updmode  = 'S'.   " Synchronous
      ls_params-defsize  = 'X'.   " Default window size.
      CALL TRANSACTION 'MM01' USING t_bdcdata OPTIONS FROM ls_params.
    Thanks
    Naren

  • How populate and execute methods gets called in UserDefined Action Classes?

    In Struts2, if we override methods populate() and execute() , then if we made any request to some Action class which overrides these methods, then how does it look for these 2 methods??
    and why populate() method called first and later execute() method????
    Harishwar
    Edited by: Harishwar_Madhya on Sep 3, 2010 2:47 AM
    Edited by: Harishwar_Madhya on Sep 3, 2010 2:49 AM

    45RPMSoftware wrote:
    Thanks for this. Alas, I do not have the source code used to generate the jar file, and I have no means of getting it. I imagine, therefore, that I will not be able to update the manifest file.The manifest file is just a simple text file.
    You can get at it by unpacking/repacking the jar file with the jar utility (tar like syntax).
    ... I assume that classpath is rather like the unix path.It specifies a list of jar files and directories containing java class files (and more).
    Is there anything that defines the classpath for each login session and, if so, how do I add to it?As the link I posted says;
    you can set a CLASSPATH env.var.

  • Please help on how to use variables inside a method call

    Hello guys,
    How's it goin?
    Pardon me if you find my question silly, but I am relatively
    new in ActionScript 2.0 programming.
    I have here a simple problem. It seems I can't use a variable
    inside a method call of an object. Here's the code. Please note of
    the authParams string variable below.
    import AkamaiConnection;
    import mx.services.WebService;
    var GeneratedToken:String;
    var authParams:String;
    // Create a Web Service object
    var TokGenService:WebService = new WebService("
    http://webservice.asmx?wsdl");
    // Call the web service method
    var myToken:Object = TokGenService.GenerateToken();
    // Create an AkamaiConnection object
    var connection:AkamaiConnection = new AkamaiConnection();
    connection.addEventListener("onConnect", this);
    connection.addEventListener("onError", this);
    // If you get a result from the web service, save the result
    in a variable
    myToken.onResult = function(result)
    // If you get a result from the web service, save the result
    in a variable
    myToken.onResult = function(result)
    GeneratedToken = result;
    authParams = GeneratedToken +
    "&aifp=v001&slist=37414/test/Streaming/";
    //Call the Connect method of the AkamaiConnection class
    connection.connect("cp37414.edgefcs.net/ondemand",true,true,5,true,false,"443","rtmpt",
    authParams);
    But then, if I use a hard-coded string value in lieu of the
    variable, the method call works!
    connection.connect("cp37414.edgefcs.net/ondemand",true,true,5,true,false,"443","rtmpt",
    "testStringvalue");
    I don't know what I'm missing or what I'm doing wrong... Can
    somebody help me please? I am using a 30-day trial version of Adobe
    Flash CS3. Also, when I Trace output the variables, the values are
    there. It just that they can't be read or recognize inside the
    method call. Is this a ActionScript limitation?
    Thanks so much in advance!

    The result param is a returned, “Decoded ActionScript
    object version of the XML”. I am not exactly sure what that
    means but I have had issues of returned XML values and their
    datatype. When I did have these issues I had to cast or convert
    into the desired datatype. Try one of the following, assuming the
    problem is related to the code that you have bolded.
    GeneratedToken = result.toString();
    authParams = GeneratedToken +
    "&aifp=v001&slist=37414/test/Streaming/";
    Or
    GeneratedToken = String(result);
    authParams = GeneratedToken +
    "&aifp=v001&slist=37414/test/Streaming/";
    Or
    GeneratedToken = result.toString();
    authParams = String(GeneratedToken +
    "&aifp=v001&slist=37414/test/Streaming/");

Maybe you are looking for

  • Hp laserjet 1536 crashing windows 7 64-bit

    Product name: HP LaserJet Pro M1536 MFP OS: Windows 7 SP1 64-bit This is a new installation, nothing fancy, the computer runs MS Office 2010, and a home written application. The computer/printer may not show signs of trouble in a day or two, but sudd

  • Automaticaly go to next page

    How can I set a page to go to the next one by itself after a certain time? E.g.my startpage begins with a short QT clip and then I want it to go to the next page. Jacques

  • How to go to a marker with a new opened swf?

    hi there, I have a question, if I want to go to a marker of a new swf, how do code it in actionscript? so that after I click a flash button, it will open a new flash, and a particular marker within the new flash. hope this time I made it clear, thank

  • Is there any listener when leaving the page?

    Hi, I use JDev 11g, I use this *((DCIteratorBinding)this.getBindings.get("MyIterator1")).getViewObject().getApplicationModule().getTransaction.isDirty();* to know if there is a change happen in database or not I want to check this change when I leave

  • Way to push the web proxy server setting on clients?

    Is there a way I can push the webserver proxy ip address on clients?  I can't find much on the web on how to do this... pure 10.6.8 with ard 3.5.1 environment Any help is appreciated...