Deleting Customer Records

Is there a way to delete a mailing list AND all associated customer records?

Hi,
Let me give you some more details then, if further questions arised. I offerd an almost-ready-to-use code for the FM mentioned in the initial question. But the addition of
EXCEPTIONS
    ERROR_MESSAGE = 1.
works for every function module you could use. In my case the FM PRELIMINARY_POSTING_FB01 that I was calling from my custom code, used to raise a message type 'E' in some cases. But I did not want that message to interrupt the execution of my code. Instead of that, I caught the error and handled it myself. And ERROR_MESSAGE = 1 got the job done. So I think you should give it a try
Hope this helps,
Grzegorz

Similar Messages

  • Not allowing block or delete of Customer record via tcode VD02/XD02

    Hi All,
    I want to check on the process of NOT allowing block or delete of a customer record thru tcode VD02/XD02. From a business point, we would like to only use VD05/XD05 to block a customer record and VD06 to mark for deletion. This will allow users to create/change the record using VD02/XD02 and different set of users to have control block/delete.
    Any inputs are appreciated. Thanks.
    Naren

    Hi,
    You will have to discuss this with your Basis team and check if there is any authorization object for that particular functionality in the Transaction.
    As far as i know i dont think it is possible, you can only restrict the users from using particular transactions but not from using a particular functinality in a transaction.
    The best option is to assign alll the Master Data related responsibility to a limited and resposible group of users or discuss with your technical team if they can do some restricting.

  • Customized delta data source for deleting data record in the source system.

    Hello Gurus,
           there is a customized delta data source,  how to implement delta function for deleting data record in the source system?
    I mean if there is record deleted in the source sytem, how to notify SAP BW system for this deleting change by this customized delta
    data source?
    Many thanks.

    Hi,
    when ever record deleted we need to write the code to insert the record in  Z table load this records into BW in a cube with similar structure.while loading into this cube multiply the Keyfigure by -1.
    add this cube in the Multi Provider.The union of the records in the orginal cube and the cube having deleted records will result in zero vale and will not be displayed in report .
    Regards,

  • Deleting a potential customer record from SAP

    Hello
    Does anyone know how to delete a potential customer that has been created in SAP. As once you have created it, if you dont transfer it into a proper customer record, then the potential customer record will sit there is SAP. This then takes up space. So I wanted to know whether there is a way deleting the potential record.
    Thanks
    Bindi

    Hello
    A potential customer is one that has been created and their account group is set to 'Potential Customer'. This means at this stage that no transaction can be carried out against the customer as they have not been transfer into a proper customer account. A credit check, etc is then carried out on the customer, and if successful then customers account group is changed from 'Potential Customer' to 'Sold to Party'  for example. However if the record is not transfered and is still in the system as a Potential Customer then we need to be able to remove these.
    Is there way to delete these. I tried the above methods however was not successful.
    Regards
    Bindi

  • How to delete a record in custom form

    Hi,
    I got a requirement,
    If a form has 'n' records with start & end dates, such that start date of new record should be last record end date + 1.
    Now if the user tries to delete a record between first and last record, it should allow him to delete but when he tries to save it should not allow.
    Only way he can delete is either he can create a new record with the same dates or he can adjust remaining record dates such that startdate of new record should be last record end date + 1.
    I'm running out of ideas, any suggestion is appreciated.

    Hi
    it should allow him to delete but when he tries to save it should not allow.Play with the KEY-COMMIT Trigger Which is the Best i can see to STOP or PROCESS any Validations during the saving process according to the conditions u specify using...
    RAISE FORM_TRIGGER_FAILURE;Prevents the user from Saving in KEY-COMMIT Trigger it's the yellow-black Floppy Disk u use for saving records in the Form's Tool Bar..
    Hope this helps...
    Regards,
    Amatu Allah

  • Stale data error while deleting a record

    Hi
    My design of this development is as follow...
    1. Search Page in which users give some search criteria and results will be displayed in the results region on the same page. For each results record I have two buttons like 'Update' and 'Delete' so that users can delete the record or can update the record. For update i created a one more page where users can able to edit and save the data. I have two AM one for Search Page and one for Update Page.
    Please find more details below.
    intfEO  based on PO_REQUISITIONS_INTERFACE_ALL
    errorEO  based on PO_INTERFACE_ERRORS
    updateEO based on PO_REQUISITIONS_INTERFACE_ALL
    VOs
    intfVO based on intfEO and errorEO
    updateVO based on updateEO
    AM
    intfAM based on intfVO
    updateAM based on updateVO
    Pages
    searchPG based on intfAM
    updatePG based on updateAM
    Suppose I have one record in interface table with corresponding error record in error table.When users given the search criteria and hit enter they found a record. It means i have one record in the interface having one error record in the error table and both tables have same transaction id (primary key). So here user first try to update the record and it is working. After update he try to delete a record then I am getting below error. Please note that I am not getting this error when if i directly delete the record with out doing any update before delete. When ever users click on update icon then update PG will open and when users click on Apply button then data is getting updated in the database and page will forward to the search page.
    Unable to perform transaction on the record.
    Cause: The record contains stale data. The record has been modified by another user.
    Action: Cancel the transaction and re-query the record to get the new data.
    My UpdatePage Controller
    /*===========================================================================+
    |   Copyright (c) 2001, 2005 Oracle Corporation, Redwood Shores, CA, USA    |
    |                         All rights reserved.                              |
    +===========================================================================+
    |  HISTORY                                                                  |
    +===========================================================================*/
    package powl.oracle.apps.xxpowl.po.requisition.webui;
    import com.sun.java.util.collections.HashMap;
    import com.sun.rowset.internal.Row;
    import java.io.Serializable;
    import oracle.apps.fnd.common.MessageToken;
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.OAException;
    import oracle.apps.fnd.framework.OAViewObject;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OADialogPage;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    import oracle.apps.fnd.framework.webui.beans.form.OASubmitButtonBean;
    import oracle.apps.fnd.framework.webui.beans.message.OAMessageDateFieldBean;
    import oracle.apps.fnd.framework.webui.beans.message.OAMessageTextInputBean;
    //import oracle.apps.fnd.oam.diagnostics.report.Row;
    import oracle.apps.icx.por.common.webui.ClientUtil;
    import powl.oracle.apps.xxpowl.po.requisition.server.xxpowlPOReqIntfUpdateAMImpl;
    import powl.oracle.apps.xxpowl.po.requisition.server.xxpowlPOReqIntfUpdateEOVOImpl;
    * Controller for ...
    public class xxpowlPOReqIntfAllUpdatePageCO extends OAControllerImpl
      public static final String RCS_ID="$Header$";
      public static final boolean RCS_ID_RECORDED =
            VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
       * Layout and page setup logic for a region.
       * @param pageContext the current OA page context
       * @param webBean the web bean corresponding to the region
      public void processRequest(OAPageContext pageContext, OAWebBean webBean)
        super.processRequest(pageContext, webBean);
         xxpowlPOReqIntfUpdateAMImpl am = (xxpowlPOReqIntfUpdateAMImpl)pageContext.getApplicationModule(webBean);
          xxpowlPOReqIntfUpdateEOVOImpl UpdateVO =(xxpowlPOReqIntfUpdateEOVOImpl)am.findViewObject("xxpowlPOReqIntfUpdateEOVOImpl");
          String newvalue = (String)pageContext.getSessionValue("testValue");     
          System.out.println("Transaction ID from processRequest UpdateCO from testValue field:"+newvalue);
          String transactionid = pageContext.getParameter("HashmapTransacitonid");
          System.out.println("Transaction ID from processRequest Hash Map in UpdateCO :"+transactionid);
          String errorcolumn = pageContext.getParameter("HashmapErrorcolumn");
          System.out.println("Error Column Name from processRequest Hash Map in UpdateCO :"+errorcolumn);
          String errormsg = pageContext.getParameter("HashmapErrormessage");
          System.out.println("Error Message from processRequest Hash Map in UpdateCO :"+errormsg);
          String readyonly = pageContext.getParameter("HashmapReadonly");
          System.out.println("Read Only value from processRequest Hash Map in UpdateCO :"+readyonly);
          if (transactionid !=null & !"".equals(transactionid)) { 
         /* Passing below four parameters to the Update Page */
          Serializable amParams[] = new Serializable[]{transactionid,readyonly,errorcolumn,errormsg} ;
          pageContext.getRootApplicationModule().invokeMethod("executexxpowlPOReqIntfUpdateEOVO", amParams);
       * Procedure to handle form submissions for form elements in
       * a region.
       * @param pageContext the current OA page context
       * @param webBean the web bean corresponding to the region
      public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
        super.processFormRequest(pageContext, webBean);      
         OAApplicationModule am = pageContext.getApplicationModule(webBean);
          if (pageContext.getParameter("ApplyButton") != null)
            System.out.println("Inside ApplyButton method in UpdatePageCO");
            OAViewObject vo = (OAViewObject)am.findViewObject("xxpowlPOReqIntfUpdateEOVO");
            String transactionid = pageContext.getParameter("HashmapTransacitonid");
            System.out.println("Transaction ID from processFormRequest Hash Map in UpdateCO-ApplyButton method :"+transactionid);
            am.invokeMethod("apply");
              pageContext.forwardImmediately("OA.jsp?page=/powl/oracle/apps/xxpowl/po/requisition/webui/xxpowlPOReqIntfAllPG",
                                                     null,
                                                     OAWebBeanConstants.KEEP_MENU_CONTEXT,
                                                     null,
                                                     null,
                                                     true,
                                                     OAWebBeanConstants.ADD_BREAD_CRUMB_NO);
           else if (pageContext.getParameter("CancelButton") != null)
            am.invokeMethod("rollback");
            pageContext.forwardImmediately("OA.jsp?page=/powl/oracle/apps/xxpowl/po/requisition/webui/xxpowlPOReqIntfAllPG",
                                                   null,
                                                   OAWebBeanConstants.KEEP_MENU_CONTEXT,
                                                   null,
                                                   null,
                                                   true,
                                                   OAWebBeanConstants.ADD_BREAD_CRUMB_NO);
    UpdatePageAMImpl.java
    package powl.oracle.apps.xxpowl.po.requisition.server;
    import oracle.apps.fnd.common.MessageToken;
    import oracle.apps.fnd.framework.OAException;
    import oracle.apps.fnd.framework.OARow;
    import oracle.apps.fnd.framework.server.OAApplicationModuleImpl;
    import oracle.apps.fnd.framework.OAViewObject;
    import oracle.apps.inv.appsphor.order.server.XxapOrderHeaderVOImpl;
    import oracle.jbo.Transaction;
    // ---    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 xxpowlPOReqIntfUpdateAMImpl extends OAApplicationModuleImpl {
        /**This is the default constructor (do not remove)
        public xxpowlPOReqIntfUpdateAMImpl() {
        /**Container's getter for xxpowlPOReqIntfUpdateEOVO
        public xxpowlPOReqIntfUpdateEOVOImpl getxxpowlPOReqIntfUpdateEOVO() {
            return (xxpowlPOReqIntfUpdateEOVOImpl)findViewObject("xxpowlPOReqIntfUpdateEOVO");
        /**Sample main for debugging Business Components code using the tester.
        public static void main(String[] args) {
            launchTester("powl.oracle.apps.xxpowl.po.requisition.server", /* package name */
          "xxpowlPOReqIntfUpdateAMLocal" /* Configuration Name */);
    /*  // Added by 
        public void execute_update_query(String TransactionID) {
        xxpowlPOReqIntfUpdateEOVOImpl vo = getxxpowlPOReqIntfUpdateEOVO();
        vo.initQuery(TransactionID);
    // Added by  , this will not call bec changed the logic and so now the update button enabled on search results page
    // and this method will not called
    public void pageInEditMode (String transactionID, String readOnlyFlag, String ErrorColumn,
                                                                           String ErrorMessage)
        System.out.println("Transaction Id from pageInEditMode in UpdatePGAMImpl.java: "+transactionID);
        System.out.println("xxReadOnly from pageInEditMode in UpdatePGAMImpl.java: "+readOnlyFlag);
        // Get the VO
        xxpowlPOReqIntfUpdateEOVOImpl updateVO = getxxpowlPOReqIntfUpdateEOVO();
        //Remove the where clause that was added in the previous run
        updateVO.setWhereClause(null);
        //Remove the bind parameters that were added in the previous run.
        updateVO.setWhereClauseParams(null);
        //Add where clause
        // updateVO.addWhereClause(" TRANSACTION_ID = :1 ");
        //Bind transactionid to the where clause.
         // updateVO.setWhereClauseParam(1, transactionID); // this will not work bec it will start with zero from from 1
          updateVO.setWhereClauseParam(0, transactionID);
        //Execute the query.
        updateVO.executeQuery();
        xxpowlPOReqIntfUpdateEOVORowImpl currentRow = (xxpowlPOReqIntfUpdateEOVORowImpl)updateVO.next();
        // Assiging the transient varaibles
        currentRow.setxxErrorMessage(ErrorMessage);
        currentRow.setxxErrorColumn(ErrorColumn);
        if ("N".equals(readOnlyFlag))
              /* Make the attribute to 'False so that all fields will be displayed in Edit Mode because we used this
               xxReadOnly as SPEL  */
               currentRow.setxxReadOnly(Boolean.FALSE);
       public void executexxpowlPOReqIntfUpdateEOVO(String transactionID, String xxReadyOnly, String ErrorColumn,
                                                                                              String ErrorMessage)
           System.out.println("Transaction Id from executexxpowlPOReqIntfUpdateEOVO in UpdatePGAMImpl.java: "+transactionID);
           System.out.println("xxReadOnly from executexxpowlPOReqIntfUpdateEOVO in UpdatePGAMImpl.java: "+xxReadyOnly);
           System.out.println("Error Message from executexxpowlPOReqIntfUpdateEOVO in UpdatePGAMImpl.java: "+ErrorColumn);
           System.out.println("Error Column from executexxpowlPOReqIntfUpdateEOVO in UpdatePGAMImpl.java: "+ErrorMessage);
         // Get the VO
         xxpowlPOReqIntfUpdateEOVOImpl updateVO = getxxpowlPOReqIntfUpdateEOVO();
         //xxpowlPOReqIntfUpdateEOVORowImpl updaterowVO = xxpowlPOReqIntfUpdateEOVO();
       //not working
       //    OARow row = (OARow)updateVO.getCurrentRow();
       //    row.setAttribute("xxReadOnly", Boolean.TRUE);
    // updateVO.putTransientValue('XXXXX',x);
         //Remove the where clause that was added in the previous run
         updateVO.setWhereClause(null);
         //Remove the bind parameters that were added in the previous run.
         updateVO.setWhereClauseParams(null);
         //Add where clause
         // updateVO.addWhereClause(" TRANSACTION_ID = :1 ");
         //Bind transactionid to the where clause.
          // updateVO.setWhereClauseParam(1, transactionID); // this will not work bec it will start with zero from from 1
           updateVO.setWhereClauseParam(0, transactionID);
        // updateVO.setWhereClauseParam(1, ErorrColumn); 
         //Execute the query.
         updateVO.executeQuery();
         /* We want the page should be read only initially so after executing the VO with above command
            and if you use next() it will go to the first record among the
            fetched records. If you want to iterate for all the records then use iterator */
            /* Using Iterator
             while(updateVO.hasNext()) {  // this will check after execute Query above command if it has any rows
              xxpowlPOReqIntfUpdateEOVORowImpl currentRow = (xxpowlPOReqIntfUpdateEOVORowImpl)updateVO.next();
              /* above line next() will take the control of the first record */
          /*     currentRow.setxxErrorMessage(ErrorMessage);
                 currentRow.setxxErrorColumn(ErrorColumn);
               if ("Y".equals(xxReadyOnly))
                      currentRow.setxxReadOnly(Boolean.TRUE);                 
             } // this while loop will loop till end of all the fetched records
         xxpowlPOReqIntfUpdateEOVORowImpl currentRow = (xxpowlPOReqIntfUpdateEOVORowImpl)updateVO.next();
      // Assiging the transient varaibles
      currentRow.setxxErrorMessage(ErrorMessage);
      currentRow.setxxErrorColumn(ErrorColumn);
        /* Make the attribute to 'TRUE' so that all fields will be displayed as READ ONLY because we used this
           xxReadOnly as SPEL
           if ("Y".equals(xxReadyOnly))
                  currentRow.setxxReadOnly(Boolean.TRUE);            
      //Added by  and this methiod will get called from UpdatePG Process Form Request controller  
         public void rollback()
           Transaction txn = getTransaction();
           if (txn.isDirty())
             txn.rollback();
        public void apply()
            //OAViewObject vo1 = (OAViewObject)getxxpowlPOReqIntfUpdateEOVO();
            //Number chargeAccountID = vo1.get
          getTransaction().commit();      
          OAViewObject vo = (OAViewObject)getxxpowlPOReqIntfUpdateEOVO();
          if (!vo.isPreparedForExecution())
           vo.executeQuery();
    SearchPG AM
    package powl.oracle.apps.xxpowl.po.requisition.server;
    import oracle.apps.fnd.framework.OAViewObject;
    import oracle.apps.fnd.framework.server.OAApplicationModuleImpl;
    import oracle.jbo.RowSetIterator;
    import oracle.jbo.Transaction;
    import oracle.jbo.domain.Number;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlErrosLovVOImpl;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlInterfaceSouceCodeLovVOImpl;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlItemSegment1LovVOImpl;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlOrgLovVOImpl;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlReferenceNumberLovVOImpl;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlRequestIdLovVOImpl;
    import powl.oracle.apps.xxpowl.po.requisition.lov.server.xxpowlRequisitionTypeLovVOImpl;
    // ---    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 xxpowlPOReqIntfAllAMImpl extends OAApplicationModuleImpl {
        /**This is the default constructor (do not remove)
        public xxpowlPOReqIntfAllAMImpl() {
        /**Container's getter for xxpowlPOReqIntfAllVO
        public xxpowlPOReqIntfAllVOImpl getxxpowlPOReqIntfAllVO() {
            return (xxpowlPOReqIntfAllVOImpl)findViewObject("xxpowlPOReqIntfAllVO");
        /**Sample main for debugging Business Components code using the tester.
        public static void main(String[] args) {
            launchTester("powl.oracle.apps.xxpowl.po.requisition.server", /* package name */
          "xxpowlPOReqIntfAllAMLocal" /* Configuration Name */);
        /**Container's getter for xxpowlRequestIdLovVO
        public xxpowlRequestIdLovVOImpl getxxpowlRequestIdLovVO() {
            return (xxpowlRequestIdLovVOImpl)findViewObject("xxpowlRequestIdLovVO");
        /**Container's getter for xxpowlErrosLovVO
        public xxpowlErrosLovVOImpl getxxpowlErrosLovVO() {
            return (xxpowlErrosLovVOImpl)findViewObject("xxpowlErrosLovVO");
        /**Container's getter for xxpowlOrgLovVO
        public xxpowlOrgLovVOImpl getxxpowlOrgLovVO() {
            return (xxpowlOrgLovVOImpl)findViewObject("xxpowlOrgLovVO");
      //Start Adding by Lokesh
      //This method wil get invoked from the search results page Process Request
       public void rollbackItem()
         Transaction txn = getTransaction();
         if (txn.isDirty())
           txn.rollback();
      //This method will invoked from Controller page when user click Yes on delete confirmtion page from Search Results Page
       public void deleteItem(String trasnsactionID)
         Number rowToDelete = new Number(Integer.parseInt(trasnsactionID));      
         OAViewObject vo = (OAViewObject)getxxpowlPOReqIntfAllVO();
         xxpowlPOReqIntfAllVORowImpl row = null;
         int fetchedRowCount = vo.getFetchedRowCount();
       //  System.out.print(fetchedRowCount);
         System.out.println("No of row fetched on delete method :"+fetchedRowCount);
         RowSetIterator deleteIter = vo.createRowSetIterator("deleteIter");
           System.out.println("1 :");
         if (fetchedRowCount > 0)
             System.out.println("2 :");
           deleteIter.setRangeStart(0);
             System.out.println("3 :");
           deleteIter.setRangeSize(fetchedRowCount);
             System.out.println("4 :");
           for (int i = 0; i < fetchedRowCount; i++)
               System.out.println("5 :");
             row = (xxpowlPOReqIntfAllVORowImpl)deleteIter.getRowAtRangeIndex(i);
               System.out.println("6 :");
             Number PK = row.getTransactionId();
               System.out.println("7 :");
             if (PK.compareTo(rowToDelete) == 0)
                 System.out.println("8 :");
               row.remove();
                 System.out.println("9 :");
               getTransaction().commit();
                 System.out.println("10 :");
               break;
                 //System.out.println("11 :");
           System.out.println("11 :");
         deleteIter.closeRowSetIterator();
           System.out.println("12 :");
        /**Container's getter for xxpowlInterfaceSouceCodeLovVO
        public xxpowlInterfaceSouceCodeLovVOImpl getxxpowlInterfaceSouceCodeLovVO() {
            return (xxpowlInterfaceSouceCodeLovVOImpl)findViewObject("xxpowlInterfaceSouceCodeLovVO");
        /**Container's getter for xxpowlRequisitionTypeLovVO
        public xxpowlRequisitionTypeLovVOImpl getxxpowlRequisitionTypeLovVO() {
            return (xxpowlRequisitionTypeLovVOImpl)findViewObject("xxpowlRequisitionTypeLovVO");
        /**Container's getter for xxpowlReferenceNumberLovVO
        public xxpowlReferenceNumberLovVOImpl getxxpowlReferenceNumberLovVO() {
            return (xxpowlReferenceNumberLovVOImpl)findViewObject("xxpowlReferenceNumberLovVO");
        /**Container's getter for xxpowlItemSegment1LovVO
        public xxpowlItemSegment1LovVOImpl getxxpowlItemSegment1LovVO() {
            return (xxpowlItemSegment1LovVOImpl)findViewObject("xxpowlItemSegment1LovVO");
    Search Page Controller
    /*===========================================================================+
    |   Copyright (c) 2001, 2005 Oracle Corporation, Redwood Shores, CA, USA    |
    |                         All rights reserved.                              |
    +===========================================================================+
    |  HISTORY                                                                  |
    +===========================================================================*/
    package powl.oracle.apps.xxpowl.po.requisition.webui;
    import com.sun.java.util.collections.HashMap;
    //import com.sun.java.util.collections.Hashtable;
    import java.util.Hashtable;
    //import java.util.HashMap;
    import java.io.Serializable;
    import javax.servlet.jsp.PageContext;
    import oracle.apps.fnd.common.MessageToken;
    import oracle.apps.fnd.common.VersionInfo;
    import oracle.apps.fnd.framework.OAApplicationModule;
    import oracle.apps.fnd.framework.OAException;
    import oracle.apps.fnd.framework.webui.OAControllerImpl;
    import oracle.apps.fnd.framework.webui.OADialogPage;
    import oracle.apps.fnd.framework.webui.OAPageContext;
    import oracle.apps.fnd.framework.webui.OAWebBeanConstants;
    import oracle.apps.fnd.framework.webui.TransactionUnitHelper;
    import oracle.apps.fnd.framework.webui.beans.OAWebBean;
    * Controller for ...
    public class xxpowlPOReqIntfAllSearchPageCO extends OAControllerImpl
      public static final String RCS_ID="$Header$";
      public static final boolean RCS_ID_RECORDED =
            VersionInfo.recordClassVersion(RCS_ID, "%packagename%");
       * Layout and page setup logic for a region.
       * @param pageContext the current OA page context
       * @param webBean the web bean corresponding to the region
      public void processRequest(OAPageContext pageContext, OAWebBean webBean)
        super.processRequest(pageContext, webBean);
        //Added by Lokesh
          OAApplicationModule am = pageContext.getApplicationModule(webBean);
         if (TransactionUnitHelper.isTransactionUnitInProgress(pageContext, "updateRecord", false)) {
               am.invokeMethod("rollbackItem");
               TransactionUnitHelper.endTransactionUnit(pageContext, "updateRecord");
       * Procedure to handle form submissions for form elements in
       * a region.
       * @param pageContext the current OA page context
       * @param webBean the web bean corresponding to the region
      public void processFormRequest(OAPageContext pageContext, OAWebBean webBean)
        super.processFormRequest(pageContext, webBean);
             String userClicked = pageContext.getParameter("event");
             System.out.println("Event from processFormRequest in SearchPageCO :"+userClicked);
           System.out.println("Parametere Names are :- \t" + pageContext.getParameter("UpdateImage"));
           System.out.println("Parametere Names are :- \t" + pageContext.getParameter("event"));
         if (pageContext.getParameter("event") != null &&
             pageContext.getParameter("event").equalsIgnoreCase("Update")) { 
             String ReqTransactionId=(String)pageContext.getParameter("transacitonidParam");
             String errorcolumn=(String)pageContext.getParameter("errorcolumnParam");
             String errormsg=(String)pageContext.getParameter("errormessageParam");
             String readyonly="Y"; //(String)pageContext.getParameter("readonlyParam");
             System.out.println("Requisition Transaction Id  : "+ReqTransactionId);
             System.out.println("Error Column  : "+errorcolumn);
             System.out.println("Error Message  : "+errormsg);
             System.out.println("Read Only  : "+readyonly);
             HashMap params = new HashMap(4);
             params.put("HashmapTransacitonid",ReqTransactionId);
             params.put("HashmapErrorcolumn",errorcolumn);
             params.put("HashmapErrormessage",errormsg);
             params.put("HashmapReadonly",readyonly);
             pageContext.putSessionValue("testValue",ReqTransactionId);
             //System.out.println("Transaction Id passing through HashMap :- \t" + ReqTransactionId);
             pageContext.setForwardURL("OA.jsp?page=/powl/oracle/apps/xxpowl/po/requisition/webui/xxpowlPOReqIntfAllUpdatePG",
                                        null,
                                        OAWebBeanConstants.KEEP_MENU_CONTEXT,
                                        null,
                                        params,
                                        true,
                                        OAWebBeanConstants.ADD_BREAD_CRUMB_YES,
                                        OAWebBeanConstants.IGNORE_MESSAGES) ;   
    else if (pageContext.getParameter("event") != null &&
             pageContext.getParameter("event").equalsIgnoreCase("Delete")) {   
        System.out.println("Inside Delete method in SearchCO");
        String deleteTransactionID=(String)pageContext.getParameter("deleteTransactionIDParam");
        System.out.println("Transaction Id in Delete Method :- \t" + deleteTransactionID);
      //  deleteTransactionID ="";  //Makeing Null because dont want to show the transaction id bec users dont know about it
        //MessageToken[] tokens = { new MessageToken("MESSAGE_NAME", deleteTransactionID) };
        MessageToken[] tokens = { new MessageToken("MESSAGE_NAME", "") };
        OAException mainMessage = new OAException("FND", "FND_MESSAGE_DELETE_WARNING", tokens);
        OADialogPage dialogPage = new OADialogPage(OAException.WARNING,mainMessage, null, "", "");
        String yes = pageContext.getMessage("AK", "FWK_TBX_T_YES", null);
        String no = pageContext.getMessage("AK", "FWK_TBX_T_NO", null);
        dialogPage.setOkButtonItemName("DeleteYesButton");
        dialogPage.setOkButtonToPost(true);
        dialogPage.setNoButtonToPost(true);
        dialogPage.setPostToCallingPage(true);
        dialogPage.setOkButtonLabel(yes);
        dialogPage.setNoButtonLabel(no);
        Hashtable formParams = new Hashtable(1);
        formParams.put("transactionIdDeleted", deleteTransactionID);
        dialogPage.setFormP

    Hi friend ,
    In Search page i didn't do any update. and also search page is not a problem it's working fine. create page only the problem. In this page only throwing Stale data error exception.
    Please give me more suggestion.
    Thanks in advance,

  • How to delete translations / records in table omlt and mlt1

    The customer has added some records to the translations, using DTW.
    Unfortunately, the customer has made a mistake and wants these records to be deleted.
    It is not possible to delete these records in DTW.
    It is concerning 297 rows, I can select those rows by using a query that joins omlt and mlt1
    If i use / in DTW, I can't delete the records
    Is there an other way to fix this problem?
    I have posted this question to SAP Support, but it's outside their scope.
    Therefor I try to post this question on the forum

    You may try a tool called B1TCH: /people/community.user/blog/2007/08/19/get-your-kicks-with-di-commander
    Thanks,
    Gordon

  • Can't open sales order for a deleted customer number

    Dear all ,
    i have deleted a customer cos it was repeated ,now there were some sales orders where that customer is a sold-to-party
    when ever i try to open thous sales orders the systems gives an error message [ no customer record exist for sold to party ******* ]
    the sales orders that does not open because of this error are no more wanted
    would you advise about how to delete them ?
    thanks and best regards

    well,
    thanks for the fast reply but
    the customer no. is generated automatically and I can't assign the same number again .

  • Delete Customer Master Data OBR2

    Hi
    I'm using LSMW to import data. I would like to delete it afterwards. Transaction OBR2 which is in spro Financial Accounting (New) -> Accounts Receivable And Payable -> Customer Accounts -> Master Data -> Delete Customer master data.
    But it does not delete the sales are segment, it also does not allow me to delete general data if sales segment exists.
    Can anyone please let me know if there is another way around this? Any other way to delete this test data???
    Thanks in advance

    Hi
    Please go through the SAP documentation on how to perform deletion of customer master data.
    This may help you in executing the function correctly.
    <b>Delete Customer Master Data</b>
    In this activity, you delete the master records for customers by using a program. Only use this program in the test phase.
    Note
    The company code for which master records are to be deleted, may not yet be flagged as productive.
    Only master records for accounts which do not have any transaction data may be deleted.
    Requirements
    The general customer master data is only deleted for customers who are not also created as customers in Sales and Distribution.
    Activities
    Delete the master records for the required company codes.
    Additional information
    Refer to the SAPF019 program documentation for further information on the program.
    Deleting Master Data
    Description
    This program deletes master data in Financial Accounting and is designed for preparing the system for productive startup. It deletes:
    •     Customer master data
    •     Vendor master data
    •     G/L account master data
    You can run this program in three different ways:
    1. Deleting general master data (in G/L accounts in one chart of accounts)
    2. Deleting master data dependent on company code
    3. Deleting general master data and master data dependent on company code
    For each deletion run, you can specify whether or not the system should take into account the deletion flag in master records ("Delete per deletion flag only"). If it takes into account deletion flags, it uses the following standard logic:
    Option 1: The "All areas" deletion flag must be set.
    Option 2: The "Specified co. code" deletion flag must be set.
    Option 3: It is sufficient to have the "All areas" deletion flag set.
    Note: Deletion blocks are always checked at general data and company code-dependent data level. If there is a block at company code-dependent data level, then the general data is not deleted either. The deletion block takes precedence over the deletion flag.
    General master data in Financial Accounting can also be used in other SAP applications:
    •     Customer master data in Sales and Distribution
    •     Vendor master data in Purchasing
    •     G/L accounts as primary cost elements in Cost Accounting
    The program deletes the following:
    •     Change documents for master data
    •     SAPscript text files
    •     The following data is deleted for customers:
    o     General master data
    o     Bank details
    o     VAT registration numbers
    o     Addresses
    o     Classifications
    o     Credit management: across control areas
    o     Credit management: centrally
    o     Unloading points
    o     Tax indicators
    o     Contact persons
    o     Licenses
    o     Partner function limit
    o     Shipping data
    o     Master data in the company code
    o     Dunning data
    o     Linked data
    •     The following data is deleted for vendors:
    o     General master data
    o     Bank details
    o     Contact persons
    o     VAT registration numbers
    o     Addresses
    o     Classifications
    o     Master data in the company code
    o     Dunning data
    o     Linked data
    •     The following data is deleted for G/L accounts:
    o     General master data in the chart of accounts
    o     Names in the chart of accounts
    o     Key word list in the chart of accounts
    o     Master data in the company code
    o     Sample accounts, if selected
    For customer and vendor contact persons, the addresses are not determined from central address management until the actual runtime. Therefore differences can arise as to the number of addresses in the detail log between the test run and the update run.
    Automatic worklists for customers and vendors are also deleted with the general master data. Matchcodes are always deleted.
    You may have to fix the number ranges after the program run.
    The system makes changes to the database in the update run only. It will then also write a system log entry for documentation.
    Requirements
    General master data can only be deleted if no other application makes reference to the account. Use the resetting programs from
    •     Sales and Distribution (customer master data)
    •     Purchasing (vendor master data)
    •     Cost Accounting (G/L account master data)
    If you want to delete only general master data, master data dependent on company code cannot have been created in Financial Accounting.
    If you want to delete master data in a test company code, master data dependent on company code cannot have been created in any other company code except the test company code. The productive indicator cannot be set for the company code.
    If a customer or vendor is referenced by another customer or vendor (for example, via fiscal address or alternative payee), you can only delete the referenced master record by deleting the referencing master record at the same time.
    Furthermore, you can only delete master data in Financial Accounting if no transactions have been posted to the corresponding accounts. If there are transaction figures in one of the selected accounts, you have to manually access and run program SAPF020 (reset transaction data from a company code) before you can delete that account.
    Output
    The log lists every table which is processed in the program selection.
    You can also create a detail log for each account type to find out why certain data cannot be deleted. The detail logs show you what other company codes and applications use the data and how customers and vendors are linked to one another.
    Note
    Since deleting or displaying even smaller volumes of data can result in runtime problems, you should run this program as a background job. Currently, the program individually deletes matchcodes for each master record in the database. Several match code IDs refer to each matchcode. This can place a considerable load on the database.
    You cannot delete transaction data in individual accounts.
    Important: The archiving programs in Financial Accounting are designed for the productive system.
    If you are running this deletion program for the first time, then you must start program SAPF047 before deletion in order to generate link information.
    I hope this may be of help to you
    Good Luck
    Hari

  • HR_INFOTYPE_OPERATION - Need help w/Deleting infotype records

    Hello all,
    We have an issue where infotype records got created where the ENDDA is less than the BEGDA (ENDDA = 06/30/2006 and BEGDA = 07/01/2006).  We are trying to delete these using HR_INFOTYPE_OPERATION but we are getting message PG-009 (No data stored for 9001 in the selected period) returned in our tests. 
    BTW, 9001 is one of our customer infotypes. 
    I know I can remove these records using a direct SQL statement, but I would prefer to remove them more gracefully if possible.  Is there a way around this error?  I actually think function module HR_READ_INFOTYPE is raising the error.
    Any suggestions would be greatly appreciated.
    Thanks,
    Al

    You can check report RHRHDC00, I think it can help you with custom infotype too.
    Otherwise you might need to delete the records forcefully using DELETE statement, which is not suggested since all the  standard FM consider BEGDA and ENDDA and in your case they will always return blank.
    You can also check FM -
    HR_ECM_DELETE_INFOTYPE
    Regards,
    Amit
    Reward all helpful replies.

  • Sap hr - deleting custom infotype

    Hi,
    Is it possible to delete custom infotype ?
    If I delete a custom infotype, will I be able to use the same code to create a different custom infotype.
    Rgds,
    Santosh

    Hi Remi,
    Thanks for your reply.
    Sorry, I have taken long time to reply.
    I will provide the details :
    I have created custom infotype having two fields.   The data is selected from the master tables.  We have created few records for the period 01.04.2012 to 31.03.2013.  Now, the functional team wants to add new data to the Master Tables and remove some of the existing fields from the Master.  I can add new fields to the master and it will get added as f4 field help.  However, if I remove the data from the Masters,  there will not be entries in master for the said records. 
    I am referring to PRD System.
    Hope I have clarified the things.
    Rgds,
    Santosh

  • Is it possible to Delete all Records of Std. SAP tables for Quality Server

    Hi,
    We want to delete some sensetive information from Test(Quality) Server.
    For Std. SAP tables, is it possible to delete all Records?

    Hi, Through an ABAP program it is possible. You can develop the custom program on Development server than transfer it to QS and run the program.
    Regards,
    Aalok
    Edited by: aalokg on May 13, 2010 12:19 PM

  • Delete condition record??

    how to delete condition record from VK11. can i have t code plz.

    Hi,
    Just to add,
    There are two possible procedures for deleting conditions. There is either immediate deletion or a deletion flag for archiving at a later date. You enter the type of deletion that should be proposed during condition maintenance into Customizing for a condition type, . When deleting immediately, a dialog box can be created which indicates immediate deletion but offers a deletion flag as an alternative.
    <b>Deletion Flag</b>
    You can mark condition records for deletion. These are then no longer taken into consideration during automatic pricing. However they remain as condition records in the system until the next archiving update. This means you can reset a deletion and reactivate a condition record.
    <b>Physical Deletion</b>
    If you use physical deletion, the condition record disappears immediately. It is no longer available during condition record maintenance or pricing. This deletion cannot be reset once it has been carried out. You have to recreate the condition record if you need it again. To be more exact, the reference to the condition record for pricing and condition record maintenance is deleted completely with physical deletion. The actual condition record must be kept for old documents.
    <b>Recommendation:</b>
    SAP recommends the physical deletion procedure. The deletion flag improves upwards compatibility in the system.
    A pricing error can occur when using hierarchical accesses in combination with the deletion indicator (See the hierarchical access documentation in the SAP library).
    The deletion flag used to be used as a replacement for a missing release procedure. This is no longer necessary, as there is now a separate release procedure available (see the release procedure in the SAP library).
    Physical deletion can be included using the change documents – for example deletions in a specific period (Report RV16ACHD).
    Hope this helps. Please reward if useful.
    Thanks & Regards
    Sadhu Kishore

  • Deleting CO1 records

    I am using Custom Object 1 as a Secondary Contact database. Now based on their Status when they are "Terminated" or "Retire" I need to remove/delete those records.
    Is there a easy straight forward method to delete certain records?
    correct me if I am wrong but,
    CO's do not have the batch delete facility, so I cannot create a list and delete all those filtered records. (would have to individually delete 1 by 1)
    Is there any way a workflow can be designed to work and delete those records based on status values?
    or is it doable through custom web services only?
    Hope to get a simple solution
    Thanks in advance.
    Gaurav
    Edited by: Gaurav Shah on Jul 29, 2010 10:22 AM

    thanks bobb, knew that but wanted to confirm if there was another way
    Edited by: Gaurav Shah on Jul 29, 2010 10:35 AM

  • Delete invalid Records task

    Does anyone have any information on what this task does? Admin guide is limited on this. We are hoping this clears up a few metadata issues we have.
    Thanks

    If you have deleted metadata items them the database tables will still have records of the previous ones. Deleting invalid records will clear these orphaned bits of metadata.
    There used to be a problem with changing an account's custom members. If data existed in the removed custom members it would stay there in the system and you could not get rid of this. It would also roll to a total at the TOT_C? level.
    If you are chaning the custom members for an account make sure that the moved member do not have data in the first. This will include parents so remove the data then calulate and then load the new metadata.
    NB you must run this Delete Invalid Records routine after deletions of metadata if you want you ICP matching reports to be accurate.

Maybe you are looking for

  • Acrobat 9.0 created in Windows, doesn't like Mac?

    Hi there, I've created a form for a client with radio button questions (answers in values 1-10) that appear on the last page and produce an overall score.  It works absolutely fine on mine and 4 other computers that are all Windows based, however he

  • "Create New BW Web Printing Controls Your Users Will Love" not working

    Hi I tried to implement codes (http://www.bwexpertonline.com/downloads/fox04.doc)for BW Web Printing controls as instructed in the article(http://www.bwexpertonline.com/archive/Volume_02_(2004)/Issue_03_(March)/V2I3A4.cfm). I got everything fine, EXC

  • What is the Common Practise of Direct/Indirect Exchge Rate for USD LC in SG

    Dear Experts, I am from Singapore and I have customer wants to have local currency in USD Currency, because they have 80% of business transactions are in USD. If customer chooses to have local currency which is different with the stay country currenc

  • Rotation of screen is not functioning

    Rotation of my ipad air screen is not functional. I tried all possibilities at control center ,but it's displaying horizontal alignment only. Please advice.

  • Why do my notes keep going to my yahoo and leaving my iPad

    Why do my notes keep going to my yahoo and leaving my iPad. I have had this problem ever since I did the last two system updates. I deleted my Google Gmail from the account and kept my yahoo email, and is still have the same problem. The notes keep g