RFC to update/ reject work flow

Hi Experts,
Is there any RFC/ FM to approve or reject the work flow?
I am using SAP_WAPI_DECISION_COMPLETE, with following inputs:
WORKITEM_ID <000000665113>
LANGUAGE = EN
USER  = <user id>
DECISION_Key  = 0001
DO_COMMIT= X
It gives:
return code = 2
message line: M = E, line =     Work item 000000665113 is not a user decision
Message structure
MSGID                M            MSG        MSGV1
SWR                  E                 205           000000665113
Where am I going wrong? Need help.
It shows  ready status after execution at SWIA.
Is there an alternative?
Thanks,
Ritu

Hi Ritu
Call FM SAP_WAPI_GET_WORKITEM_DETAIL, the export parameter WORKITEM_DETAIL-TOP_WI_ID will give you the work item ID of the parent. If you do not have sub-workflows within the main WF, you will just need to call it once. But if you are using sub workflows and your step is inside the Sub-WF, then call it first to get the Sub WF ID, then Use the sub WF ID and call it again to get the MAIN WF Id ....
And if you want the details on the main Workflow, use the TOP_WI_ID and then call SAP_WAPI_GET_WORKITEM_DETAIL again to get the details of the main WF.
Regards,
Modak
Good to see that you are learning ... however do keep the SCN Rules Of Engagement in mind ( http://scn.sap.com/docs/DOC-18590 ) . Ask only one question in one thread.
Also, your question are not very specific for SRM and hence the right place to post such questions are on the forum SAP Business Workflow http://scn.sap.com/community/bpm/business-workflow
Post your question on this (current) forum only when you need SRM specific advise for workflows.

Similar Messages

  • How to reflect new changes in older instance of work flow?

    Hi All,
    I am working on a custom workflow.
    This workflow is triggered by web dynpro component.
    Earlier my custom infotype was getting updated from web dynpro, and work flow is used to maintain process flow.
    But currently we started facing some authorization issue while updating infotypes for approvers.
    So now i introduced an activity in work flow to update this infotype from work flow using WF_Batch
    (calling method of a class to update the infotype), and commented the code to update infotype from web dynpro.
    Now the problem is, i have few requests raised using older version of work flow,
    in which the activity to update infotype was not there.
    New requests are working fine, infotype is getting updated using work flow.
    But in older requests when i am viewing from SWIA that new activity to update infotype is not visible.
    How can i implement the changes to older instances of work flow?
    Because for older requests in web dynpro also there is no code to update infotype as well as in older work flow instance
    my activity to update infotype is not visible.
    Waiting for help.....
    Regards,
    Amar

    Hi Amar,
    The changes will be reflected for new instances that are created after the transport of the new workflow definition.
    The instances of old definition will continue as it is.
    However a workaround could be that you can end the old definition instances by logically deleting them and start new workflow by T code SWUS or generating event by SWUE and go through the whole process again.
    Re- triggering of the workflow seems to be only solution here .
    Hope this helps.
    Regards,
    Sangvir Singh

  • Sharepoint Foundation Can not update External List by Work Flow

    Hi
    I try to update External List by other list Work Flow, in Sharepoint 2010 Foundation.
    Here is the manual: 
    http://msdn.microsoft.com/en-us/library/office/ff394479(v=office.14).aspx
    But it fails , and the error message is “The
    workflow could not update the item in the external data source. Make sure the user has permissions to access the external data source and update items.”
    Is there some limited in Foundation?

    http://social.technet.microsoft.com/Forums/en-US/0bb9ef28-3614-4db2-b19f-dd81e8cc2d42/the-workflow-could-not-update-the-item-in-the-external-data-source?forum=sharepointgeneralprevious
    With no Secure Store in Sharepoint what we ended up doing was creating a new external content type, adding a new connection and picking a connection type of .net type instead of sql.  This means we needed to create a .net app as the go between but within
    .net we had all the usual tools for connecting to sql without permission issues.
    Also check
    http://wyldesharepoint.blogspot.in/2010/06/setting-up-external-content-type-for.html
    If this helped you resolve your issue, please mark it Answered

  • Work Flow RFC

    Hi,
    i have made some changes to the SAP developed webdynpro application as per the requirement,
    when the user changes the personal information in the ESS personal information screen the Standard RFC is getting called but, if the user made any chanegs to the First name or last name or martial status the Z rfc is getting called and the work flow triggers and the notification will go to the corresponding manager for approval once the manager approves the request then the changes will appear in the portal and also saved in the backend system.
    bu while making changes the first name and last name or martial status and clicking the save button the following error is coming,
      Personal Data   
      Critical Error
    A critical error has occured. Processing of the service had to be terminated. Unsaved data has been lost.
    Please contact your system administrator.
      An exception occurred that was not caught., error key: RFC_ERROR_SYSTEM_FAILURE   
      An exception occurred that was not caught., error key: RFC_ERROR_SYSTEM_FAILURE:com.sap.tc.webdynpro.modelimpl.dynamicrfc.WDDynamicRFCExecuteException: An exception occurred that was not caught., error key: RFC_ERROR_SYSTEM_FAILURE
         at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClassExecutable.execute(DynamicRFCModelClassExecutable.java:101)
         at com.sap.xss.hr.per.ca.personal.fc.FcPerPersonalCA.callWorkFlowFM(FcPerPersonalCA.java:488)
         at com.sap.xss.hr.per.ca.personal.fc.wdp.InternalFcPerPersonalCA.callWorkFlowFM(InternalFcPerPersonalCA.java:681)
         at com.sap.xss.hr.per.ca.personal.fc.FcPerPersonalCAInterface.callWorkFlowFM(FcPerPersonalCAInterface.java:206)
         at com.sap.xss.hr.per.ca.personal.fc.wdp.InternalFcPerPersonalCAInterface.callWorkFlowFM(InternalFcPerPersonalCAInterface.java:242)
         at com.sap.xss.hr.per.ca.personal.fc.wdp.InternalFcPerPersonalCAInterface$External.callWorkFlowFM(InternalFcPerPersonalCAInterface.java:322)
         at com.sap.xss.hr.per.ca.personal.review.VcPerPersonalCAReview.onBeforeOutput(VcPerPersonalCAReview.java:235)
         at com.sap.xss.hr.per.ca.personal.review.wdp.InternalVcPerPersonalCAReview.onBeforeOutput(InternalVcPerPersonalCAReview.java:234)
         at com.sap.xss.hr.per.ca.personal.review.VcPerPersonalCAReviewInterface.onBeforeOutput(VcPerPersonalCAReviewInterface.java:135)
         at com.sap.xss.hr.per.ca.personal.review.wdp.InternalVcPerPersonalCAReviewInterface.onBeforeOutput(InternalVcPerPersonalCAReviewInterface.java:132)
         at com.sap.xss.hr.per.ca.personal.review.wdp.InternalVcPerPersonalCAReviewInterface$External.onBeforeOutput(InternalVcPerPersonalCAReviewInterface.java:208)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.callOnBeforeOutput(FPMComponent.java:603)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.doProcessEvent(FPMComponent.java:569)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.doEventLoop(FPMComponent.java:438)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent.access$600(FPMComponent.java:78)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent$FPM.raiseSaveEvent(FPMComponent.java:953)
         at com.sap.pcuigp.xssfpm.wd.FPMComponent$FPMProxy.raiseSaveEvent(FPMComponent.java:1116)
         at com.sap.xss.per.vc.reviewnavi.VcPersInfoReviewNavi.next(VcPersInfoReviewNavi.java:227)
         at com.sap.xss.per.vc.reviewnavi.wdp.InternalVcPersInfoReviewNavi.next(InternalVcPersInfoReviewNavi.java:175)
         at com.sap.xss.per.vc.reviewnavi.ReviewNaviView.onActionNext(ReviewNaviView.java:153)
         at com.sap.xss.per.vc.reviewnavi.wdp.InternalReviewNaviView.wdInvokeEventHandler(InternalReviewNaviView.java:173)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:321)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingPortal(ClientSession.java:733)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:668)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.clientserver.session.core.ApplicationHandle.doProcessing(ApplicationHandle.java:73)
         at com.sap.tc.webdynpro.portal.pb.impl.AbstractApplicationProxy.sendDataAndProcessActionInternal(AbstractApplicationProxy.java:860)
         at com.sap.tc.webdynpro.portal.pb.impl.localwd.LocalApplicationProxy.sendDataAndProcessAction(LocalApplicationProxy.java:77)
         at com.sap.portal.pb.PageBuilder.updateApplications(PageBuilder.java:1299)
         at com.sap.portal.pb.PageBuilder.SendDataAndProcessAction(PageBuilder.java:326)
         at com.sap.portal.pb.PageBuilder$1.doPhase(PageBuilder.java:868)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processPhaseListener(WindowPhaseModel.java:755)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doPortalDispatch(WindowPhaseModel.java:717)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:136)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:321)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
    Caused by: com.sap.aii.proxy.framework.core.BaseProxyException: An exception occurred that was not caught., error key: RFC_ERROR_SYSTEM_FAILURE
         at com.sap.aii.proxy.framework.core.AbstractProxy.send$(AbstractProxy.java:150)
         at com.sap.xss.hr.per.ca.personal.zhw201.model.ZHW201_PERSAPPR.zhw201_Persappr(ZHW201_PERSAPPR.java:179)
         at com.sap.xss.hr.per.ca.personal.zhw201.model.Zhw201_Persappr_Input.doExecute(Zhw201_Persappr_Input.java:137)
         at com.sap.tc.webdynpro.modelimpl.dynamicrfc.DynamicRFCModelClassExecutable.execute(DynamicRFCModelClassExecutable.java:92)
         ... 65 more
    and my problem is that my application is working in the developement portal, but in testing it is giving error. please give me some suggestion s on this,
    i have checked in the backend the RFC is available and executed successfully.
    Cheers,
    Apparao

    Hi
        did you check the RFC in the backend with the same inputs ,  is it working fine .
        RFC_ERROR_SYSTEM_FAILURE An exception occurred that was not caught ,
        this would occur if there is problem from your RFC side , 
        put the code inthe try catch and try to test the application(which you are passing to the RFC) ,
         instead of  application throwing  the runtime exception , you would figure out the exact exception .
         even  check the RFC in the backend with the same values you are passing , and execute the RFC .
         or  even you can put a external debugging where the RFC get called and check whether the
         values are  passed to the RFC , or other thing you can do it test the application inthe webdynpro
         with hard cording the values .

  • Work flow for Rejections in Quality- Usage decision

    Dear all
    We are in the process of activating work flow for Quality Inspection, During Usage decision there may be rejections for which we need to trigger a mail to the Internal department , stating the Remarks, description, rejected quantity etc ,
    If any one has come across the same scenario kindly help us so as to implement the same in our organization.
    Regards
    Rahul Bhat

    Hi,
    You can do any of the following according to you Requirement.
    1) Below the Rejection Branch using the Send mail you can send the mail to Respective person.
    2) Other wise using the Function Module you can send the mail, refer this l[ink|https://wiki.sdn.sap.com/wiki/x/nYKdAw ].
    3) Else place this Std. Task TS20000139 and provide the necessary binding below the Rejection branch a popup will open and the user can enter the comments and it will go to the Person whom you want.
    Try any of this according to you requirement.
    Regards,
    Surjith Kumar

  • Approval work flow in 11g

    Hi All,
    I am a new bie to OIM 11g. I have created aapproval work flow and it is working fine.
    Now the requirement is to check for a certain flag and based on the falg value we need to route the request to approvers.
    If the flag value is "true" we need to route to the first level Approval. If it is "false" we need to skip the approval and the request should be rejected.The provisioning process also should be terminated.
    As far as I have tested if we skip all the approval tasks the status of the request will be updated to "Approve" by default. But according to our requirement we need to set the status to "Reject".
    Please suggest any way of implementing it or if any body has already implemented it.
    Thanks in advance.
    Thanks,
    PT

    If you are using OIM 11gR2 please refer the below document. All steps are very clear with the screenshots.
    http://docs.oracle.com/cd/E27559_01/dev.1112/e27150/request.htm#autoId27
    See section 21.3.5.7 Configuring the Human Task and BPEL Mappings
    Also see this OBE tutorial for getting idea on Java embedding activity and assigning and retrieving data from global variables in SOA
    http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/oim/oim_11g/Request_Workflow_for_Self_Registration/request_workflow_for_self_registration.htm

  • Screen output without connection to user - Work flow

    Hi,
    i  have created a workflow, it has a task which refers to a method which call a BDC in N mode, but workitem is not generating, in event trace showing RFC status 'Screen output without connection to user'.
    Same time i observed in ST22 for any dumps, as it is giving this error 'DYNPRO_SEND_IN_BACKGROUND'.
    Please suggest how to solve. Thanks in advance.
    BR,
    Rajani

    Hi  Vijay shah /Rick Bakker ,
    As i am on leave from last 2 days, sorry for delay in response.
    As the work flow tasks and what ever the methods i developed are working as per requried.
    But  after each step by step analysis i founn every usefull information regarding the background type activity options.
    Solution :
    In background type activity step, in details tab  we have option of ->Advance With Immediate Dialog flag is set to X, due to this system checking for user interaction.
    Because of this its creating problem.  After unmarking the falg i am able to execute the task in background successfully
    with out any problem.
    Once again sorry for delay in reponse 
    BR,
    Rajani

  • How can we use TABLE CONTROL in BDC and WORK FLOW of ABAP.

    how can we use TABLE CONTROL in BDC and WORK FLOW of ABAP.?
    please explain the important questions.

    How to deal with table control / step loop in BDC
    Steploop and table contol is inevitable in certain transactions. When we run BDC for such transactions, we will face the situation: how many visible lines of steploop/tablecontrol are on the screen? Although we can always find certain method to deal with it, such as function code 'NP', 'POPO', considering some extreme situation: there is only one line visible one the screen, our BDC program should display an error message. (See transaction 'ME21', we you resize your screen to let only one row visible, you can not enter mutiple lines on this screen even you use 'NP')
    Now with the help of Poonam on sapfans.com developement forum, I find a method with which we can determine the number of visible lines on Transaction Screen from our Calling BDC program. Maybe it is useless to you, but I think it will give your some idea.
    Demo ABAP code has two purposes:
    1. how to determine number of visible lines and how to calculte page number;
    (the 'calpage' routine has been modify to meet general purpose usage)
    2. using field symbol in BDC program, please pay special attention to the difference in Static ASSIGN and Dynamic ASSIGN.
    Now I begin to describe the step to implement my method:
    (I use transaction 'ME21', screen 121 for sample,
    the method using is Call Transation Using..)
    Step1: go to screen painter to display the screen 121, then we can count the fixed line on this screen, there is 7 lines above the steploop and 2 lines below the steploop, so there are total 9 fixed lines on this screen. This means except these 9 lines, all the other line is for step loop. Then have a look at steploop itselp, one entry of it will occupy two lines.
    (Be careful, for table control, the head and the bottom scroll bar will possess another two fixed lines, and there is a maximum number for table line)
    Now we have : FixedLine = 9
                  LoopLine  = 2(for table control, LoopLine is always equal to 1)
    Step2: go to transaction itself(ME21) to see how it roll page, in ME21, the first line of new page is always occupied by the last line of last page, so it begin with index '02', but in some other case, fisrt line is empty and ready for input.
    Now we have: FirstLine = 0
              or FirstLine = 1 ( in our case, FirstLine is 1 because the first line of new page is fulfilled)
    Step3: write a subroutine calcalculating number of pages
    (here, the name of actual parameter is the same as formal parameter)
    global data:    FixedLine type i, " number of fixed line on a certain screen
                    LoopLine  type i, " the number of lines occupied by one steploop item
                    FirstLine type i, " possbile value 0 or 1, 0 stand for the first line of new                                                               " scrolling screen is empty, otherwise is 1
                    Dataline  type i, " number of items you will use in BDC, using DESCRIBE to get
                    pageno    type i, " you need to scroll screen how many times.
                    line      type i, " number of lines appears on the screen.
                    index(2)  type N, " the screen index for certain item
                    begin     type i, " from parameter of loop
                    end       type i. " to parameter of loop
    *in code sample, the DataTable-linindex stands for the table index number of this line
    form calpage using FixedLine type i (see step 1)
                       LoopLine  type i (see step 1)
                       FirstLine type i (see step 2)
                       DataLine  type i ( this is the item number you will enter in transaction)
              changing pageno    type i (return the number of page, depends on run-time visible                                                                             line in table control/ Step Loop)
              changing line      type i.(visible lines one the screen)
    data: midd type i,
          vline type i, "visible lines
    if DataLine eq 0.
       Message eXXX.
    endif.
    vline = ( sy-srows - FixedLine ) div LoopLine.
    *for table control, you should compare vline with maximum line of
    *table control, then take the small one that is min(vline, maximum)
    *here only illustrate step loop
    if FirstLine eq 0.
            pageno = DataLine div vline.
            if pageno eq 0.
               pageno = pageno + 1.
            endif.
    elseif FirstLine eq 1.
            pageno = ( DataLine - 1 ) div ( vline - 1 ) + 1.
            midd = ( DataLine - 1 ) mod ( vline - 1).
            if midd = 0 and DataLine gt 1.
                    pageno = pageno - 1.
            endif.
    endif.
    line = vline.
    endform.
    Step4 write a subroutine to calculate the line index for each item.
    form calindex using Line type i (visible lines on the screen)
                        FirstLine type i(see step 2)
                        LineIndex type i(item index)
              changing  Index type n.    (index on the screen)
      if  FirstLine = 0.
            index = LineIndex mod Line.
            if index = '00'.
                    index = Line.
            endif.
      elseif FirstLine = 1.
            index = LineIndex mod ( Line - 1 ).
            if ( index between 1 and 0 ) and LineIndex gt 1.
                    index = index + Line - 1.
            endif.
            if Line = 2.
                    index = index + Line - 1.
            endif.
    endif.
    endform.
    Step5 write a subroutine to calculate the loop range.
    form calrange using Line type i ( visible lines on the screen)
                        DataLine type i
                        FirstLine type i
                        loopindex like sy-index
            changing    begin type i
                        end type i.
    If FirstLine = 0.
       if loopindex = 1.
            begin = 1.
            if DataLine <= Line.
                    end = DataLine.
            else.
                    end = Line.
            endif.
       elseif loopindex gt 1.
            begin = Line * ( loopindex - 1 ) + 1.
            end   = Line * loopindex.
            if end gt DataLine.
               end = DataLine.
            endif.
       endif.
    elseif FirstLine = 1.
      if loopindex = 1.
            begin = 1.
            if DataLine <= Line.
                    end = DataLine.
            else.
                    end = Line.
            endif.
      elseif loop index gt 1.
            begin = ( Line - 1 ) * ( loopindex - 1 ) + 2.
            end =   ( Line - 1 ) * ( loopindex - 1 ) + Line.
            if end gt DataLine.
                    end = DataLine.
            endif.
      endif.
    endif.
    endform.
    Step6 using field sysbol in your BDC, for example: in ME21, but you should calculate each item will correponding to which index in steploop/Table Control
    form creat_bdc.
    field-symbols: <material>, <quan>, <indicator>.
    data: name1(14) value 'EKPO-EMATN(XX)',
          name2(14) value 'EKPO-MENGE(XX)',
          name3(15) value 'RM06E-SELKZ(XX)'.
    assign:         name1 to <material>,
                    name2 to <quan>,
                    name3 to <indicator>.
    do pageno times.
    if sy-index gt 1
    *insert scroll page ok_code"
    endif.
            perform calrange using Line DataLine FirstLine sy-index
                             changing begin end.
    loop at DataTable from begin to end.
            perform calindex using Line FirstLine DataTable-LineIndex changing Index.
            name1+11(2) = Index.
            name2+11(2) = Index.
            name3+12(2) = Index.
            perform bdcfield using <material> DataTable-matnr.
            perform bdcfield using <quan>     DataTable-menge.
            perform bdcfield using <indicator> DataTable-indicator.
    endloop.
    enddo.
    An example abap program of handling Table Control during bdc programming.
    REPORT zmm_bdcp_purchaseorderkb02
           NO STANDARD PAGE HEADING LINE-SIZE 255.
                    Declaring internal tables                            *
    *-----Declaring line structure
    DATA : BEGIN OF it_dummy OCCURS 0,
             dummy(255) TYPE c,
           END OF it_dummy.
    *-----Internal table for line items
    DATA :  BEGIN OF it_idata OCCURS 0,
              ematn(18),      "Material Number.
              menge(13),      "Qyantity.
              netpr(11),      "Net Price.
              werks(4),       "Plant.
              ebelp(5),       "Item Number.
            END OF it_idata.
    *-----Deep structure for header data and line items
    DATA  :  BEGIN OF it_me21 OCCURS 0,
               lifnr(10),      "Vendor A/c No.
               bsart(4),       "A/c Type.
               bedat(8),       "Date of creation of PO.
               ekorg(4),       "Purchasing Organisation.
               ekgrp(3),       "Purchasing Group.
               x_data LIKE TABLE OF it_idata,
             END OF it_me21.
    DATA  :  x_idata LIKE LINE OF it_idata.
    DATA  :  v_delimit VALUE ','.
    DATA  :  v_indx(3) TYPE n.
    DATA  :  v_fnam(30) TYPE c.
    DATA  :  v_count TYPE n.
    DATA  :  v_ne TYPE i.
    DATA  :  v_ns TYPE i.
    *include bdcrecx1.
    INCLUDE zmm_incl_purchaseorderkb01.
                    Search help for file                                 *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
      CALL FUNCTION 'F4_FILENAME'
        EXPORTING
          program_name  = syst-cprog
          dynpro_number = syst-dynnr
        IMPORTING
          file_name     = p_file.
    START-OF-SELECTION.
           To upload the data into line structure                        *
      CALL FUNCTION 'WS_UPLOAD'
        EXPORTING
          filename = p_file
          filetype = 'DAT'
        TABLES
          data_tab = it_dummy.
        Processing the data from line structure to internal tables       *
      REFRESH:it_me21.
      CLEAR  :it_me21.
      LOOP AT it_dummy.
        IF it_dummy-dummy+0(01) = 'H'.
          v_indx = v_indx + 1.
          CLEAR   it_idata.
          REFRESH it_idata.
          CLEAR   it_me21-x_data.
          REFRESH it_me21-x_data.
          SHIFT it_dummy.
          SPLIT it_dummy AT v_delimit INTO it_me21-lifnr
                                           it_me21-bsart
                                           it_me21-bedat
                                           it_me21-ekorg
                                           it_me21-ekgrp.
          APPEND it_me21.
        ELSEIF it_dummy-dummy+0(01) = 'L'.
          SHIFT it_dummy.
          SPLIT it_dummy AT v_delimit INTO it_idata-ematn
                                           it_idata-menge
                                           it_idata-netpr
                                           it_idata-werks
                                           it_idata-ebelp.
          APPEND it_idata TO it_me21-x_data.
          MODIFY it_me21 INDEX v_indx.
        ENDIF.
      ENDLOOP.
                    To open the group                                    *
      PERFORM open_group.
            To populate the bdcdata table for header data                *
      LOOP AT it_me21.
        v_count = v_count + 1.
        REFRESH it_bdcdata.
        PERFORM subr_bdc_table USING:   'X' 'SAPMM06E'    '0100',
                                        ' ' 'BDC_CURSOR'  'EKKO-LIFNR',
                                        ' ' 'BDC_OKCODE'  '/00',
                                        ' ' 'EKKO-LIFNR'  it_me21-lifnr,
                                        ' ' 'RM06E-BSART' it_me21-bsart,
                                        ' ' 'RM06E-BEDAT' it_me21-bedat,
                                        ' ' 'EKKO-EKORG'  it_me21-ekorg,
                                        ' ' 'EKKO-EKGRP'  it_me21-ekgrp,
                                        ' ' 'RM06E-LPEIN' 'T'.
        PERFORM subr_bdc_table USING:   'X' 'SAPMM06E'    '0120',
                                        ' ' 'BDC_CURSOR'  'RM06E-EBELP',
                                        ' ' 'BDC_OKCODE'  '/00'.
        MOVE 1 TO v_indx.
    *-----To populate the bdcdata table for line item data
        LOOP AT it_me21-x_data INTO x_idata.
          CONCATENATE 'EKPO-EMATN(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-ematn.
          CONCATENATE 'EKPO-MENGE(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-menge.
          CONCATENATE 'EKPO-NETPR(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-netpr.
          CONCATENATE 'EKPO-WERKS(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-werks.
          v_indx = v_indx + 1.
          PERFORM subr_bdc_table USING:  'X' 'SAPMM06E'    '0120',
                                         ' ' 'BDC_CURSOR'  'RM06E-EBELP',
                                         ' ' 'BDC_OKCODE'  '/00'.
        ENDLOOP.
        PERFORM subr_bdc_table USING:    'X' 'SAPMM06E'    '0120',
                                         ' ' 'BDC_CURSOR'  'RM06E-EBELP',
                                         ' ' 'BDC_OKCODE'  '=BU'.
        PERFORM bdc_transaction USING 'ME21'.
      ENDLOOP.
      PERFORM close_group.
                      End of selection event                             *
    END-OF-SELECTION.
      IF session NE 'X'.
    *-----To display the successful records
        WRITE :/10  text-001.          "Sucess records
        WRITE :/10  SY-ULINE(20).
        SKIP.
        IF it_sucess IS INITIAL.
          WRITE :/  text-002.
        ELSE.
          WRITE :/   text-008,          "Total number of Succesful records
                  35 v_ns.
          SKIP.
          WRITE:/   text-003,          "Vendor Number
                 17 text-004,          "Record number
                 30 text-005.          "Message
        ENDIF.
        LOOP AT it_sucess.
          WRITE:/4  it_sucess-lifnr,
                 17 it_sucess-tabix CENTERED,
                 30 it_sucess-sucess_rec.
        ENDLOOP.
        SKIP.
    *-----To display the erroneous records
        WRITE:/10   text-006.          "Error Records
        WRITE:/10   SY-ULINE(17).
        SKIP.
        IF it_error IS INITIAL.
          WRITE:/   text-007.          "No error records
        ELSE.
          WRITE:/   text-009,          "Total number of erroneous records
                 35 v_ne.
          SKIP.
          WRITE:/   text-003,          "Vendor Number
                 17 text-004,          "Record number
                 30 text-005.          "Message
        ENDIF.
        LOOP AT it_error.
          WRITE:/4  it_error-lifnr,
                 17 it_error-tabix CENTERED,
                 30 it_error-error_rec.
        ENDLOOP.
        REFRESH it_sucess.
        REFRESH it_error.
      ENDIF.
    CODE IN INCLUDE.
    Include           ZMM_INCL_PURCHASEORDERKB01
    DATA:   it_BDCDATA LIKE BDCDATA    OCCURS 0 WITH HEADER LINE.
    DATA:   it_MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    DATA:   E_GROUP_OPENED.
    *-----Internal table to store sucess records
    DATA:BEGIN OF it_sucess OCCURS 0,
           msgtyp(1)   TYPE c,
           lifnr  LIKE  ekko-lifnr,
           tabix  LIKE  sy-tabix,
           sucess_rec(125),
         END OF it_sucess.
    DATA: g_mess(125) type c.
    *-----Internal table to store error records
    DATA:BEGIN OF it_error OCCURS 0,
           msgtyp(1)   TYPE c,
           lifnr  LIKE  ekko-lifnr,
           tabix  LIKE  sy-tabix,
           error_rec(125),
         END OF it_error.
           Selection screen
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS session RADIOBUTTON GROUP ctu.  "create session
    SELECTION-SCREEN COMMENT 3(20) text-s07 FOR FIELD session.
    SELECTION-SCREEN POSITION 45.
    PARAMETERS ctu RADIOBUTTON GROUP ctu.     "call transaction
    SELECTION-SCREEN COMMENT 48(20) text-s08 FOR FIELD ctu.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) text-s01 FOR FIELD group.
    SELECTION-SCREEN POSITION 25.
    PARAMETERS group(12).                      "group name of session
    SELECTION-SCREEN COMMENT 48(20) text-s05 FOR FIELD ctumode.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS ctumode LIKE ctu_params-dismode DEFAULT 'N'.
    "A: show all dynpros
    "E: show dynpro on error only
    "N: do not display dynpro
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 48(20) text-s06 FOR FIELD cupdate.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS cupdate LIKE ctu_params-updmode DEFAULT 'L'.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) text-s03 FOR FIELD keep.
    SELECTION-SCREEN POSITION 25.
    PARAMETERS: keep AS CHECKBOX.       "' ' = delete session if finished
    "'X' = keep   session if finished
    SELECTION-SCREEN COMMENT 48(20) text-s09 FOR FIELD e_group.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS e_group(12).             "group name of error-session
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 51(17) text-s03 FOR FIELD e_keep.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS: e_keep AS CHECKBOX.     "' ' = delete session if finished
    "'X' = keep   session if finished
    SELECTION-SCREEN END OF LINE.
    PARAMETERS:p_file LIKE rlgrap-filename.
      at selection screen                                                *
    AT SELECTION-SCREEN.
    group and user must be filled for create session
      IF SESSION = 'X' AND
         GROUP = SPACE. "OR USER = SPACE.
        MESSAGE E613(MS).
      ENDIF.
      create batchinput session                                          *
    FORM OPEN_GROUP.
      IF SESSION = 'X'.
        SKIP.
        WRITE: /(20) 'Create group'(I01), GROUP.
        SKIP.
    *----open batchinput group
        CALL FUNCTION 'BDC_OPEN_GROUP'
          EXPORTING
            CLIENT = SY-MANDT
            GROUP  = GROUP
            USER   = sy-uname.
        WRITE:/(30) 'BDC_OPEN_GROUP'(I02),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ENDIF.
    ENDFORM.                    "OPEN_GROUP
      end batchinput session                                             *
    FORM CLOSE_GROUP.
      IF SESSION = 'X'.
    *------close batchinput group
        CALL FUNCTION 'BDC_CLOSE_GROUP'.
        WRITE: /(30) 'BDC_CLOSE_GROUP'(I04),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ELSE.
        IF E_GROUP_OPENED = 'X'.
          CALL FUNCTION 'BDC_CLOSE_GROUP'.
          WRITE: /.
          WRITE: /(30) 'Fehlermappe wurde erzeugt'(I06).
        ENDIF.
      ENDIF.
    ENDFORM.                    "CLOSE_GROUP
           Start new transaction according to parameters                 *
    FORM BDC_TRANSACTION USING TCODE TYPE ANY.
      DATA: L_SUBRC LIKE SY-SUBRC.
    *------batch input session
      IF SESSION = 'X'.
        CALL FUNCTION 'BDC_INSERT'
          EXPORTING
            TCODE     = TCODE
          TABLES
            DYNPROTAB = it_BDCDATA.
        WRITE: / 'BDC_INSERT'(I03),
                 TCODE,
                 'returncode:'(I05),
                 SY-SUBRC,
                 'RECORD:',
                 SY-INDEX.
      ELSE.
        REFRESH it_MESSTAB.
        CALL TRANSACTION TCODE USING it_BDCDATA
                         MODE   CTUMODE
                         UPDATE CUPDATE
                         MESSAGES INTO it_MESSTAB.
        L_SUBRC = SY-SUBRC.
        WRITE: / 'CALL_TRANSACTION',
                 TCODE,
                 'returncode:'(I05),
                 L_SUBRC,
                 'RECORD:',
                 SY-INDEX.
      ENDIF.
      Message handling for Call Transaction                              *
      perform subr_mess_hand using g_mess.
    *-----Erzeugen fehlermappe
      IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
        IF E_GROUP_OPENED = ' '.
          CALL FUNCTION 'BDC_OPEN_GROUP'
            EXPORTING
              CLIENT = SY-MANDT
              GROUP  = E_GROUP
              USER   = sy-uname
              KEEP   = E_KEEP.
          E_GROUP_OPENED = 'X'.
        ENDIF.
        CALL FUNCTION 'BDC_INSERT'
          EXPORTING
            TCODE     = TCODE
          TABLES
            DYNPROTAB = it_BDCDATA.
      ENDIF.
      REFRESH it_BDCDATA.
    ENDFORM.                    "BDC_TRANSACTION
         Form  subr_bdc_table                                            *
          text
         -->P_0220   text                                                *
         -->P_0221   text                                                *
         -->P_0222   text                                                *
    FORM subr_bdc_table  USING      VALUE(P_0220) TYPE ANY
                                    VALUE(P_0221) TYPE ANY
                                    VALUE(P_0222) TYPE ANY.
      CLEAR it_bdcdata.
      IF P_0220 = ' '.
        CLEAR it_bdcdata.
        it_bdcdata-fnam     = P_0221.
        it_bdcdata-fval     = P_0222.
        APPEND it_bdcdata.
      ELSE.
        it_bdcdata-dynbegin = P_0220.
        it_bdcdata-program  = P_0221.
        it_bdcdata-dynpro   = P_0222.
        APPEND it_bdcdata.
      ENDIF.
    ENDFORM.                    " subr_bdc_table
         Form  subr_mess_hand                                            *
          text                                                           *
         -->P_G_MESS  text                                               *
    FORM subr_mess_hand USING  P_G_MESS TYPE ANY.
      LOOP AT IT_MESSTAB.
        CALL FUNCTION 'FORMAT_MESSAGE'
          EXPORTING
            ID     = it_messtab-msgid
            LANG   = it_messtab-msgspra
            NO     = it_messtab-msgnr
            v1     = it_messtab-msgv1
            v2     = it_messtab-msgv2
          IMPORTING
            MSG    = P_G_MESS
          EXCEPTIONS
            OTHERS = 0.
        CASE it_messtab-msgtyp.
          when 'E'.
            it_error-error_rec   =  P_G_MESS.
            it_error-lifnr       =  it_me21-lifnr.
            it_error-tabix       =  v_count.
            APPEND IT_ERROR.
          when 'S'.
            it_sucess-sucess_rec =  P_G_MESS.
            it_sucess-lifnr      =  it_me21-lifnr.
            it_sucess-tabix      =  v_count.
            APPEND IT_SUCESS.
        endcase.
      ENDLOOP.
      Describe table it_sucess lines v_ns.
      Describe table it_error  lines v_ne.
    ENDFORM.                    " subr_mess_hand
    Also refer
    http://sap.ittoolbox.com/groups/technical-functional/sap-dev/bdc-table-control-668404
    and
    http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
    Regards,
    srinivas
    <b>*reward for useful answers*</b>

  • Work flow in error when executed with a user decision.

    Hi,
    I am executing a workflow for notification of absence. It has a user decision step to Revise the request or to withdraw it when the absence request is rejected by the approver. When I am executing this the workflow is going into error state. User decision step is not starting at all. The first two steps create notification of absence and check notification are getting completed successfully.
    Please let me know where I am going wrong.
    Thanks & Regards,
    Soumya.

    Hi,
    I believe the orginal poster is following the workflow tutorial in the sap help.
    http://help.sap.com/erp2005_ehp_03/helpdata/EN/fb/135962457311d189440000e829fbbd/frameset.htm
    I'm following the instructions and pretty sure it's been followed exactly on each step but am hitting the same issue - see 'Unit 10 - third step'.
    The log is reporting two errors
    Work item 000000014093: Object FLOWITEM method EXECUTE cannot be executed
    and
    Error when processing node '0000000039' (ParForEach index 000000)
    You reject the notification and then the work flow errors.
    Can anyone help?

  • Work Flow in Status Error

    Hi Experts,
    I have a Workflow which triggers on record update.
    After the start step i have 3 assignment Fields and then Some validations etc.
    I can see that this workflow is stopped at First assignment step Some times with Error.
    And when i Open the workflow and close it again, then the next time there is a Update to a Record this workflow works fine...
    This is strange..
    the Workflow entry which is in ERROR will remain the same, Even if i press 'Perform' ..
    DId anyone face this issue earlier!!!
    It works fine for 2 days and suddenly i can see in Workflow table there is a entry with Error at First Assignment step of Workflow.
    when i Open work flow, Edit some description and save it back and the rest of the workflows from then are executing without error.
    But the one with Error in WF table still remains the same even after selecting 'Perform' on it.
    KR
    John

    Hi John,
    Please find details of a SAP Note 1553992 on this issue:
    Symptom
    - Data Manager crashes when trying to click on workflow job line (only    in MDM 5.5).
    - Workflow jobs are in error state due to executing next step such as     syndication step after a job was in error state due to bad assignment.
    Other terms
    - Workflow crash Data Manager, O28627 2011
    Reason and Prerequisites
    o Description of the root cause of the bug and ways to reproduce and/or diagnose the issue:
    Reproducing the scenario can be done by creating a workflow with the following steps:
    1. Start
    2. Bad Assignment (e.g. assignment created unique constraint violation)
    3. Syndication
    4. Stop
    After executing the workflow job, the job is shown in error state in MDM Data Manager.
    Clicking on next -> Syndication step changes the workflow job to a job that only the owner can see. The job is shown in MDM Data Manager in error state, its step description is empty and no user specified in user column.
    Clicking on the workflow job will lead to a crash in Data Manager.
    MDM Data Manager crashes since the workflow job is is in error state but none of his steps is in error state.
    In this mode(unlisted), MDS prepares the workflow list to be send to Data Manager with user name with value NULL.
    Data Manager crashes when it tries to access the user name of the workflow.
    The issue was introduce with MDM 5.5.
    Issue is not relating to a specific platform/DBMS.
    Solution
    o The workaround is:
    Delete workflow job in error state using Java API.
    o The description of the fix is:
    The fix handles two scenarios:
    1. Existing workflow jobs in error state that caused a crash
       in MDM Data Manager. A fix was made in MDS to add the owner as user
       name to the workflow jobs in such scenario.
       As a result users are able to delete the workflow job or show its
       history.
    2. New workflow job will not stay in Error state and the next step will
       be correctly performed.
    o The issue was fixed in the following code lines and versions:
    - MDM 5.5 SP06 Patch05 Hotfix 45 (Build 5.5.65.125) -
        change list #94328
    - MDM 7.1 SP07 (Build 7.1.07.113) - change list #94340
    - MDM 7.11     (Build 7.11.0.146) - change list #94339
    o What areas of the code were fixed?
    Workflow Run Time
    o What areas of the code were affected by the fix?
    Workflow Run Time
    o The following component(s) need to be replaced to correct the specific flaw addressed by this note:
    In 5.5 Version:
    Master Data Server
    MDM SERVER 5.5
    In 7.1 Version:
    Master Data Server
    o Additional component(s), if any, that were impacted and should be regression-tested by the code change:
    In 5.5 Version:
    GUI Clients
    JAVA API
    In 7.1 Version:
    Data Management Clients
    JAVA API
    Hope this helps.
    Thanks,
    Ravi

  • Using attachments in work-flow and creating custom text with key values

    Hi,
    I have 2 simple requirements.
    1. how to attach a tcode or trigger method of business object for work-flow item. The user should be able to navigate to transaction to see data before approval or rejection.
    2. I have created custom task for long text that will be displayed in the SAP inbox. How do I provide key values in this long text.  I was able to do in the subject line using Substitution parameters(&Name1& etc..)
    Regards
    Kasi

    I did the same thing. see details.
    Created Workitem and attached a task "TS92500097". in the task, I mentioned Business Object and method to be called. I have set the binding also for this business object. the method I am calling is nothing but just "display" which is using call transaction.  2 problems here.
    1. How do I show  this "BusinessObject.Display" as an attachment or link in the mail.
    2. how do I assign key values during exection of this attachment or link.
    Regards
    Kasi
    2.

  • Work flow mailer become inactive each system bounce

    Dears ,
    RDBMS : 10.2.0.3.0
    Oracle Applications : 12.0.4
    i have a prblem with my work flow mailer,it becomes in active each time i restart the APPS,
    it start this way:
    1-i stopped the work flow mailer for more than 3 months,
    2-table WF_NOTIFICATIONS contain 400000 record in Mail status
    3-so to avoid sending the pending emails in the Outbound Queue to the employees.
    4-i used this action plan (from note736508.1);
    update WF_NOTIFICATIONS set mail_status = 'SENT' where mail_status = 'MAIL' ;
    sqlplus usr/passwd@db @wfntfqup APPSusr APPSpw FNDusr
    and then the problem appear?
    can any one help?
    or any notes may be?
    Thanks in advace.
    Regards,
    Omar

    Hi Omar,
    You can refer the following ML doc,may be this could be of any help
    [How To Automatically Restart the Workflow Mailer Processes Regularly|https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=443643.1]
    [What are the exact meaning for Workflow Notification Mailer startup modes Automatic, Manual and On Demand .?|https://metalink2.oracle.com/metalink/plsql/ml2_documents.showDocument?p_database_id=NOT&p_id=845478.1]
    Thanks,
    Anchorage :)

  • Work Flow Notification mailer

    Hello Team:
    We have enabled work flow notification mailer service in our EBS system. Last week I restarted the services ( ALL Tiers ) and as soon as I did the restart. The business users started to receive Notification mailers. Apparently a bunch of them. I looked at the Workflow configuration settings and I was unable to figure out the setting that triggers this email stuff.
    Any idea about where this setting should be checked and tuned . We are on 11.5.10 CU2 and it is running on RHEL 4.0.
    Regards,
    Bala

    Bala,
    If you are using notification mailer services just for testing purpose then update "Set Override Address" option in "Workflow Notification Mailer" services to a active mail a/c, so that all testing mails will be re-directed to this a/c instead of various users mail a/c. But if you are implementing the notification services, then pls go though the notification services implementation document once and set the required parameters as per your business requirements.
    Users also disable receiving mails at their end, by editing their e-biz user a/c "preferences" and set e-mail notification style to no e-mail notifications option.

  • DW CS3 Mac - delayed work-flow

    Our office has three Macs running DW CS3; Two Intel Macs and
    one G5... When working with files from ANY remote server (and with
    any file type) on the Intel Macs the work flow is very sluggish /
    delayed (i.e. any action takes about 3-5 seconds to respond). This
    issue is not present when reverting to version DW 8. The Mac with
    the G5 does not have these issues.
    We had a Mac certified technician come out to see what the
    issue is. He could find NO hardware/ network problems. He said that
    this is an issue that will probably be resolved in Adobe updates to
    come...
    Can anyone shed light on this issue? I can't understand why
    CS2 works fine, but not CS3 which is supposed to be more Intel Mac
    friendly.
    Thanks - Bob

    There is an issue that sounds very familiar to this but it is
    closely related to Leopard as opposed to Tiger. Are these newer
    Intel Macs running Leopard? If so there are updates planned for
    this.
    There is also another bug, I would have to check the kb
    article again to be sure, but it dealt with a slow load time to
    freezes when putting remote image locations in the documents (ie:
    when you make an HTML email file). I don't remember whether this
    issue was a Leopard issue or it could have been an Intel issue
    which could be indirectly related to what you are experiencing.
    If workflow is an issue right now I would say for your
    business stick with 8 especially if there is not a specific reason
    for using CS3 (ie: new feature). Then I would wait until about the
    end of the year, early next year when the first wave of updates is
    supposed to be released (mostly for those Leopard updates).
    BTW, in case you were wondering, you can keep both
    installations on there on the Mac because there are 2 separate
    preference files in the library so this way you don't have to go
    through re-installing again.

  • Mail sending option at the work flow lavel

    Hi all,
    i m working for a Web Dynpro java where for my project "Classified" after creation of any classified item work flow is there name as approver and publisher.
    I m in search of the functionality where mail need to be trigger for the corresponding creator for the created classified item if once approve or reject by the Approver or Publisher.
    For this from code lavel i need to do something or from Configuration side i need to work on that.
    Regards,
    Deepak

    Hi Deepak,
      If mail Triggering is what all you want,
       then please make use of mail functionality API of  java. For that you need three jar files:smtp,mail,activation.
    Regards,
    Ganga.

