Error-handling in form routines to be called from maintenance  view

hello,
i have created a table maint. dialog. Under 'enviroment->modification->events' you can create form-routines for your own coding.
I have the maint.event '01 - Before saving the data in the database'. Here i do some checks if entered values in some fields are okay or not etc.....
When the users enters 'wrong' data i do a "message e000 with 'text' " So i got a error-message and the user is not able to save the data before changing it.
BUT: i get the right error-message in the status-line, but i got an EMPTY screen, all the fields disapear. I have to go back with enter or the red cancel button. But then i 'fall back' to the selection screen of the maint. view. Thats not very user-friendly.
Any ideas ?

hi,
think you have place your module not correct:
try that: (without event)
PROCESS AFTER INPUT.
  LOOP AT EXTRACT.
    FIELD VIM_MARKED MODULE LISTE_MARK_CHECKBOX.
    CHAIN.
      FIELD Y789.
      FIELD Y012.
      MODULE LISTE_UPDATE_LISTE.
    ENDCHAIN.
*begin of insertation
    CHAIN.
      FIELD Y123.
      FIELD Y456.
      module check_field  ON CHAIN-input.
    ENDCHAIN.
*end of insertation
  ENDLOOP.
Andreas

Similar Messages

  • Error Handling in Forms

    Dear all,
    we are using oracle developer suite 10g r2 with oracle database 10g r2 against windows server 2003.
    Error handling is a very big issue.
    i try to do the following, just correct me, or make the trigger more efficient.
    i face unexpected messages, like a message two time displayed, sometime important message never displayed.
    i just set the :system.message_level =20 in the when-new-form-instance trigger.
    and create on-error trigger like below
    declare
    errcode number:=error_code;dbmserrcode number;dbmserrtext varchar2(200);
    formtxt varchar2(200);
    errtype varchar2(3);
    begin
    --------- user defined database exceptions errors raised by --RAISE_APPLICATION_ERROR
    IF DBMS_ERROR_CODE in (-20738,.......) then
    raise form_trigger_failure;
    end if;
    if error_code=50017 then
    message('duration must be between 0 and 23');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    elsif
    error_code=40202 then
    clear_message;
    message('please provide the required fields.');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    elsif error_code=50022 then
    clear_message;
    message('time must be in the correct format.');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    end if;
    if error_code in (40509,40508) then
    dbmserrcode:=dbms_error_code; dbmserrtext:=dbms_error_text;
    if dbmserrcode=-1438 then
    clear_message;
    message('your number is too large.try again.');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    elsif dbmserrcode=-1400 then
    clear_message;
    message('your forgot to provide a value.try again.');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    elsif dbmserrcode=-2291 then
    clear_message;
    message('header is not found for this insertion.');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    elsif dbmserrcode=-1 then
    clear_message;
    message('record already exists');message(' ',no_acknowledge);
    raise form_trigger_fialure;
    else
    clear_message;
    message(error_code||' : '||error_text);message(' ',no_acknowledge);
    raise form_trigger_fialure;
    end if;
    else
    clear_message;
    message(error_code||' : '||error_text);message(' ',no_acknowledge);
    raise form_trigger_fialure;
    end if;
    exception
    when others then
    if dbms_error_code=-20738 then
    clear_message;
    message('Error: absent or later record errror from the database trigger.);
    raise form_trigger_failure;
    elsif .....
    esle
    clear_message;
    message(error_code||' : '||error_text);message(' ',no_acknowledge);
    raise form_trigger_fialure;
    end if;
    end;any suggession?
    Regards

    i must come with a plsql code which handle every error and suppress unnecessary messages.Good luck with that. No matter how well thought out or planned, you're not going to be able to take all scenarios into account. The design of an exception handler takes time to address all possible scenarios you want handled and even then, you're not likely to handle every situation in the beginning.
    could we implement the oracle ebusiness error handling procedures here in our application?if yes, then where could we find that procedure?>
    I've dug through that code and it is not a thorough as you think it is. It handles specific situations and then defaults the rest. It is a good model for your own exception handler, however. That is what I used it for. :) I don't recall which library it is in, but I'll look around and if I find it, I'll post it.
    I agree with Andreas's comment...
    Simply remove your ON-ERROR-trigger, then you have a default. That's nothing better or worse than what apex has.I'm not too familiar with Apex; I've worked with it, but it's been a little while. Even with Apex, you're going to have to develop a customized Exception Handler so more intuitive or application specific messages are displayed in response to an exception.
    As to Andreas's comment...
    For your own error-handling... The "simplest" way in my eyes is create your own error-table where you have appropiate columns for the error-code and the error-type (FRM,ORA,Whatever), then in your ON-ERROR-trigger read the appropiate record from that table and show the error. You could also have a flag in your table which decides what to do with a specific error (Show as Message, Show as Alert, Don't show at all) and react accordingly.This is exactly what we implemented in our application. We created a set of tables that contain all of the Oracle Runtime errors and their attributes (Error Type, Severity Level, etc). Then we wrote a standard On-Error trigger that is subclassed to all of our forms that calls a Library "On_Error" package. This package evaluates the exception raised, compares it to the database entry for the error and then displays an appropriate message depending on the Severity Level, Error Type (ORA or FRM) and Message Type (Informational, Error, Caution) and we display the message in either the Status Bar, Note Alert, Caution Alert or Stop Alert or it is supressed. If an error is not found in the table, then it is displayed in a Stop Alert as an "Unhandled Exception." The second table I mentioned contains all of the messages used by our application and is cross referenced with the table that contains the Oracle messages. By simply assigned one of our messages to an Oracle message - our package will display our message instead of the default Oracle Message. Yes, this took sometime to build and test and once implemented, we spent another couple of months perfecting it, but now it is pretty solid and we haven't had to modify it in over a year.
    While this level of complexity may be overkill for your application, it does offer the greatest flexibility in the long-run. Also, if your application must support multiple languages, having all of your messages in a table make internationalization extremely easy. :)
    The point of all this, is that no matter which system you use (Forms, Apex, or Java) you will still need to invest some time into designing an Excpeiton Handling method for your application and then implement it accross the application. This is not something you can develop in a short period of time and it will not be perfect in the beginning. However, in the long-run, you will be happy you spent the time up-front to build a flexible and robust Exception Handling system.
    Craig...

  • "Error attempting to read file" at Webservice call from Adobe Form.

    Hi Experts,
    We have designed a Webservice form a Function Module in ECC 6.0, In the soamanager transaction the webservice works fine. But at the time of call from the Adobe form, it gives an error stating that "Error attempting to read from file" and then the URL of the Webservice to be excuted.
    and if i attempt to open that file, it gives me this error:
    - <soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
      <soap-env:Header />
    - <soap-env:Body>
    - <soap-env:Fault>
      <faultcode>soap-env:Server</faultcode>
      <faultstring xml:lang="en">SRT: Wrong Content-Type and empty HTTP-Body received</faultstring>
    - <detail>
    - <ns:SystemFault xmlns:ns="http://www.sap.com/webas/710/soap/runtime/abap/fault/system/">
      <Host>undefined</Host>
      <Component>COREMSG</Component>
    - <ChainedException>
      <Exception_Name>CX_SOAP_CORE</Exception_Name>
      <Exception_Text>SRT: Wrong Content-Type and empty HTTP-Body received</Exception_Text>
      </ChainedException>
      </ns:SystemFault>
      </detail>
      </soap-env:Fault>
      </soap-env:Body>
      </soap-env:Envelope>
    In case I give my user the "SAP_ALL" role, this all works fine, so i think it is somewhere related to a missing role to be assigned.
    any clues..??
    any help would be appreciated, Please help..
    Thanks,
    Amita

    Hi Juergen,
    I am using it as a WSDL based data connection.
    How do i check this WSDL through a web browser? I have checked it through SICF Transaction code, It gives the output in explorer as given in the first post of this thread..
    Please help me resolving this issue, i feel that this issue is somewhere related to the role assignment of the user as if i provide this user an authorization of SAP_ALL then everything starts working fine, but after removing SAP_ALL this error is encountered, do u hav any pin points on this??
    Thanks
    Amita

  • How to call a maintenance view  from a program

    Hello Abapers,
    Can anybody explain with some examples. How to call a mainetenance view from a program.
    Thanks
    Ranjith.

    Use FM 'VIEW_MAINTENANCE_CALL'.
    REPORT  zmaintaintest.
    VARIABLES / CONSTANTS                          
    CONSTANTS: 
                    c_action(1) TYPE c VALUE 'U',                                 "Update
              c_viewname TYPE tabname value 'ZEMP_EXAMPLE', "View Name
              c_field(6) TYPE c VALUE 'EMPNO'.                            "Field Name
    INTERNAL TABLES
    DATA: itab_rangetab TYPE STANDARD TABLE OF vimsellist,
              v_empno TYPE zempno,
              wa_rangetab TYPE vimsellist.
    SELECTION SCREEN
    PARAMETERS:     p_empno TYPE   zempno   OBLIGATORY.  "Emplyee ID
    AT SELECTION-SCREEN                                                 
    AT SELECTION-SCREEN.
    Chcking the existence of the user in EMPLOYEE table
      PERFORM validate_employee.
    START_OF_SELECTION                                                  
    START-OF-SELECTION.
    This will restrict the user view so that user can only view/change
    Table data corresponding to his/her Employee ID
      PERFORM define_limited_data_area.
    Displaying table maintenance view for a particular employee ID
      PERFORM call_view_maintenance.
    *&      Form validate_employee
    Validate plant entered in the selection screen
    FORM validate_employee.
      SELECT SINGLE empno     u201CEmployee ID
        FROM zemp_example     u201CEmployee Table
        INTO v_empno
        WHERE empno = p_empno.
      IF sy-subrc <> 0.
        MESSAGE 'Not an Valid User' TYPE 'I'.
      ENDIF.
    ENDFORM.                    "validate_employee
    *&      Form DEFINE_LIMITED_DATA_AREA
    To restrict the user view so that user can see/change table data
    corresponding to his employee ID. Here one internal table is
    getting populated with field name as u201CEMPNOu201D (Key field of the table)
    And value as given by user in Selection Screen and this is passed as
    Parameter in function module 'VIEW_MAINTENANCE_CALL'
    FORM define_limited_data_area.
      CLEAR wa_rangetab.
      wa_rangetab-viewfield  = c_field.
      wa_rangetab-operator  = 'EQ'.
      wa_rangetab-value       = p_empno.
      APPEND wa_rangetab TO itab_rangetab.
    ENDFORM.                    "define_limited_data_area
    *&      Form CALL_VIEW_MAINTENANCE.
    Displaying table maintenance view for a particular employee ID
    FORM call_view_maintenance.
      CALL FUNCTION 'VIEW_MAINTENANCE_CALL'      
        EXPORTING
          action           = c_action
          view_name   = c_viewname
        TABLES
          dba_sellist     = itab_rangetab.
    ENDFORM.                    "call_view_maintenance
    Regards,
    Joy.

  • Order Entry Interface table error handling through Form after Orderimport

    Hi Gurus,
    We are on Oracle Apps 11.0.3.
    I'm just curious to know that is there any form available to correct error records in SO_HEADERS_INTERFACE, SO_LINES_INTERFACE, SO_LINE_DETAILS_INTERFACE, SO_PRICE_ADJUSTMENTS_INTERFACE, SO_SALES_CREDITS_INTERFACE, SO_SERVICE_DETAILS_INTERFACE, SO_LINE_ATTRIBUTES_INTERFACE, SO_HEADER_ATTRIBUTES_INTERFACE tables after running orderimport.
    Most thread says that set REQUEST_ID, ERROR_FLAG and INTERFACE_STATUS columns to NULL in each interface tables. Is there any oracle standard form available to accomplish this in Oracle Apps 11.0.3 or 11i?
    Thanks
    -Manish

    Hi Srinu,
    it looks like you got the error message Schedule line &1 &2 is missing in table YVBEP while deleting the sales order.
    It seems, that there are no SAP notes regarding this issue. Do you have this issue with all orders or with a single order?
    If only a single order causes this issue, maybe something was wrong during an update.
    If you get this error for many orders, then custom code (modification, enhancement, user exit in MV45AFZZ, ...) may be the reason for it.
    If you have no custom code in module pool SAPMV45A, then contact SAP for this issue.
    Regards,
    Klaus

  • Open Form not working when called from When-Mouse-Click

    In our application to navigate to other forms we have created a feature where user selects the Forms from a LOV, the form id is returned to the text item and user needs to click the text item.....In the text item the Open form command is given
    This is not working
    The form builder throws an error
    Frm 92100 Connection interupted
    what could be the reason

    Code written in When-Mouse-click
    for item :boo_toolblk.nbt_nxtscr which contains the form id
    DECLARE
    p_name_id PARAMLIST;
    lv_param_name VARCHAR2(8):= :boo_toolblk.nbt_nxtscr;
    lf_next_form_id FORMMODULE;
    BEGIN
    Clear_Item;
    /*Create a parameter list named 'TEMPLT_PARAM'. First
    ** make sure the list does not already exist, then
    ** attempt to create a new list*/
    IF not Id_Null(Get_Parameter_List('TEMPLT_PARAM'))/*Returns a BOOLEAN value if the object ID is available*/
    THEN Destroy_Parameter_List('TEMPLT_PARAM');
    END IF;
    p_name_id:= Create_Parameter_List('TEMPLT_PARAM');
    /*Add a value parameter to an existing Parameter
    ** List */
    Add_Parameter(p_name_id,'templt_nxtscr',TEXT_PARAMETER,lv_param_name);
    Go_Block(Get_Form_Property(:system.current_form,FIRST_NAVIGATION_BLOCK));
    lf_next_form_id := FIND_FORM(lv_param_name);
    :PARAMETER.next_form := lv_param_name;
    IF lf_next_form_id.id is not null
    THEN
    Close_form(lf_next_form_id);
    END IF;
    Add_parameter(p_name_id,'previous_form',TEXT_PARAMETER,:SYSTEM.CURRENT_FORM);
    /* opens another form*/
    Open_Form(lv_param_name,ACTIVATE,NO_SESSION,SHARE_LIBRARY_DATA,p_name_id);
    EXCEPTION
    WHEN FORM_TRIGGER_FAILURE
    THEN RAISE FORM_TRIGGER_FAILURE;
    WHEN OTHERS
    THEN RAISE FORM_TRIGGER_FAILURE;
    END;
    Error :-
    Frm-92100 : Your Connection to the Server was Interrupted
    This may be the result of a networn error or a failure on the server.
    You will need to re-establish

  • How to setup a form that can be called from multiple reports

    Hi,
    I want to be able to call the same form from several different reports. How can I set up the returning pages on the form with a variable so, after the form completes its activity, it will return to the calling page?
    Thank you
    Yannisr

    Hi yannisr
    I keep track of my page history with a collection plus a few named application items.
    On pageload, i push the current page number onto the top of the stack (unless it is already there due to a reload). So any page can return whence it came by branching to the item below the one on top. I have additional logic to recognize when you are traversing "backwards" so that I reduce the depth of the stack each time rather than adding to it indefinitely. For coding convenience, I keep the most recent 3 or 4 pages in named elements as well so that they can be directly addressed. So every page implemnts the Cancel function by redirecting to a page, where the pagenumber is in the application item &<MYAPP>_PAGELAST.
    This is handy for many reasons, I find it more practical than breadcrumbs if you have pages that can be invoked from many places in your application. And this saves you from submitting the current page before executing the branch which saves time and is safer (no need to remember not to update the database!).
    I normally add links to various master record display pages from within my reports, and the technique described above is perfect for that, because you can link from one page to another and another and then cancel, cancel, cancel your way back. I can post the source code if you think it might be useful.
    I am curious to know how you are using your form from within reports. Does it act as some soft of common subroutine to the reports, or is it just a display page for data common to many reports?
    Regards
    CS

  • Urgent: Selection-screen within Form routines

    Hi Experts,
        Within Form routines can i declare selection-screen statements. If no how should i declare my objects on selection screen within form routines bcoz when i declared with selection screen statements within form routines iam getting the error as "Within FORM routines and function modules, the SELECTION-SCREEN statement is not allowed".          
    Regards.
    AADI.

    Hi Aditya,
    U cannot use the Selection-screen in Forms and Function Modules.
    Try to use it in an include program and call it from ur program.
    Reward if Helpful,
    Jagadish.

  • Error while calling ejb service call from BPM service

    Hi,
    We are using the Oracle 11.1.1.5.0
    We are calling ejb service call from BPM service to update the data to Oracle database.
    We are getting the below error when we executing the ejb service call from BPM Service.
    <Error> <EJB> <BEA-010026> <Exception occurred du
    ring commit of transaction Name=[EJB oracle.bpm.bpmn.engine.ejb.impl.BPMNDeliver
    yBean.handleCallback(java.lang.String,java.lang.String,java.lang.String,int,bool
    ean)],Xid=BEA1-45B91984D57960994897(30845116),Status=Rolled back. [Reason=javax.
    transaction.xa.XAException: JDBC driver does not support XA, hence cannot be a p
    articipant in two-phase commit. To force this participation, set the GlobalTrans
    actionsProtocol attribute to LoggingLastResource (recommended) or EmulateTwoPhas
    eCommit for the Data Source = EBSConnection],numRepliesOwedMe=0,numRepliesOwedOt
    hers=0,seconds since begin=1,seconds left=60,XAServerResourceInfo[SOADataSource_
    base_domain]=(ServerResourceInfo[SOADataSource_base_domain]=(state=rolledback,as
    signed=soa_server1),xar=SOADataSource,re-Registered = false),XAServerResourceInf
    o[ArCnTaskForms@EBSConnection@EBSConnection_base_domain]=(ServerResourceInfo[ArC
    nTaskForms@EBSConnection@EBSConnection_base_domain]=(state=rolledback,assigned=s
    oa_server1),xar=weblogic.jdbc.wrapper.JTSEmulateXAResourceImpl@fa5476,re-Registe
    red = false),SCInfo[base_domain+soa_server1]=(state=rolledback),properties=({web
    logic.jdbc.remote.EBSConnection=t3://192.168.10.114:8001, weblogic.transaction.n
    ame=[EJB oracle.bpm.bpmn.engine.ejb.impl.BPMNDeliveryBean.handleCallback(java.la
    ng.String,java.lang.String,java.lang.String,int,boolean)]}),local properties=({w
    eblogic.jdbc.jta.SOADataSource=[ No XAConnection is attached to this TxInfo ]}),
    OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=soa
    server1+192.168.10.114:8001+basedomain+t3+, XAResources={eis/tibjms/Queue, eis
    /activemq/Queue, WLStore_base_domain_BPMJMSFileStore, WLStore_base_domain__WLS_s
    oa_server1, eis/fioranomq/Topic, eis/jbossmq/Queue, eis/Apps/Apps, eis/websphere
    mq/Queue, eis/AQ/aqSample, WLStore_base_domain_SOAJMSFileStore, eis/aqjms/Queue,
    WSATGatewayRM_soa_server1_base_domain, eis/sunmq/Queue, eis/pramati/Queue, SSCo
    nnectionDS_base_domain, eis/tibjms/Topic, eis/tibjmsDirect/Queue, eis/wls/Queue,
    eis/tibjmsDirect/Topic, EDNDataSource_base_domain, eis/wls/Topic, eis/aqjms/Top
    ic, RL3TST_base_domain, ArCnTaskForms@EBSConnection@EBSConnection_base_domain, S
    OADataSource_base_domain, WLStore_base_domain_UMSJMSFileStore_auto_2},NonXAResou
    rces={})],CoordinatorURL=soa_server1+192.168.10.114:8001+base_domain+t3+): weblo
    gic.transaction.RollbackException: Could not prepare resource 'ArCnTaskForms@EBS
    Connection@EBSConnection_base_domain
    JDBC driver does not support XA, hence cannot be a participant in two-phase comm
    it. To force this participation, set the GlobalTransactionsProtocol attribute to
    LoggingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source
    = EBSConnection
    at weblogic.transaction.internal.TransactionImpl.throwRollbackException(
    TransactionImpl.java:1881)
    at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(Se
    rverTransactionImpl.java:345)
    at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTran
    sactionImpl.java:239)
    at weblogic.ejb.container.internal.BaseLocalObject.postInvoke1(BaseLocal
    Object.java:622)
    at weblogic.ejb.container.internal.BaseLocalObject.__WL_postInvokeTxRetr
    y(BaseLocalObject.java:455)
    at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(Sess
    ionLocalMethodInvoker.java:52)
    at oracle.bpm.bpmn.engine.ejb.impl.BPMNDeliveryBean_of8dk6_ICubeDelivery
    LocalBeanImpl.handleCallback(Unknown Source)
    at com.collaxa.cube.engine.dispatch.message.instance.CallbackDeliveryMes
    sageHandler.handle(CallbackDeliveryMessageHandler.java:47)
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(Dispatc
    hHelper.java:140)
    at com.collaxa.cube.engine.dispatch.BaseDispatchTask.process(BaseDispatc
    hTask.java:88)
    at com.collaxa.cube.engine.dispatch.BaseDispatchTask.run(BaseDispatchTas
    k.java:64)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
    utor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
    .java:908)
    at java.lang.Thread.run(Thread.java:662)
    Caused by: javax.transaction.xa.XAException: JDBC driver does not support XA, he
    nce cannot be a participant in two-phase commit. To force this participation, se
    t the GlobalTransactionsProtocol attribute to LoggingLastResource (recommended)
    or EmulateTwoPhaseCommit for the Data Source = EBSConnection
    at weblogic.jdbc.wrapper.JTSXAResourceImpl.prepare(JTSXAResourceImpl.jav
    a:83)
    at weblogic.transaction.internal.XAServerResourceInfo.prepare(XAServerRe
    sourceInfo.java:1327)
    at weblogic.transaction.internal.XAServerResourceInfo.prepare(XAServerRe
    sourceInfo.java:513)
    at weblogic.transaction.internal.ServerSCInfo$1.run(ServerSCInfo.java:36
    8)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
    gWorkManagerImpl.java:528)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    .>
    <12 Oct, 2012 12:34:40 PM IST> <Error> <oracle.soa.bpel.engine.dispatch> <BEA-00
    0000> <failed to handle message
    javax.transaction.xa.XAException: JDBC driver does not support XA, hence cannot
    be a participant in two-phase commit. To force this participation, set the Globa
    lTransactionsProtocol attribute to LoggingLastResource (recommended) or EmulateT
    woPhaseCommit for the Data Source = EBSConnection
    at weblogic.jdbc.wrapper.JTSXAResourceImpl.prepare(JTSXAResourceImpl.jav
    a:83)
    at weblogic.transaction.internal.XAServerResourceInfo.prepare(XAServerRe
    sourceInfo.java:1327)
    at weblogic.transaction.internal.XAServerResourceInfo.prepare(XAServerRe
    sourceInfo.java:513)
    at weblogic.transaction.internal.ServerSCInfo$1.run(ServerSCInfo.java:36
    8)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTunin
    gWorkManagerImpl.java:528)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    >
    <12 Oct, 2012 12:34:40 PM IST> <Error> <oracle.soa.bpel.engine.dispatch> <BEA-00
    0000> <Failed to handle dispatch message ... exception ORABPEL-05002
    Message handle error.
    error while attempting to process the message "com.collaxa.cube.engine.dispatch.
    message.instance.CallbackDeliveryMessage"; the reported exception is: Error comm
    itting transaction:; nested exception is: javax.transaction.xa.XAException: JDBC
    driver does not support XA, hence cannot be a participant in two-phase commit.
    To force this participation, set the GlobalTransactionsProtocol attribute to Log
    gingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = EB
    SConnection
    This error contained an exception thrown by the message handler.
    Check the exception trace in the log (with logging level set to debug mode).
    ORABPEL-05002
    Message handle error.
    error while attempting to process the message "com.collaxa.cube.engine.dispatch.
    message.instance.CallbackDeliveryMessage"; the reported exception is: Error comm
    itting transaction:; nested exception is: javax.transaction.xa.XAException: JDBC
    driver does not support XA, hence cannot be a participant in two-phase commit.
    To force this participation, set the GlobalTransactionsProtocol attribute to Log
    gingLastResource (recommended) or EmulateTwoPhaseCommit for the Data Source = EB
    SConnection
    This error contained an exception thrown by the message handler.
    Check the exception trace in the log (with logging level set to debug mode).
    at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(Dispatc
    hHelper.java:207)
    at com.collaxa.cube.engine.dispatch.BaseDispatchTask.process(BaseDispatc
    hTask.java:88)
    at com.collaxa.cube.engine.dispatch.BaseDispatchTask.run(BaseDispatchTas
    k.java:64)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExec
    utor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor
    .java:908)
    at java.lang.Thread.run(Thread.java:662)
    >
    Could any body help on this issue.It is little bit urgent for us to resolve.
    Thanks in advance.

    Thanks Sudipto Desmukh,
    The link is helpful me to resolve this issue.
    Thanks,
    Narasimha E

  • General Error handling

    I've managed to get myself confused with error handling in Forms 6i.
    If I have a trigger that does a 'commit-form' like this
    commit_form;
    IF NOT form_success THEN
    RAISE form_trigger_failure;
    END IF;
    EXCEPTION
    WHEN OTHERS THEN;
    END;
    and the commit_form fails due to a mandatory field being missing (or similar) then what happens first?
    Does my ON-ERROR trigger fire?
    Does the form_success check fail and raise form_trigger failure?
    Does my exception block get used?
    Or does more than 1 happen??
    I could - of course - find the answer to this through debug but I'm looking for a more generic answer if possible.
    Thanks - Sean.

    What happens first?  The forms validation process runs and informs user that the field is required.
    Does On-Error fire?  Yes, if you have one in your form.
    Does the form_success check fail and raise form_trigger failure?  Yes -- but ONLY if your On-error raises Form_trigger_failure.  If it does not, you have lots of problems.
    Does my exception block get used?  Yes.  Raising Form_trigger_failure causes control to pass to the exception handler.  But I never use an exception handler except when I code SQL commands.
    Now...  After commit_form, you should also check Form_Status.  Read the help topic on the Form_Success built-in.
    My standard C00_Commit program unit does this:
      COMMIT_FORM;
      IF :SYSTEM.FORM_STATUS <> 'QUERY'
      OR NOT FORM_SUCCESS THEN
        RAISE FORM_TRIGGER_FAILURE;
      END IF;
    END;

  • Form routine for sales order adobe forms

    Hi Friends,
    I have a requirement to create z adobe forms for sales order for customized output type.
    When i checked, there is no form routine designed for calling the adobe forms.
    So, i am planning to copy the standard print program which is available for script and smartforms and creating a z form routine to include the function modules for calling the adobe form.
    Can any one please let me know whether have you worked in any of the same kind of situations and my apporach is ok or anything else can be done.
    Thanks & Regards,
    Prabu

    Hello,
    Plz check your caller program for the same and just find out the output type. for that purpose use the Tcode: NACE for finding the output type than proceed accordingly.
    Regards,
    Akg

  • Problem with Windows Form called from SAP

    I have a simple VB.NET windows form that I'm calling from a new menu click event from within SAP.
    The form loads, as expected, when the menu item is clicked, but the form will always load outside of the SAP window and thus cannot be seen by the user unless they see it in their toolbar.
    Has anyone run into this in the past?  I would normally use the UI-API, but this is a form from another program that can't use the UI-API.
    I've also tested this with simple test forms with another test project and get the same results.
    Any ideas?
    Thanks!

    This isn't merely a matter of viewing <i>new</i> windows.
    When the SBO window is active and in full screen mode and one switches, using the task bar, to another application, more often than not the other application's window won't be displayed, or will be displayed but partially. One has to deactivate and re-activate the second window to see it correctly.
    It's the whole bloody SBO graphical engine that's bogus, if you ask me. Talk about reforging <i>that</i> to a profit-oriented company...
    @Marc Roussel:
    BTW, System.Windows.Forms.Form#ShowDialog() is a blocking method, AFAIK. So the following statements won't be executed ere the "dialog"'s closed.
    But this doesn't change the problem. The Activate() and BringToFront() don't help resolve the matter, in my experience. Sometimes the new form will appear on Z-top, sometimes it won't. Or maybe the true problem is that the window <i>is</i> on top, but doesn't get painted.
    ADDENDUM:
    Come to think of it, it might be worth a try to programmatically iconify/deiconify the new window. Something along the lines of:
    Dim f as Form = ...
    f.Show()
    Application.DoEvents()
    f.WindowState = FormWindowState.Minimized
    Application.DoEvents()
    f.WindowState = FormWindowState.Normal
    Application.DoEvents()
    (all in System.Windows.Forms Namespace)

  • Method in custom controller not getting called from view

    Hi experts,
    I have a very strange problem. My web dynpro application works fine on the development portal. i am in the process of deploying to the production portal there is no issue it deploys perfectly without any problems. However i have noticed that some methods in my custom controlller which are called from the view do not run. there is no error message or anything data just doesnt get picked because the execute function which fills the context are in the custom controller methods.
    For some reason the method in the custom controller does not get called even though i'm calling it for the view. I have this problem with two methods. the other methods work without any issue.
    Now i overwrote what i have on production at the moment so am stuck and in need for a solution.
    I have tried undeplying, restarting and re-deploying to no avail. what could be wrong?
    thanks and regards,
    dilanke

    Deal all
    This is the code. basically im calling it from the plug on the detail screen.
    This is the method that doesnt get called anymore.
    wdThis.wdGetGetPurchaseOrderCustController().getPODetail();
    The reportSuccess() works fine.
    regards,
    Dilanke
      public void onPlugFromListView(com.sap.tc.webdynpro.progmodel.api.IWDCustomEvent wdEvent )
        //@@begin onPlugFromListView(ServerEvent)
         try
             String po = wdThis.wdGetGetPurchaseOrderCustController().wdGetContext().currentContextElement().getPO_Id();
              wdContext.currentZGETPODETAILS_INPUTElement().setI_Ebeln(po);
              wdThis.wdGetGetPurchaseOrderCustController().getPODetail();
              wdComponentAPI.getMessageManager().reportSuccess(po);
              String fileName = "F://XML_Downloads//" + po + ".xml";
              IWDResource resource = WDResourceFactory.createResource(new FileInputStream(new File(fileName)),fileName,WDWebResourceType.XML,true);
              wdContext.currentContextElement().setXml_Resource(resource);
         catch(Exception e)
              e.printStackTrace();     
        //@@end

  • System Condition is not picked from TL while generating calls from Plan

    Hi,
    I've marked System condition field at work order header as required.
    However, the system doesn't pick up that field from Task List when generating call from maint plan.. that would still be not populated therefore preventing e.g. from bulk release..
    Do you know why is that? looks like a system bug or so..

    Hi Paul,
    I have to revive that topic..
    defining system condition as decribed before seems to be working only for work order being called from maintenance plan
    on the other hand, for notification generated from plan and then transformed to work orders defining system condition at task list details at item level  does not work..
    also ,defining system condition at TL header doesn't help (like in order example)..
    at the same time, defining system condition at operation level are getting transferred to order with no problem..
    do you have an idea?
    Thanks in advance

  • Master detail form Error in mru internal routine: ORA-20001

    Hi,
    i created a master-detail form with apex standrad wizard.
    Master e datail are on the same page.
    All works fine.
    My detail form contain some fields of my detail table.
    Now i added a link on detail form for call a form with all fields of my detail table.
    The link work fine.
    When i try to add row or update my detail form i receive the error
    Error in mru internal routine: ORA-20001: Error in MRU: row= 1, ORA-20001: ORA-20001: Current version of data in database has changed since user initiated update process. current checksum = "D472A2BF636CA11122F196B8A32B3DC8", item checksum
    Any help?
    Thanks in advance
    Lukx

    Lukx,
    I've just reproduced your what I believe you wanted and didn't receive any errors. Here are the steps I took.
    1) Used the wizards to create a Master Detail form (with Detail edit on the same page as the master and only showing 2 of the detail columns)
    2) Used the wizard to create a FORM ON A TABLE for my detail table allowing the user to edit all detail columns
    3) Created a "column link" column on the detail form of the Master Detail form which links to the FORM ON A TABLE, passing across the ID of the detail record.
    When I do this, everything seems to work perfectly as expected.
    Is there something I'm missing in the steps you performed to create your scenario?
    Thanks
    Doug
    http://www.sumneva.com

Maybe you are looking for

  • List of users who have access to multiple mailboxes

    Hi, I got the list of around three hundred generic mailboxes Please help me with the command which can help me to get the report of all users who has access on those  generic mailbox.

  • Write-off the MM inventory stock

    Dear expert, I want write-off the MM inventory stock which is expired, please give the step & procedure. Regards, PK

  • Remove timestamp on iMessage

    How do I remove the timestamp on iMessage for iOS 8? For iOS 7 I was able to delete a text message and it would bring the text message down on my list to the last date of the last message. On this newer version, I delete a text message but that conta

  • Using Hue Saturation to change color of shirt not working

    In CS5, I tried to make a selection of a white shirt and used Image > Adjustment >Hue Saturation, though when I drag the Hue slider, nothing happens, only a little bit of pixels of color change. Why is this. Thanks.

  • Guys urgent....

    hi i have been working on an object from last two weeks to get the latest price...of sales orders the thing is even though the price for condition items has been changed it wont get updated in the Sales orders unless new pricing fot the document is d