How to set the Status

Hi
How to set the status of  user defined form as "closed" . I have one form, i want that form should not be editable after one condition is true. Can anyone tell one solution
Advance Thanks
jintu

Hiii,
Use this
Sub FormDataEvent(ByRef BusinessObjectInfo As SAPbouiCOM.BusinessObjectInfo, ByRef BubbleEvent As Boolean)
        Try
            Select Case BusinessObjectInfo.EventType
                Case SAPbouiCOM.BoEventTypes.et_FORM_DATA_ADD, SAPbouiCOM.BoEventTypes.et_FORM_DATA_UPDATE
                    If BusinessObjectInfo.BeforeAction = True Then
                        objForm = objMain.objApplication.Forms.Item(BusinessObjectInfo.FormUID)
                    ElseIf BusinessObjectInfo.ActionSuccess = True Then
                        If BusinessObjectInfo.EventType = SAPbouiCOM.BoEventTypes.et_FORM_DATA_UPDATE Then
                        End If
                    End If
                Case SAPbouiCOM.BoEventTypes.et_FORM_DATA_LOAD
                    If BusinessObjectInfo.ActionSuccess = True Then
                        objForm = objMain.objApplication.Forms.Item(BusinessObjectInfo.FormUID)
                        objForm.Freeze(True)
                        If (objForm.Mode = SAPbouiCOM.BoFormMode.fm_OK_MODE) Then
                           if objForm.Item.Items("Status").Value.equals("Closed")= True
                         objForm.Mode = SAPbouiCOM.BoFormMode.fm_VIEW_MODE
                         End If
                          end if              
                    End If
            End Select
        Catch ex As Exception
            objMain.objApplication.StatusBar.SetText(ex.Message)
        End Try
    End Sub