Maybe you are looking for

  • Photoshop cs5 is locked

    Whenever I try to make modifications to my workspace or really do anything complicated, I get this error message. I went to the applications folder and got the info for photoshop but then the box that allows you to unlock the application is not click

  • IPhone 2.0 software/Exchange contacts question

    I have my contacts on Exchange (2003) arranged as "active" contacts and "non-active" contacts. The reason I did this is because I wanted a manageable number of contacts on my iPhone (and in my BMW's bluetooth register). With the iPhone 1.0 software,

  • Buying iPod touch 2g - have 6 questions

    Tomorrow most likely. The 16gb. $280 ($20 off at Wal-Mart 8-) Don't really care about the rumored iPod Touch 3rd gen; as the 2nd gen will be able to download the 3.0 software. I wouldn't use the camera anyways as it would probably only be 4 megapixel

  • Works in sql not in apex: ORA-02049 distributed transaction waiting lock

    Hi, I get this error failed to parse SQL query: ORA-02049: timeout: distributed transaction waiting for lockwhen trying to run this query from it's page. But it works fine if I run it in the SQL console... failed to parse SQL query: ORA-select distin

  • Mobile messaging unable to open.

    At first, my WhatsApp wouldn't open and my phone is really slow anyway. So I synced my contacts, messages, photos and videos to my Nokia Suite, then did a hard reset to my phone; the *#7370#. When it's back on, I try to use messaging but it won't ope