Workflow error: method of object cannot be executed

HI,
   I extended mkpf to zmkpf and added a method to it.
   when ran the workflow.I am getting the following errors.
Notification of completion cannot be generated                                 
Problems occurred when generating a mail                                       
Error '9' when calling service 'SO_OBJECT_SEND'                                
Error handling for work item 000000440554                                      
Work item 000000440554: Object ZMKPF method GET_PR_MAILID cannot be executed   
Object does not exist                                                          
Object does not exist             
my binding to task and method:
zmkpf  - WIOBJECT_ID  export
mailid import.
Please suggest how i can fix this error.
Thanks in advance,
Nuthan.

Hi Nuthan
It's difficult to say what out access to the concrete issue.
but, make sure that the correct object is binded in to the task and that you do not have any bindings from the task to the method.
But if its working in foreground but not in background it could be because there are some dialog steps in the task, have you checked if you're getting any shortdumps.
if not you can try to debug your background task with this little trick:
1. Create an endless loop in the start of your method, make sure you can break out of it using the debugger (while X is initial, and then set X to 1 in the debugger)
2. In sm50 your now able to find the running process, from in here you can debug the process (I don't remember the menu)
3. After debug remember to delete the loop again
Regards
Morten Nielsen

Similar Messages

  • DTW Update price error - Method '~' of object '~' failed65171

    Hi,
    We recently updraded from SBO 8.82 to SBO 9.0 PL 08 HF1
    Before the upgrade we never had this issue, but now I get this error message while trying to update prices through DTW (version 88.1.4): Method '~' of object '~' failed65171
    ParentKey LineNum PriceList Price Currency AdditionalPrice1 AdditionalCurrency1 AdditionalPrice2 AdditionalCurrency2
    ItemCode LineNum PriceList Price Currency AddPrice1 Currency1 AddPrice2 Currency2
    135109-1 28 29 40 SEK   
    Itemcode is 135109-1
    Linenum is 28
    PriceList is 29
    Price is 40
    Currency is SEK
    I have done this several times before the updrage without any problems, but now I'm stuck.
    Any ideas what we can try?
    Regards
    Kjetil Sandvik

    Hi,
    Please check:
    This error means that your Obscommon user is corrupt and you cannot connect to the SBO-Common database to download the OBServer.dll that is stored in the temporary directory.
    For more information, see SAP Note 858475, 642564, or 614946
    Thanks & Regards,
    Nagarajan

  • Front-end functions cannot be executed in the background in SM37

    Hi ,
    I have developed a BDC program for Tcode HRUSER . The program is working fine in Frontend but when Executed in Background through SM37 gives a error -:
    "Front-end functions cannot be executed in the background".
    I am not using any function like GUI_DOWNLOAD or anything like that .
    Thanks
    Nikhil Arya.

    Hi ,
    No , the program is not taking any inputs from the user .
    when i am executing the program in background mode it is just showing the messages at the end which i am writing in the program for eg:
    "creating a user for employee 2306328".
    So , only the list of messages comes at the end .
    Thanks
    Nikhil Arya.

  • Repaired objects cannot be included in dev./correction QC1K922873

    Hi All,
    We are in the Process of deleting Queries from Quality system and Transpoting the request to Production System so that its not necessary to delete them manually in Prodiuction system.so when i try to include an Object(  COMPID of Query,R3TR,ELEM) in a dev./correction request,getting error as 'Repaired objects cannot be included in dev./correction QC1K922873.
    <b>Error message:</b>
    Repaired objects cannot be included in dev./correction QC1K922873
    Message no. TK180
    Diagnosis
    In developments/corrections, it is only possible to lock and edit those objects whose original version is located in the logon system.
    The object list of your correction contains the object R3TR ELEM 61TU4TUP5S2463L4TY0JQ8AAE. This object is only available as a copy, its original is located in another SAP System.
    System response
    The function terminates.
    Procedure
    Delete the object from the correction before you repeat this function.
    Use a repair for changes to this object.
    You can assign repairs and corrections to the same request to ensure, for example, that they are part of the same transport.
    For more information on the Transport Organizer, see the SAP Library under Basis Components -> Change and Transport System.
    Can anybody help me out?
    Thanks

    'Source system' is the system where an object was originally created (before being transported to other systems). It is a field in the directory table TADIR (you can check this entry in SE16 on this table), this field stores the 'source system' value for each object.
    You may be able to change it in SE03 (change object directory entry option), if not, you can probably write an ABAP to update TADIR table record for this object.
    However, the third option I mentioned (creating a 'transport of copies' type request) would be the easiest one, if that works you do not need to do any of the above.

  • EWAF 016Due to a communications error method GET_CHQ_BOUNCE_INFO could...

    Hello Everyone,
    I have developed a generic sync appln. After deployment, on execution i get the foll error/return message..
    "<b>EWAF 016Due to a communications error method GET_CHQ_BOUNCE_INFO could not be executed</b>"
    I have done the mapppings in the table BWAFMAPP and MEMAPPDEST.
    I have also tested the RFC connection and also tried remote logon. Alls working fine.
    My wrapper is also remote-enabled.
    To check the RFC connection i have also tried calling the wrapper which is in the b/e from a test FM in the middleware. Even that is working.
    The configuration I am using is :-
    MI 25 SP 13 Patch 00
    WAS release 640
    b/e R/3 release 700(ECC 6.0)
    Kindly help me with this.
    Thanks & Regards,
    Saurabh.

    Hi Craig,
    I was actually not using the f4 help of the
    IF_BSP_SERVICES class. Now I want to implement this as I have got many fields on my page. But I am getting the above mentioned error while doing this. The Code in OnInitialization() is:
    data: dataref1 type ref to data.
    data:wa_r8t_prog type ZR8T_S_API_PROG_H.
    get reference of wa_r8t_prog-ZR8CPRGTY into dataref1.
    try.
    call method runtime->ddic_utils->get_simple_helpvalues
    exporting
    data_object_ref = dataref1
    changing
    helpvalue_tab = t_vallist.
    catch cx_bsp_services.
    endtry.
    But I have a search help attached to 'ZR8T_S_API_PROG_H-ZR8CPRGTY' field
    My 'ZR8T_S_API_PROG_H' structure definition is as follows:
    .INCLUDE     ZR8T_REBATE_PROG          0     0     Rebate Program
    ZR8CPRGID     /BIC/OIZR8CPRGID     CHAR     32     0     Rebate Program ID
    COMP_CODE     /BI0/OICOMP_CODE     CHAR     4     0     Company Code
    ZR8CPRGTY     /BIC/OIZR8CPRGTY     CHAR     5     0     Program type
    Can I get f4 help from search help exits or do I have to use only value tables?
    Regards
    Tejaswini
    Message was edited by: Tejaswini Das

  • DTW - Method of object failed

    Hi
    I'm trying do do an import of AP Credit Notes and getting the error 'Method '' of object '' failed 65171'.
    No matter what I try - can't get past this one. Has anyone seen this before?
    Regards
    Danie

    Hi
    I have the following columns in my
    Header:
    Record Key - 1, 2, 3, ......
    CardCode - V-TRA007......
    Comments - Credit Inv no 6316 .....
    DocCurrency - R
    DocDate 20110125
    DocType - dDocument_Items
    Lines:
    ParentKey - 1, 2, 3,3, 4, 5,5,5, 6.......
    No LineNum as this is new import not update - Although it makes no diff to the error I'm getting
    BaseEntry - which is DocEntry of PCH1 (Although DocNUm and DocEntry are the same in both tables)
    BaseLine - corresponds to the line no's in PCH1
    BaseType - 18
    CostingCode - PC
    ItemCode - SFEE_Accomod
    Price - 171.05
    Quantity - 1
    VatGroup - I0
    Warehouse - FCS-FIND
    Regards
    Danie

  • Method '~' of object '~' failed in Offline Planning

    Hi,
    When the members in a dimension are set to '~' in Essbase, Offline Planning will prompt an error "Method '~' of object '~' failed" when we try to select that dimension as page members. Is there a way to overcome this problem?
    Thanks in advance.

    Hi Caillen,
    1. It hapen to any user randomly. It is not for perticuler user/users.
    2. Error is thrown at server side.
    3. Below is the code shown in the error desciption.
    Public Sub ActiveBookmarkSet(iIndex As Integer, Optional szBookmark As String = "")
        On Error GoTo ActiveBookmarkSetErr
        Dim iErrorTimes As Integer
        iErrorTimes = 0
        If Not moBookmarks Is Nothing Then
            If iIndex > 0 Then
                If miActiveBookmarkCount >= iIndex Then
                    Set moBookmark = moBookmarks.Item(iIndex)
                    mszActiveBookmark = moBookmark
                End If
            ElseIf szBookmark <> "" Then
                If moBookmarks.Exists(szBookmark) = True Then
                    Set moBookmark = moBookmarks.Item(szBookmark)
                    mszActiveBookmark = moBookmark
                End If
            End If
        Else
            mobjRevision.objError.RaiseError CWORDERR_BASE_NoActiveBookmarks, App.EXEName & "::CGCDocWordApp::ActiveBookmarkSet", ""
        End If
        Exit Sub
    ActiveBookmarkSetErr:
        iErrorTimes = iErrorTimes + 1
        If iErrorTimes < 6 Then
            Resume
        End If
        Call mobjRevision.objError.RaiseError(Err, App.EXEName & "::CGCDocWordApp:ActiveBookmarkSet Method", Err.Description)
    End Sub

  • Original object cannot be replaced

    Hi Experts,
    I would like to know how can I check the issue below:
    with SAPKB70015 there is a new authorization field delivered, called
    R3TR AUTH TCODE. But this object already exists on this system.
    object catalog: PGMID R3TR
    OBJECT AUTH
    OBJ NAME TCODE
    KORRNUM
    SRCSYSTEM DEV <---
    AUTHOR AMENON
    SRCDEP
    DEVCLASS ZEPOS
    This object was created on the development system. Therefore it can't be overwrittenThe authorisation field TCODE is used in the authorisation object
    Z_EPOS_REP which belongs to object class ZEPS.
    Please clarify if this authorisation field can be moved to the
    customer namespace.
    Thanks, Kurtt

    Hi Valle,
    Please check the resolution below its works fine for me....
    For the dumps,please try the solution in note 1700109.
    For the error R3TRAUTHREPORT Original object Cannot be replaced,
    kindly use report 'Change Object Directory Entries' from SE03 tcode for the
    following object to change the Original system entry to SAP:
    R3TR AUTH REPORT
    Regards,
    Veeram Reddy.
    good luck..

  • 'sp_replicationdboption' cannot be executed within a transaction

    I created a merge replication for a publisher (e.g. Pubisher1). Then I want to add a new aticle. Therefore, beside many other line of code (see "More Detail on above") within a db trigger I have line:
    exec sp_replicationdboption @dbname = 'Publisher1',    @optname = 'merge publish', @value = 'true';
    But I keep getting this error:
    "The procedure 'sp_replicationdboption' cannot be executed within a transaction.
    Msg 14013, Level 16, State 1, Procedure sp_MSrepl_refreshsubscriptions, Line 60
    This database is not enabled for publication."
    I am not sure what is going on?
    More Detail on above:
    What I am trying to do is to add an article (e.g. MyTable) to my publication (e.g. Pub1). I tried many different combination of options. My latest version of code is as follow:
    exec sp_changemergepublication 'Pub1',@property='allow_anonymous',@value='true';
    exec sp_changemergepublication 'Pub1', @property='allow_subscriber_initiated_snapshot', @value='true';
    exec sp_changemergepublication 'Pub1', @property='allow_push', @value='true', @force_invalidate_snapshot = 1, @force_reinit_subscription = 1;
    ---source of errors is these two lines (as stated above):           
    exec sp_replicationdboption @dbname = 'Publisher1',    @optname = 'merge publish', @value = 'false';
    exec sp_replicationdboption @dbname = 'Publisher1',    @optname = 'merge publish', @value = 'true';
    EXEC sp_addmergearticle @publication = 'Pub1', @article = MyTable, @source_object = MyTable, @force_invalidate_snapshot = 1;
    EXEC sp_mergearticlecolumn @publication = 'Pub1', @article = MyTable, @force_invalidate_snapshot = 1, @force_reinit_subscription = 1;
    exec sp_link_publication @publisher = '7-PC' ,@publisher_db = 'Publisher1' , @publication =  'Pub1', @security_mode =  2, @login =  'sa' ,  @password = '*';
    exec sp_refreshsubscriptions 'Pub1';
    exec sp_startpublication_snapshot 'Pub1'
    Can anyone help me on that? If you need even more details please let me know.
    Thanks in advance

    My question is why are you disabling merge publication on this database and then re-enabling it. From:
    From http://msdn.microsoft.com/en-us/library/ms188769.aspx
    This procedure creates or drops specific replication system tables, security accounts, and so on, depending on the options given. Sets the corresponding category bit in the
    master.sysdatabases system table and creates the necessary system tables.
    This is not how you go about adding an article to a merge publication, remove these two steps.
    If you are interested in being able to roll back the addition of an article to a publication you should check for an error and if you get one remove the article - however even that does not make a lot of sense because sp_addmergearticle - either succeeds
    or it fails - so it is "transactional" in itself.
    looking for a book on SQL Server 2008 Administration?
    http://www.amazon.com/Microsoft-Server-2008-Management-Administration/dp/067233044X looking for a book on SQL Server 2008 Full-Text Search?
    http://www.amazon.com/Pro-Full-Text-Search-Server-2008/dp/1430215941

  • Object CL_SWF_XI_MSG_BROKER method SEND_SYNCHRON cannot be executed

    Hi there,
    We are getting this error in our BPM:
    Object CL_SWF_XI_MSG_BROKER method SEND_SYNCHRON cannot be executed
    while sending a message synchronously. This doesn't happen for all the sync send, but I see sometimes. Why do we see this inconsistency in the sync send step of the BPM?
    Has anyone encountered this problem, and fixed it? Your help is greatly appreciated.
    Thanks a lot.
    Karma

    Hi
    First of all check the mapping i.e transformation step in the BPM (Sync mapping). This you can check from the workflow log. Check all these interface mappings are using correct message type and interfaces
    Have a look into these SAP notes-830803,710445
    Regards
    krishna

  • Object CL_SWF_XI_MSG_BROKER method CALL_TRANSFORMATION cannot be executed

    Hi all,
    I am getting error in one of the BPM mapping steps.
    The error description is as below:
    Error handling for work item 000000013183
    Work item 000000013186: Object CL_SWF_XI_MSG_BROKER method CALL_TRANSFORMATION cannot be executed
    com/sap/xi/tf/_MM_352_Validated_To_353_File_com.sap.aii.utilxi.misc.api.BaseRuntimeExceptionRunti
    The mapping works fine for a set of data.
    But when the validations fail for another set of data it gives the above error.
    Please let me know if you have info on this error.
    Best regards,
    Thangesh

    Hi,
    The scenario is File<->XI->IDoc.
    In BPM, we do validations & if the validation fails, the file is sent back to the Filerserver.
    The File format is a nested structure.
    The File format is as below:
       >Header record
       >Customer
       >Address
       >Address
       >Partner details
            >>Address
            >>Address
       >Partner details 
           >>Address
           >>Address
       >Trailer record
    <b>The mapping works fine for a set of data:</b>
    The mapping works fine if the File structure contains single record per structure/node.
    <b>But the validations fail for another set of data & it gives the above error:</b>
    But the mapping fails if the File structure is complex or nested structure. i.e., more than one record per structure.
    could you kindly suggest how to handle this error?
    best regards,
    Thangesh

  • SAP workflow -SAP error WL210 -Error triggering default method for object &

    Hi Experts,
    User is encountered with the error message "Error triggering default method for object &" when he is performing approval action in SES workitem .
    Could you please advise me how to avoid this issue.
    Thanks in advance for your valuable help.
    Rajani
    Edited by: Rajani SAPABAP on Sep 13, 2011 4:50 PM

    Hi Rajani,
    I think that it's an authorization issue.
    Please check if u find which authorization object is violated in SU53.
    Regards,
    Asit

  • Object BUS2030 method CREATEQUOTATION can't be executed

    Hi, am modifying the standard Workflow template 'AD_SD_AG' (WS23000025).
    <b>In my User-ID</b>:
    When i create any Inquiry (via IDOC), the BUS2030-Created event triggers this workflow and Quotationis created by the method 'CEATEQUOTATION'
    <b>in End Users ID:</b>
    when the same process is carried out, Workflow is end up with an error as mentioned above.
    The errors are like:
    1) Object BUS2030 method CREATEQUOTATION cannot be executed
    2) Exception '1001' is not defined for method 'CREATEQUOTATION' object type
        BUS2030.
    I am totally confused why it is so happening, Executing in one users ID and not in the another User ID.
    Also please give me suggestions how to handle Exceptions for the BUS2030-CREATEQUOTATION method in the Workflow.
    Thanks & regards in advance.
    Any replys are rewarede

    Hi mike,
    I checked with SU53, the authorization object is missing for that user.  I need to check this still, if it works once object is assigned to that user.
    In workflow am getting the error like below, please suggest me on this:
    Exception 1001 is not defined for the method CREATEQUOTATION object type BUS2030.
    regards
    Manju

  • Error: "The search cannot be executed because the table has pending changes that would be lost."

    Hello,
    I'm working a developing an OA page that will displays the contents of an Oracle table and allows the user to update records in a table as needed.
    When I hit submit button to save the changes in the update page, the control goes back to main page (where all the table records are displayed). It displays the updated record with the new information.However when I hit "Go" button on the mainPG, I get the error "The search cannot be executed because the table has pending changes that would be lost. and the changes are not committed.
    ANy suggestions on where I should look will be greatly appreciated.
    Posting code for my controller
    =======================
              if ( pageContext.getParameter("saveRate") != null )
              personam.invokeMethod("saveRateToDatabase");
    Code from my AM
    =============
        public void saveRateToDatabase()
          getOADBTransaction().commit();
          System.out.println("40--After commit has been executed");
    Code from my VORowImpl
    ===================
    package cggv.oracle.apps.gl.server;
    import oracle.apps.fnd.framework.server.OAViewRowImpl;
    import oracle.jbo.domain.Date;
    import oracle.jbo.domain.Number;
    import oracle.jbo.server.AttributeDefImpl;
    // ---    File generated by Oracle ADF Business Components Design Time.
    // ---    Custom code may be added to this class.
    // ---    Warning: Do not modify method signatures of generated methods.
    public class xxCggGlRatesVORowImpl extends OAViewRowImpl {
        public static final int RATEID = 0;
        public static final int FROMCURRENCY = 1;
        public static final int TOCURRENCY = 2;
        public static final int FROMCONVERSIONDATE = 3;
        public static final int TOCONVERSIONDATE = 4;
        public static final int USERCONVERSIONTYPE = 5;
        public static final int CONVERSIONRATE = 6;
        public static final int MODEFLAG = 7;
        /**This is the default constructor (do not remove)
        public xxCggGlRatesVORowImpl() {
        /**Gets the attribute value for the calculated attribute RateId
        public Number getRateId() {
            return (Number) getAttributeInternal(RATEID);
        /**Sets <code>value</code> as the attribute value for the calculated attribute RateId
        public void setRateId(Number value) {
            setAttributeInternal(RATEID, value);
            //populateAttribute(RATEID, value);
        /**Gets the attribute value for the calculated attribute FromCurrency
        public String getFromCurrency() {
            return (String) getAttributeInternal(FROMCURRENCY);
        /**Sets <code>value</code> as the attribute value for the calculated attribute FromCurrency
        public void setFromCurrency(String value) {
            setAttributeInternal(FROMCURRENCY, value);      
        /**Gets the attribute value for the calculated attribute ToCurrency
        public String getToCurrency() {
            return (String) getAttributeInternal(TOCURRENCY);
        /**Sets <code>value</code> as the attribute value for the calculated attribute ToCurrency
        public void setToCurrency(String value) {
            setAttributeInternal(TOCURRENCY, value);
        /**Gets the attribute value for the calculated attribute FromConversionDate
        public Date getFromConversionDate() {
            return (Date) getAttributeInternal(FROMCONVERSIONDATE);
        /**Sets <code>value</code> as the attribute value for the calculated attribute FromConversionDate
        public void setFromConversionDate(Date value) {
            setAttributeInternal(FROMCONVERSIONDATE, value);      
        /**Gets the attribute value for the calculated attribute ToConversionDate
        public Date getToConversionDate() {
            return (Date) getAttributeInternal(TOCONVERSIONDATE);
        /**Sets <code>value</code> as the attribute value for the calculated attribute ToConversionDate
        public void setToConversionDate(Date value) {
            setAttributeInternal(TOCONVERSIONDATE, value);       
        /**Gets the attribute value for the calculated attribute UserConversionType
        public String getUserConversionType() {
            return (String) getAttributeInternal(USERCONVERSIONTYPE);
        /**Sets <code>value</code> as the attribute value for the calculated attribute UserConversionType
        public void setUserConversionType(String value) {
            setAttributeInternal(USERCONVERSIONTYPE, value);
        /**Gets the attribute value for the calculated attribute ConversionRate
        public Number getConversionRate() {
            return (Number) getAttributeInternal(CONVERSIONRATE);
        /**Sets <code>value</code> as the attribute value for the calculated attribute ConversionRate
        public void setConversionRate(Number value) {
            setAttributeInternal(CONVERSIONRATE, value);
        /**Gets the attribute value for the calculated attribute ModeFlag
        public String getModeFlag() {
            return (String) getAttributeInternal(MODEFLAG);
        /**Sets <code>value</code> as the attribute value for the calculated attribute ModeFlag
        public void setModeFlag(String value) {
            setAttributeInternal(MODEFLAG, value);      
        /**getAttrInvokeAccessor: generated method. Do not modify.
        protected Object getAttrInvokeAccessor(int index,
                                               AttributeDefImpl attrDef) throws Exception {
            switch (index) {
            case RATEID:
                return getRateId();
            case FROMCURRENCY:
                return getFromCurrency();
            case TOCURRENCY:
                return getToCurrency();
            case FROMCONVERSIONDATE:
                return getFromConversionDate();
            case TOCONVERSIONDATE:
                return getToConversionDate();
            case USERCONVERSIONTYPE:
                return getUserConversionType();
            case CONVERSIONRATE:
                return getConversionRate();
            case MODEFLAG:
                return getModeFlag();
            default:
                return super.getAttrInvokeAccessor(index, attrDef);
        /**setAttrInvokeAccessor: generated method. Do not modify.
        protected void setAttrInvokeAccessor(int index, Object value,
                                             AttributeDefImpl attrDef) throws Exception {
            switch (index) {
            case RATEID:
                setRateId((Number)value);
                return;
            case FROMCURRENCY:
                setFromCurrency((String)value);
                return;
            case TOCURRENCY:
                setToCurrency((String)value);
                return;
            case FROMCONVERSIONDATE:
                setFromConversionDate((Date)value);
                return;
            case TOCONVERSIONDATE:
                setToConversionDate((Date)value);
                return;
            case USERCONVERSIONTYPE:
                setUserConversionType((String)value);
                return;
            case CONVERSIONRATE:
                setConversionRate((Number)value);
                return;
            case MODEFLAG:
                setModeFlag((String)value);
                return;
            default:
                super.setAttrInvokeAccessor(index, value, attrDef);
                return;
        /**Gets xxCggGlRatesEO entity object.
        public xxCggGlRatesEOImpl getxxCggGlRatesEO() {
            return (xxCggGlRatesEOImpl)getEntity(0);

    Hi,
    Check these links:
    Oracle Apps: Search cannot be executed because the table has pending changes that would be lost
    Re: Getting error in search page search cannot be executed
    http://jneelmani.blogspot.in/2009/11/oaf-search-cannot-be-executed-because.html
    --Sushant

  • "Error:The search cannot be executed because the table has pending changes that would be lost", after DELETE

    Good day,
    On Search Page, I have searched for the record(s) then deleted a record and got confirmation message i.e. Record has deleted. Next when I search for any record I'm getting below error.
    Error
    The search cannot be executed because the table has pending changes that would be lost.
    Could you please help me to fix this issue. Your response is highly appreciated.
    Item properties:
    Item Style : Image
    Action Type: Fire Action
    Event : delete
    Below is the code using in CO and AM
    Controller (processFormRequest):
    if ("delete".equals(pageContext.getParameter(EVENT_PARAM)))
              // The user has clicked a "Delete" icon so we want to display a "Warning"
              // dialog asking if she really wants to delete the employee. Note that we
              // configure the dialog so that pressing the "Yes" button submits to
              // this page so we can handle the action in this processFormRequest( ) method.
              String visit_id = pageContext.getParameter("visit_id");
              String employeeName = pageContext.getParameter("last_name") + ", " + pageContext.getParameter("first_name");
              MessageToken[] tokens = { new MessageToken("EMP_NAME", employeeName)};
              OAException mainMessage = new OAException("FND", "XXXX_EMP_DELETE_WARN", tokens);
              // Note that even though we're going to make our Yes/No buttons submit a
              // form, we still need some non-null value in the constructor's Yes/No
              // URL parameters for the buttons to render, so we just pass empty
              // Strings for this.
              OADialogPage dialogPage = new OADialogPage(OAException.WARNING,
                mainMessage, null, "", "");
              // Always use Message Dictionary for any Strings you want to display.
              String yes = pageContext.getMessage("AK", "FWK_TBX_T_YES", null);
              String no = pageContext.getMessage("AK", "FWK_TBX_T_NO", null);
              // We set this value so the code that handles this button press is
              // descriptive.
    dialogPage.setOkButtonItemName("DeleteYesButton");
              // The following configures the Yes/No buttons to be submit buttons,
              // and makes sure that we handle the form submit in the originating
              // page (the "Employee" summary) so we can handle the "Yes"
              // button selection in this controller.
    dialogPage.setOkButtonToPost(true);
    dialogPage.setNoButtonToPost(true);
    dialogPage.setPostToCallingPage(true);
              // Now set our Yes/No labels instead of the default OK/Cancel.
    dialogPage.setOkButtonLabel(yes);
    dialogPage.setNoButtonLabel(no);
              // We need to keep hold of the employeeNumber and employeeName.
              // The OADialogPage gives us a convenient means
              // of doing this. Note that the use of the Hashtable is 
              // most appropriate for passing multiple parameters. See the OADialogPage
              // javadoc for an alternative when dealing with a single parameter.
              java.util.Hashtable formParams = new java.util.Hashtable(1);
    formParams.put("visit_id", visit_id);
    formParams.put("empName", employeeName);
    dialogPage.setFormParameters(formParams);
              pageContext.redirectToDialogPage(dialogPage);
        else if (pageContext.getParameter("DeleteYesButton") != null)
              // User has confirmed that she wants to delete this employee.
              // Invoke a method on the AM to set the current row in the VO and
              // call remove() on this row.
              String employeeNumber = pageContext.getParameter("visit_id");
              String employeeName = pageContext.getParameter("empName");
              Serializable[] parameters = { employeeNumber };
             // OAApplicationModule am = pageContext.getApplicationModule(webBean);
    am.invokeMethod("deleteEmployee", parameters);
              // Now, redisplay the page with a confirmation message at the top. Note
              // that the deleteEmployee() method in the AM commits, and our code
              // won't get this far if any exceptions are thrown.
              MessageToken[] tokens = { new MessageToken("EMP_NAME", employeeName) };
              OAException message = new OAException("FND",
                "XXXX_EMP_DELETE_CONFIRM", tokens, OAException.CONFIRMATION, null);
    pageContext.putDialogMessage(message);
    Application Module:
      public void deleteEmployee(String visit_id)
            // First, we need to find the selected employee in our VO.
            // When we find it, we call remove( ) on the row which in turn
            // calls remove on the associated EmployeeEOImpl object.
            int empToDelete = Integer.parseInt(visit_id);
              OAViewObject vo = (OAViewObject)getNonEmployeesSummaryVO1();
        NonEmployeesSummaryVORowImpl row = null;
            // This tells us the number of rows that have been fetched in the
            // row set, and will not pull additional rows in like some of the
            // other "get count" methods.
           int fetchedRowCount = vo.getFetchedRowCount();
            // We use a separate iterator -- even though we could step through the
            // rows without it -- because we don't want to affect row currency.
            RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
    if (fetchedRowCount > 0)
              deleteIter.setRangeStart(0);
              deleteIter.setRangeSize(fetchedRowCount);
              for (int i = 0; i < fetchedRowCount; i++)
                row = (NonEmployeesSummaryVORowImpl)deleteIter.getRowAtRangeIndex(i);
                // For performance reasons, we generate ViewRowImpls for all
                // View Objects. When we need to obtain an attribute value,
                // we use the named accessors instead of a generic String lookup.
                // Number primaryKey = (Number)row.getAttribute("EmployeeId");
                Number primaryKey = row.getVisitId();
                if (primaryKey.compareTo(empToDelete) == 0)
                  // This performs the actual delete.
                  row.remove();
                    getTransaction().commit();
                  break; // only one possible selected row in this case
            // Always close the iterator when you're done.
            deleteIter.closeRowSetIterator();
          } // end deleteEmployee
    Thanks,
    Ravi

    Hi
    Check this link Getting error in search page search cannot be executed
    Regards,
    Dilip

Maybe you are looking for