Similar Messages

  • How to set the status for a customer plan to RELEASED.

    Hello all,
    I created a program for mass creation of customer plans. But after the creation of a plan, the status should be set to released, so that the user can go about creating the trade promotions for the customer plan. Can anybody tell me how to set the status of a customer plan to RELEASED.
    Thanks,
    Disha.

    Hi Clemens,
    I am not talking about doing it in the CRM_UI transaction..I created a program..which would create the customer plans based on the planning account data provided. I was succesfull in creating the plans, but I am not knowing how to release it, if only anybody can tell me about a Function module or method, which can help me do this, that would be great
    Thanks,
    Disha.

  • How to set custmer master block for posting & how to set the status .....

    < MODERATOR:  Message locked.  Please read the [Rules of Engagement|https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/rulesofEngagement] before posting next time. Use an appropriate subject in your message thread. >
    Hi ...
    How to set custmer master blocked for posting & how to set the status has deleted. please provide the steps for the above two actions.
    thanks

    Hi,
    U can use T-code FD05 for Blocking the customer and
    T-code FD06 in order to set for deletion,
    Assign Points if useful,
    Regards,

  • How to set the status when Idoc fails

    Hai ,
    I created Idoc extension & created a segment under that(Delivery related).
    My requirement is,
    if certain data not found,
    Idoc should fail with text"Shipemnt for delivery <del. No> not found.
    Could you please help me how to do this?
    I checked the table EDIDC table but the above mentioned status is  not there.
    Thanks & Best Regards,
    Bhaskar.

    you need to set the status using IDOC_STATUS
    where ever error occurs populate the status table.
    IDOC_STATUS-DOCNUM = IDOC_CONTRL-DOCNUM.
       IDOC_STATUS-STATUS = '51' ." if it is inbound
       IDOC_STATUS-MSGTY  = Message-type.
       IDOC_STATUS-MSGID  = message-id.
       IDOC_STATUS-MSGNO  = message-MSGNR.
       IDOC_STATUS-MSGV1  = message-MSGV1.
       IDOC_STATUS-MSGV2  = message-MSGV2.
       IDOC_STATUS-MSGV3  = message-MSGV3.
       IDOC_STATUS-MSGV4  = message-MSGV4.
    *  IDOC_STATUS-SEGNUM = ?????????????????
    *  IDOC_STATUS-SEGFLD = ?????????????????
    *  IDOC_STATUS-UNAME  = ?????????????????
       IDOC_STATUS-REPID  = SY-REPID
    *  IDOC_STATUS-ROUTID = ?????????????????
       APPEND IDOC_STATUS.

  • How to set the status of an Workitem, while processing?

    Hi,
    My requirement is to set/ Change the workitem status after/ while procecssing if certain condition is not met for all the users. I have one workitem assigned to multiple users. If any one of the user's executes the workitem, it displays a zprogram, but the user has not taken any action (SAVE), he simply came out of the transaction using "BACK" button. Here the Workitem has been vanished/disappeared from the other two users Inbox, and the workitem is in "In Processu201D Status for the User who executed the workitem. But my requirement is to set the workitem to be in "READY" status for all the users to whom the workitem is assigned; until the user "SAVE" the transaction I need the workitems to be in "READY" status only.
    Please suggest me with your ideas to get the above results.
    Note: I have used the function modules u201CSAP_WAPI_SET_WORKITEM_STATUS (or) SWW_WI_ADMIN_READY ", to change the status of the workitem while processing, it's throwing an error u201CWork item & locked by user & (enqueue erroru201D.
    Thanks in advance,
    Ajay Kumar

    Thanks Florin,
    Your piece of code has worked alot, and it was very helpful in changing the Status of the Workitem to "READY" for all the Users fo the workitem.
    Points have been rewarded for your help.
    Process: We have acheived this using the "Work Item Exits", Usng "AFTER_EXECUTION" Method.
    Note: The Exit will be executed if "exit_cancelled"  statement is present/used in the work item method. if not it is not taking to the exit code. I'm unable to find the reason for it. Florin can u please explain this point.
    Please check the link for adding the code in Work Item Exits.
    http://wiki.sdn.sap.com/wiki/display/ABAP/ProgramExitsIn+Workflow
    Please find the Code:
    method IF_SWF_IFS_WORKITEM_EXIT~EVENT_RAISED.
    Get the context of the workitem
      me->wi_context = im_workitem_context.
    After execution of the workitem call the method AFTER_EXECUTION
      if im_event_name eq swrco_event_after_execution.
        me->after_execution( ).
      endif.
    endmethod.
    METHOD AFTER_EXECUTION.
    This method acts as the Event Handler for SWRCO_EVENT_AFTER_EXECUTION
      DATA: LCL_L_WID TYPE SWW_WIID,
            L_STATUS TYPE SWR_WISTAT-STATUS,
            L_NEW_STATUS  TYPE SWR_WISTAT,
            L_SWR_MESSAG  TYPE STANDARD TABLE OF SWR_MESSAG,
            L_SWR_MSTRUC  TYPE STANDARD TABLE OF SWR_MSTRUC.
    Get work item
      CALL METHOD WI_CONTEXT->GET_WORKITEM_ID
        RECEIVING
          RE_WORKITEM = LCL_L_WID.
      L_STATUS = 'READY'.
      CALL FUNCTION 'SAP_WAPI_SET_WORKITEM_STATUS'
        EXPORTING
          WORKITEM_ID    = LCL_L_WID
          STATUS         = L_STATUS
          USER           = SY-UNAME
          LANGUAGE       = SY-LANGU
          DO_COMMIT      = 'X'
        IMPORTING
          NEW_STATUS     = L_NEW_STATUS
         RETURN_CODE    = SY-SUBRC
        TABLES
          MESSAGE_LINES  = L_SWR_MESSAG
          MESSAGE_STRUCT = L_SWR_MSTRUC.
      IF SY-SUBRC EQ 0.
      ENDIF.
    ENDMETHOD.
    Thank You Once Again,
    Ajay Kumar Chippa

  • How to set 'error' status with DB poll Adapter in OSB

    1. Configured DB Adapter to poll rows with status 'notprocessed' and set the status to 'processed'
    2. Configured FTP Adapter to write fetched rows from DB into a CSV file
    Now my requirement is if any error like FTP server is not available, how to set the status in DB table to 'error'

    Yes Vlad you are right, this will avoid another DB connection created in Error Handler.
    I hope this will provide some lights on the usefulness of "Transaction"
    http://www.nysolutionsltd.com/transaction-handling-in-oracle-service-bus/
    http://kd-blog-tech.blogspot.com.au/2010/12/transaction-management-for-osb-service.html
    Regards
    RK
    Edited by: RK.. on 27/03/2013 17:10

  • Set the status of mass orders from CLSD (Business completion) to TECO

    Hi All,
    Can you please help me out on how to set the status of multiple orders from CLSD (Business completion) to TECO(Technical Complete) .
    Regards,
    Shruthi.

    I'm assuming production orders, you can do that in COHV, selection criteria Sys. Status "CLSD". Click on Mass Processing button and select Technically Complete.

  • How to set the message in the status bar...

    hai,
    how to set the message in the status bar...
    let us say "inserted data successfully, or opening page followed  by the link clicked on the screen....."
    kindly help me out

    sunil,
    do not use advise by Ashutosh with WebDynpro.
    Instead of placing message into browser status bar (and browser is not the only WD UI agent), use IWDMessageManager API to post messages of such kind:
    wdComponentAPI.getMessageManager().reportSucces("Record inserted"); 
    VS

  • How to Set the APPR status in Background for service orders

    Hi Friends,
    could anybody please ,let me know how to set the APPR satus for the seleted service orders( IW32) in background?
    Regards,
    Xavier.P.

    Hi,
    Thanks for the reply and you are correct, I am using BADI and I am calling this BAPI inside the method.
    Now I am trying to execute this BAPI from SE38 and I am getting the error message, "Error in processing ,Function was not executed". I am able to see this message in the return parameter of the BAPI (Error type - 'E'). And it is giving dump after the call to BAPI_TRANSACTION_COMMIT.
    I am using conversion routine 'CONVERSION_EXIT_ABPSN_INPUT' before passing the WBS element to the BAPI.
    Please help in this regard.
    Regards,
    V Kumar
    Edited by: V Kumar on Jun 26, 2009 1:42 PM

  • In Standard Report Of ALV How Can Set PF Status.

    In Standard Report Of ALV How Can Set PF Status.
    Thanking in anticipation.

    in the call function module, you pass the PF status parameter.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
        EXPORTING
          i_callback_program       = pgm
       <i> <u>  i_callback_pf_status_set = 'SET_PF_STATUS'</u></i>
          it_fieldcat              = fieldcat
          is_variant               = disvariant
          is_layout                = layout
          is_print                 = print
          i_save                   = 'A'
          it_events                = eventcat
          it_sort                  = sortcat
          i_callback_user_command  = 'USER_COMMAND'
        TABLES
          t_outtab                 = a_output
        EXCEPTIONS
          program_error            = 1
          OTHERS                   = 2.
    ENDFORM.                    "LIST_DISPLAY
    FORM SET_PF_STATUS *
    FORM set_pf_status USING extab TYPE slis_t_extab.
      SET PF-STATUS 'ZZSTD'.
    ENDFORM.                    "set_pf_status
    Here double Click on ZZSTD. IT will take you to a different screen and you have to set it.
    Ster.

  • How to set the tasks as cancelled

    Guys ,
    I had a scenario , where i have written a setObjectStatus adapter which sets the status of RO as Revoked.
    So i have provisioned a resource to a user and did some updates on resource profile as well , the status of the RO is provisioned and the tasks
    like create user , abc updated etc ... as completed .
    Now i fire the setObjectStatus adapter and it sets the RO status as revoked successfully . The check boxes like enable, disable , revoke etc are disabled as a result of setting the RO status as revoked . But the task inside doesnot become canceled.
    Any ideas how to achive the cancellation of tasks as well ?
    Thanks
    'Suren

    Hi Surendra.
    What did you get when you run the tcUserOperationsIntf.getObjects(userKey)? When you run this method, you'll get all object instance for a specific user, so you have to read the Object Instance.Key attribute.
    Also, you can invoke the methods below of useroperationsintf:
    void revokeObject(long plUserKey, long plObjectInstanceForUserKey)
    Revokes the provisioning of an object for a user directly without going through a request.
    void revokeObjects(long plUserKey, long[] paObjectInstancesForUserKey)
    Revokes the provisioning of an object for a user directly without going through a request
    Renato.

  • How to set the value of an array element (not the complete array) by using a reference?

    My situation is that I have an array of clusters on the front panel. Each element is used for a particular test setup, so if the array size is three, it means we have three identical test setups that can be used. The cluster contains two string controls and a button: 'device ID' string, 'start' button and 'status' string.
    In order to keep the diagrams simple, I would like to use a reference to the array as input into a subvi. This subvi will then modify a particular element in the array (i.e. set the 'status' string).
    The first problem I encounter is that I can not select an array element to write to by using the reference. I have tried setting the 'Selection s
    tart[]' and 'Selection size[]' properties and then querying the 'Array element' to get the proper element.
    If I do this, the VI always seems to write to the element which the user has selected (i.e. the element that contains the cursor) instead of the one I am trying to select. I also have not found any other possible use for the 'Selection' properties, so I wonder if I am doing something wrong.
    Of course I can use the 'value' property to get all elements, and then use the replace array element with an index value, but this defeats the purpose of leaving all other elements untouched.
    I had hoped to use this method specifically to avoid overwriting other array elements (such as happens with the replace array element) because the user might be modifying the second array element while I want to modify the first.
    My current solution is to split the array into two arrays: one control and one indicator (I guess that's really how it should be done ;-) but I'd still like to know ho
    w to change a single element in an array without affecting the others by using a reference in case I can use it elsewhere.

    > My situation is that I have an array of clusters on the front panel.
    > Each element is used for a particular test setup, so if the array size
    > is three, it means we have three identical test setups that can be
    > used. The cluster contains two string controls and a button: 'device
    > ID' string, 'start' button and 'status' string.
    >
    > In order to keep the diagrams simple, I would like to use a reference
    > to the array as input into a subvi. This subvi will then modify a
    > particular element in the array (i.e. set the 'status' string).
    >
    It isn't possible to get a reference to a particular element within an
    array. There is only one reference to the one control that represents
    all elements in the array.
    While it may seem better to use references to update
    an element within
    an array, it shouldn't really be necessary, and it can also lead to
    race conditions. If you write to an element that has the
    possibility of the user changing, whether you write with a local, a
    reference, or any other means, there is a race condition between the
    diagram and the user. LV will help with this to a certain extent,
    especially for controls that take awhile to edit like ones that use
    the keyboard. In these cases, if the user has already started entering
    text, it will not be overwritten by the new value unless the key focus
    is taken away from the control first. It is similar when moving a slider
    or other value changes using the mouse. LV will write to the other values,
    but will not rip the slider out of the user's hand.
    To completely avoid race conditions, you can split the array into user
    fields and indicators that are located underneath them. Or, if some
    controls act as both, you can do like Excel. You don't directly type
    into the cell. You choose w
    hich cell to edit, but you modify another
    location. When the edit is completed, it is incorporated into the
    display so that it is never lost.
    Greg McKaskle

  • ODS Problem - Could not forcefully set the status of the request

    Hello GURUS!
      We encountered an error while activating an ods object:
    <i>"Request REQU_41H61CY8SUS7IX4787ARFXLOM (activation request ODSR_41I8ZUA35YKRALSBFPBB0GWZQ) is marked as incorrect for data package 000000 (DP 0 is the entry for the entire request, which is the only one to remain in the control table after successful activation)."</i>
    We tried to forcefully set the status to <b>green</b> as what we normally do when this happens but it still stays <b>red</b>.
    Need your help on this!
    Thanks,
    Jeffrey

    Hello JeFFreY,
    how r u ?
    You can delete that failed request, then check the PSA for errors, if errors are there delete the PSA data.
    Carry on a new data load with the option in the Scheduling screen -> PROCESSING tab as ONLY PSA. Now check the data for the errors and change it if error exists. Then give context menu on the request and select Start the Update Immediately. Now see in the ODS. what happens ?
    Best Regards....
    Sankar Kumar

  • How to change the status of a production order

    Dear All,
    May i know how to change the status of a production order.I want to de-active the status like OPGN (Operation generated).This status is updated as there was no routing assigned to that particular production order during its creation
    Thanks and Regards,
    Varun Siddharth

    Dear,
    When you create a production order, an operation created by the system is generated automatically if no routing is used for the creation. As a result the order header receives the status HOGAN; the operation created automatically also has this status.
    If you delete the operation created automatically and then do not have the status HOGAN.
    To avoid this maintain the Routing for the material or delete the setting of default operation from OPJG.
    Regards,
    R.Brahmankar

  • How to set the parameter

    hi i am creating xml publisher and from OAF with parameters
    cusname:
    runreportdate:
    go clear buttons
    click go open report in pdf
    SELECT hp.party_name CustomerName,
      csi.incident_number SRNumber,
      to_char(csi.incident_date,'DD-MON-YYYY') SRDate,
      to_char(csi.close_date,'DD-MON-YYYY') SRCloseDate,
      mtl.description SRItemName,
      csi.summary Summary,
      csi.problem_code,
      csi.incident_address SRAddress,
      csi.INCIDENT_COUNTRY SRCountry,
      '31-DEC-2008' Reportrundate,
      COUNT ( * ) over () cnt,
      cis.name,
      COUNT(
      CASE
        WHEN cis.name='Low'
        THEN 1
      END) over () Low,
      COUNT(
      CASE
        WHEN cis.name='Medium'
        THEN 1
      END) over () Medium,
      COUNT(
      CASE
        WHEN cis.name='High'
        THEN 1
      END) over () High1,
    to_char(csi.incident_date,'MON-YYYY') SrMonth
    FROM hz_parties hp,
      hz_cust_accounts hca,
      hz_contact_points hc,
      cs_incidents_all_b csi,
      ar_lookups arl,
      cs_incident_severities_b cis,
      mtl_system_items_kfv mtl
    WHERE hca.cust_account_id   =csi.account_id
    AND hp.party_type          IN ('PERSON','ORGANIZATION')
    AND hp.status               ='A'
    AND hp.party_id             = hca.party_id
    AND hca.status              ='A'
    AND hp.party_id             =hc.owner_table_id(+)
    AND hc.owner_table_name(+)  ='HZ_PARTIES'
    AND hp.party_id             =hca.cust_account_id
    AND hc.contact_point_type(+)='PHONE'
    AND hc.primary_flag(+)      ='Y'
    AND hc.status(+)            ='A'
    AND arl.lookup_type(+)      = 'PHONE_LINE_TYPE'
    AND arl.lookup_code(+)      = hc.phone_line_type
    AND hp.party_name='Business World'
    AND csi.incident_date BETWEEN to_date('01-JAN-2000','DD-MON-YYYY') AND to_date('31-DEC-2008','DD-MON-YYYY')
    AND cis.incident_severity_id=csi.incident_severity_id
    AND mtl.inventory_item_id=csi.inventory_item_id
    GROUP BY hp.party_name,
      csi.incident_number,
      csi.incident_date,
      csi.close_date,
      csi.summary,
      csi.problem_code,
      csi.incident_address,
      cis.name,
      csi.INCIDENT_COUNTRY,
      mtl.description,
      to_char(csi.incident_date,'MON-YYYY')
    Am code
        public void initQuery(String paramString1, String paramString2)
              SrReportVOImpl vo=getSrReportVO1();
            if ((paramString1 != null) && (!("".equals(paramString1.trim()))) && (paramString2 != null) && (!("".equals(paramString2.trim()))))
              vo.setWhereClauseParams(null);
              vo.setWhereClauseParam(0, paramString1);
              vo.setWhereClauseParam(1, paramString2);
              vo.executeQuery();
        public XMLNode getPrintDataXML()
        //SrReportVOImpl vo=getSrReportVO1();
        OAViewObject vo = (OAViewObject)findViewObject("SrReportVO1");
        //vo.initQuery(s,s1);
        XMLNode xmlNode=(XMLNode) vo.writeXML(4,XMLInterface.XML_OPT_ALL_ROWS);
            return xmlNode;
    CO code
          SrAMImpl am=(SrAMImpl)pageContext.getApplicationModule(webBean);
          if(pageContext.getParameter("Go")!=null)
              //am.searchSrDetails(pageContext,webBean);   
               String s=pageContext.getParameter("CustomerName");
               String s1=pageContext.getParameter("RunReportDate");
                   am.initQuery(s,s1);
                 // Get the HttpServletResponse object from the PageContext. The report output is written to HttpServletResponse.
                 DataObject sessionDictionary = (DataObject)pageContext.getNamedDataObject("_SessionParameters");
                 HttpServletResponse response = (HttpServletResponse)sessionDictionary.selectValue(null,"HttpServletResponse");
                 try {
                 ServletOutputStream os = response.getOutputStream();
                 // Set the Output Report File Name and Content Type
                 String contentDisposition ="attachment;filename=ServiceReport.pdf";
                 response.setHeader("Content-Disposition",contentDisposition);
                 response.setContentType("application/pdf");
                     Serializable param[]={pageContext.getParameter("CustomerName"),pageContext.getParameter("RunReportDate")};
                     System.out.println("hiiii 12");
                     // Get the Data XML Output as the XMLNode
                     XMLNode xmlNode = (XMLNode) am.invokeMethod("getPrintDataXML",param);
                     System.out.println("hiiii 13");
                     System.out.println(xmlNode.toString());
                     System.out.println("hiiii 14");
                 // Get the Data XML File as the XMLNode
                 ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
                 xmlNode.print(outputStream);
                 ByteArrayInputStream inputStream = new ByteArrayInputStream(outputStream.toByteArray());
                 ByteArrayOutputStream pdfFile = new ByteArrayOutputStream();
                 //Generate the PDF Report.
                 TemplateHelper.processTemplate(
                 ((OADBTransactionImpl)pageContext.getApplicationModule(webBean).getOADBTransaction()).getAppsContext(),
                 APP_NAME,
                 TEMPLATE_CODE,
                 ((OADBTransactionImpl)pageContext.getApplicationModule(webBean).getOADBTransaction()).getUserLocale().getLanguage(),
                 ((OADBTransactionImpl)pageContext.getApplicationModule(webBean).getOADBTransaction()).getUserLocale().getCountry(),
                 inputStream,
                 TemplateHelper.OUTPUT_TYPE_PDF,
                 null,
                 pdfFile);
                 // Write the PDF Report to the HttpServletResponse object and flush.
                 byte[] b = pdfFile.toByteArray();
                 response.setContentLength(b.length);
                 os.write(b, 0, b.length);
                 os.flush();
                 os.close();
                 pdfFile.flush();
                 pdfFile.close();
                 catch(Exception e)
                 response.setContentType("text/html");
                 throw new OAException(e.getMessage(), OAException.ERROR);
                 pageContext.setDocumentRendered(false);
                   System.out.println("hiiii 13");
          if(pageContext.getParameter("Clear")!=null)
              am.ClearFields(pageContext,webBean);
          }can any one tell me how to set the bind parameters or setting parameter

    Hi,
    Could not understand your problem exactly. DId you try adding bind variables in the query like below:
    AND hp.party_name='Business World'
    AND csi.incident_date BETWEEN to_date('01-JAN-2000','DD-MON-YYYY') AND to_date('31-DEC-2008','DD-MON-YYYY')
    change to
    AND hp.party_name=:1
    AND csi.incident_date BETWEEN :2 AND :3
    Please note you will need three bind variables. Second and third for SR Dates.
    ~Amol

Maybe you are looking for