Workflow 14500015

Hi Gurus
We would like to implement a user exit in WS14500015 from where a work item will not be sent back the to Requester upon a change from an Approver, as we would like the approval flow to continue.
This is our scenario:
1. Requester creates a shopping cart. Due to applied workflow logic the
SC will have to be approved by a purchaser and a financial approver
2. The purchaser gets the work-item in his inbox
3. The purchaser changes the price of one ore more items and approves
the shopping cart
4. The work item is returned to the Requester for approval/acceptance
5. The financial approver receives the work-item in his inbox and
approves it (it does not goes back to the requester!)
6. The shopping cart has now been approved.
We would like to skip step 4 if the change in price is less than a certain percentage or amount so to continue straight on to the financial approver.
Our question is then:
Does any of you Gurus have experience with similar situations?
Would any of you have a good idea of where would be a good place to enter the user-exit in the flow?
We look forward to your guru input on this matter.
//Maria and Co.

Hi,
Havent come across such a reqt but you can try this.You can change the parameter "BBP_WFL_SECURITY " in the  Personalization tab in trascn  PFCG for the Approval role.Acc the workflow behaviour will change when changes are made to the SC by the Approver.
For more deatils,refer the foll link:
http://help.sap.com/saphelp_srm50/helpdata/en/37/830b3b7e7ef74de10000000a114084/frameset.htm
http://help.sap.com/saphelp_srm50/helpdata/en/f7/a6a3415e34b05fe10000000a1550b0/frameset.htm
BR,
Disha.
Pls reward points for useful answers.

Similar Messages

  • Need to understand impact on workflows during upgrade from EBP 3.0 to SRM 5

    Hello experts,
    Greetings to all and a Happy New Year!!
    I am new to the workflow concept, though i have a fair idea of EBP.
    We are using EBP 3.0, classic scenario.  Very soon, we would be upgrading from EBP 3.0 to SRM 5.0. I have a few questions which i need to knw before I take up the upgrade part:
    1) The impact on the worflows like Shopping cart approval, purchase contract approval etc when we upgrade from EBP 3.5 to SRM 5.0...
    2) Does EBP have their own release strategies or are the release strategies defined in R/3 and applied to the shopping cart when it is ordered in EBP? As in classic scenario, POs are created in R/3, then how does the appoval process happen?
    3) What are the necessary things, if any, that I should make sure of before upgrading?
    4) Does all workflows also get upgraded or is there any tool to upgrade the workflow?
    I am not clear with the approval concept in EBP. I know there are workflows that get triggered when a shopping cart is ordered but the approval process in this workflow is something which i want to understand. Please forward me a document, if possible, or a link will also do.
    Please let me know the necessary details.
    Thanks in advance.
    Regards,
    Ayush

    Hi Ayush,
    Most workflows will be the same, but if you have modifications on these workflows' then i'd suggest reverting back to the standards for the upgrade.
    Im not quite sure what you mean about the release strategy. What can be done though, is creating Purchase Requisitions in the R/3 and pass them to the SRM system. From here PO's can be created and the approval process will take place in accordance with your workflow rules in tcode: swb_cond.
    Before upgrading, try to have the system as clean as possible. When i say clean, i mean make sure that users are consistent, SC's, PO's etc arent left hanging. Try to avoid carrying documents over to the new system. I'd suggest archiving anything you can too.
    I don't have any documents to give you but the basic process and transactions are as follows:
    SWB_COND: Your workflow start conditions. Which WF's are on/off (defined by green/red light)
    SWI6: This will let you examine a document and its relevant WF by its object id. (SC No, PO No etc..
    SWUD: Allows for Consistency checks on your workflow and will find any inconsistencies which are occuring. (Use Test Environment and WF Tech Name i.e 14500015)
    SWDD: The workflow builder, will let you build, activate, create new version and modify the worklows in your system.
    Approval itself is simply the chain of approval which a workflow is defined to follow. You need your managers to approve/reject and the conditions for which Managers should be called for approval. Its works from Possible Approvers for workitems and Excluded Approvers for workitems.
    Understanding the WF log is the most essential thing of all. The understanding of BADI is quite important too.
    Hope this info helps you. Check help.sap.com cause everything is documented there too!
    Cheers
    Will

  • Re-starting Item Level Shopping Cart Approval Workflow

    Hi All -
    We are implementing WS 14500015 - the Item-based n-level approval workflow for shopping carts - for certain scenarios.  In other scenarios we are using the overall approval workflow.
    I need to re-start the item-level approval workflow for certain scenarios (change in price, change in quantity, etc) - not when any and all changes are made to a line item.
    I was hoping to use the badi BBP_WFL_SECUR_BADI - which works great for the overall n-level shopping cart approval workflow.  However, I can't seem to hit it appropriately for the item level approval workflow!
    Does anyone know if this BADI or any other can be utilized for determining when to re-start the item-level shopping cart n-level approval workflow?
    Thanks so much!
    Abby

    hi,
    Have you implemented the badi BBP_WFL_SECUR_BADI ? for restarting the workflow?
    Let me know?
    Also it is possible to debug and see why the restart does not happen.
    Also let me know wether the restart happens in other cases?

  • Error while deploying a workflow in OWB

    Hi,
    I am getting the below error while deploying a workflow in Control Center.
    ORA-29532: Java call terminated by uncaught Java exception: java.sql.SQLException: The file /u01/app/oracle/product/11.2.0.2/dbhome_1/owb/bin/admin/rtrepos.properties cannot be accessed or has not been properly created on the server XXXXXX. If the file does not exist or if the database owner (normally user 'oracle') does not have the required file permissions or if the file has not been properly created then the file can be recreated by running the SQL*Plus script /u01/app/oracle/product/11.2.0.2/dbhome_1/owb/rtp/sql/reset_repository.sql (in a RAC environment the file must be manually copied to each server which is used for OWB). Otherwise if using a 10.2 database instance, then please run the SQL*Plus script /u01/app/oracle/product/11.2.0.2/dbhome_1/owb/UnifiedRepos/reset_owbcc_home.sql.
    Did any one faced this issue before?
    Kindly let me know the steps to resolve the issue.
    Thanks.

    Hi Vidyanand,
    Did you create the runtime access user using the runtime assistant? Did you select the correct runtime repository (if you have more) to associate your runtime access user with?
    Note that there are 4 database roles being created when you create a runtime repository owner:
    - OWB_A_<runtime repository owner>
    - OWB_D_<runtime repository owner>
    - OWB_R_<runtime repository owner>
    - OWB_U_<runtime repository owner>
    If you would grant those roles to a user, then that user becomes an access user for the user with username <runtime repository owner>.
    Note that you can also use the runtime repository credentials to connect to the runtime repository for deployment purposes, but you may not want that because of security concerns.
    Thanks,
    Mark.

  • Questions on OCS and workflow

    I am wondering whether I can configure the following:
    - Can I have multiple views? Example, view documents by Author, Project, Category? Can I customize document
    views?
    - Can I control access rights on a single document?
    - Can I monitor or extract a report on how often a document is accessed?
    In addition, I have the following problems with OCS Workflow:
    - The Workflow has no default email notification. Documentations indicated that Email Notification has to be configured to work with SendMail. Can Email notification be configured with OCS Mail instead?
    It does not make sense to use SendMail instead of OCS Mail.
    - Document can be viewed by Workspace members once it is uploaded. What is the purpose of workflow then?
    - Document has to be manually submitted for review to initiate a Workflow process. Can this be performed automatically?
    - WorkFlow approver is defined by the user. It should have predefined approvers.
    - In Workflow notification, Notification Detail provides the URL but does not have a URL link back to the document. In this case, the review process is manual because the approver does not have an easy
    way to preview the document.
    Are my comments correct? Are there any workarounds?

    Roger,
    1) The default SPINCOUNT value is 0 (no spinning) for all platforms that are supported today. (At one time we had a default value of 5000 for Sequent hardware, but it has been many years since we supported that platform.) The SPINCOUNT value that will work best for any application depends on many factors, including the number of CPUs on the machine, the hardware platform, and the indvidual application. SPINCOUNT will only be useful when the machine has more than one CPU.
    2) /Q logs Q_CAT:1447 after 50 unsuccessful attempts to obtain the semaphore when the semaphore has never been released and reobtained by a different process or the same process during that period. The Access Control List code uses the same rule for logging LIBTUX_CAT:1511. If TMSPINCOUNT is set, then the number of unsuccessful attempts to obtain the semaphore is incremented by 1 only after TMSPINCOUNT spins have been done.
    Code for the BB semaphore and the semaphore used by /Domain follows a different rule. This code will log LIBTUX_CAT:5005 or LIBGW_CAT:5010 if a process has to wait for the semaphore for 10 seconds and the semaphore has never been released by the original owner during this time period.
    3) TMSPINCOUNT is used for the BB semapahore, AOM semaphore, ACL semaphore, /Domain semaphore, and /Q semaphore. Locking the GTT uses the same BB semaphore that used to lock other tables in the BB.
    Regards,
    Ed

  • How can I display a SP 2010 out of the box workflow's task assignees via powershell?

    There are days where one of the 250+ workflows at the site has attempted to send email to someone no longer at the company.
    I would like to find a way to go through the farm and display all the list URLs that have workflows, and the mail addresses associated to the workflows.
    This way I can track down the workflows that need to be updated to remove the missing users.
    I have started a bit of script to do this. In my script, I just had a site collection - I figured that if I can get that to work, then surely wrapping another loop for the rest of the farm won't be bad. 
    However, for some reason, I am not seeing the output that I expected to show the mail addresses.
    I am hoping a different set of eyes might see what I am missing. It was my understanding that the AssociationData property was XML that contained information about the assignees for tasks, the carbon copy list, etc.
    Maybe I misunderstood something that I read?
    $outLoc = "d:\temp\wfdata.txt"
    $web = Get-SPWeb -Identity "http://myfarm/sites/it/"
    foreach ($list in $web.Lists)
     $associationColl=$list.WorkflowAssociations
     foreach ($association in $associationColl)
           $association.AssociationData | Out-File $outLoc
    $web.Dispose()
    I want to thank you for the helpful tips that so often appear on this list. They help me when I am reading over old threads to figure out what to do. I am hoping that tips on this thread will likewise be helpful.

    Hi,
    With
    SPWorkflowAssociation.AssociationData property, we can get the assignees’ information. Your script can
    be able to retrieve a XML format data which contains the user name we need:
    So the next step would be getting the user name by parsing the XML data we got.
    The two links below will show how to parse XML with PowerShell:
    http://stackoverflow.com/questions/18032147/parsing-xml-using-powershell
    http://blogs.technet.com/b/heyscriptingguy/archive/2012/03/26/use-powershell-to-parse-an-xml-file-and-sort-the-data.aspx
    With the user name, we can get the
    Email property of an user with the scripts as the link below provided:
    http://davidlozzi.com/2012/03/07/using-powershell-to-access-sharepoint-sites/  
    Best regards
    Patrick Liang
    TechNet Community Support

  • Creating a Role view in a workflow

    I'm trying to create a role view in my workflow with the following code but it gives me an error: com.waveset.util.InternalError: Unable to locate ViewHandler for 'role'.
    <Action application='com.waveset.session.WorkflowServices'>
                <Argument name='op' value='createView'/>
                <Argument name='type' value='Role'/>
                <Return from='view' to='view'/>
              </Action>Has anyone created a role from a workflow, java or SPML?

    nvm figured it out.
    <Action id='0' application='com.waveset.session.WorkflowServices'>
              <Argument name='op' value='createView'/>
              <Argument name='type' value='Role'/>
              <Argument name='viewId' value='Role'/>
              <Argument name='Form' value='Empty Form'/>
              <Argument name='authorized' value='true'/>
              <Return from='view' to='role'/>
            </Action>       

  • Note: Due to heavy load, the latest workflow operation has been queued. It will attempt to resume at a later time

    Dear all,
    sorry for opening another thread on this.
    I think I have a performance issue with workflows attached to document sets in SharePoint. And I say “I think” because people keep telling me that this is the way it just is.
    The user creates a new document set, which triggers a workflow in which the user has to confirm/review/approve a series of tasks. The time it takes from clicking the OK button on those task form to the workflow status moving to the next step is about 4 seconds.
    And visiting that status page within those 4 seconds brings up the infamous “Note: Due to heavy load, the latest workflow operation has been queued. It will attempt to resume at a later time.” message.
    Hitting Refresh in the browser after those 4 seconds will make the new workflow status appear and the red text go away.
    Is that normal? Is that the performance that everyone else is seeing as well?
    I struggle to see why simply moving a workflow from one task to another should take that on a machine that isn’t doing anything else at the time.
    (1)   
    I have a standalone (non-clustered) SharePoint box, 4 CPUs, 8 GB of memory, more than half of that available, acting as application server and wfe; only the database is on different box.
    (2)   
    The CPU only goes up to 18 or 19%, so CPU does not seem to be the bottleneck. Half the RAM is also still free.
    (3)   
    The workflow is designed with Nintex, and has about 9 flexi and review tasks – the last 2 of them in a loop iterating over typically 3 or 4 items.
    (4)   
    Looking at the logs it looks like the processing in Nintex only takes about 1 second – I don’t know where the other 3 seconds are going.
    (5)   
    There is nothing obvious in the logs.
    (6)   
    We’ve looked at all the “theoretical” improvements around throttling and batch sizes etc. – none of them appeared make any difference. And the workflow is so small that it looks like my tasks gets executed straight away. The problem appears
    to be that the execution takes too long(?) and therefore has not finished by the time the page get redrawn.
    (7)   
    I am running perfmon and I can e.g. see one(!) workflow being loaded into memory – as expected as I am the only user.
    (8)   
    I am seeing a total of 3(?) SQL queries being executed(?). I get the Bytes Sent/sec spiking at 25K, and Bytes received at 18K. But is this good or bad or a bottleneck?
    Where do I take it from here?
    I have been told that “[…] most customers have no issue with this as they are used to the way SP operates and it can be slow at times.” Is it really that bad?
    If it is worth watching more performance counters then I’d need to know what to compare them to.
    Is there something else I am missing?
    Thanks
    Martin

    Hi,
    Before considering an additional hardware try to change following configurations for workflow:
    Increase Throttle Size
    Increase Batch Size
    Time Out
    Workflow Timer Interval
    AutoCleanUpDays
    Increase Throttle Size
    The Workflow throttle setting controls how many Workflows can be processing at any one time on the entire server farm. By increasing the throttle it will allow the number of Workflows execution or can be initiated at a time.
    Use below PowerShell command to get the current Throttle Size:
    Get-SPFarmConfig | Select WorkflowPostponeThreshold
    Use below PowerShell command to set new Throttle Size:
    Set-SPFarmConfig -WorkflowPostponeThreshold 100
    Increase Batch Size
    This is the size that determines number of events processed for a single Workflow instance. Default value is 100, but it can be range from 1 to any number.
    Use below PowerShell command to get the current Batch Size:
    Get-SPFarmConfig | Select WorkflowBatchSize
    Use below PowerShell command to set new Batch Size:
    Set-SPFarmConfig -WorkflowBatchSize 200
    Time Out
    This decides the time out of the Workflow event. The default value is 5 and can be any integer. The time is in minute.
    Use below STSADM command to get the current Time Out value:
    stsadm -o getproperty -pn workflow-eventdelivery-timeout
    Use below STSADM command to get the current Time Out value:
    stsadm -o setproperty -pn workflow-eventdelivery-timeout -pv “15″
    Workflow Timer Interval
    This setting is applicable at Web Application level and not the farm level. The workflow timer interval specifies how often the workflow SPTimer job fires to process pending workflow tasks. This interval also represents the granularity of delay timers within
    your workflow. If a timer is set to delay for one minute, but the interval timer fires only every five minutes, the workflow delays for five minutes, not one minute.
    Use below STSADM command to get the current Workflow Timer Interval value:
    stsadm -o getproperty -pn job-workflow -url <Web Application Url>
    Use below STSADM command to get the current Workflow Timer Interval value:
    stsadm -o setproperty -pn job-workflow -pv “Every 10 minutes between 0 and 30″ -url <Web Application Url>
    Here is the url for reference :
    http://praveenkasireddy.wordpress.com/2013/06/14/workflow-due-to-heavy-load-the-latest-workflow-operation-has-been-queued-it-will-attempt-to-resume-at-a-later-time/

  • Due to heavy load, the latest workflow operation has been queued. It will attempt to resume at a later time.

    I have SharePoint 2010 Enterprise running SP1. Configuration is one SharePoint server in the farm and a SQL 2008 R2 database for the backend. Our user environment is 80 users with very little load on the SharePoint server. I have the workflow timer
    set to 1 minute.
    I have a SPD workflow that starts manually on a form library. Whenever I publish a new version of the workflow, the next time I start the workflow it takes the full minute to finish. If I click on the workflow status before it finishes, I see the message
    "Due to heavy load, the latest workflow operation has been queued. It will
    attempt to resume at a later time.". After the minute completes the workflow finishes.
    Here's the weird thing, the next time I start the workflow, it runs in a couple of seconds - almost instantly. I've tried up to 15 times after the inital publishing and everything seems to work fine on initiation.
    Well, that would be fine for me, however, I intermintantly get this heavy load message during task processes that are running inside the workflow. It's probably less than 5% of the time. It's really frustrating though so I appreciate some help. I'm look
    online and haven't found anything that describes my situation.
    Thank you in advance!

    Hi,
    Before considering an additional hardware try to change following configurations for workflow:
    Increase Throttle Size
    Increase Batch Size
    Time Out
    Workflow Timer Interval
    AutoCleanUpDays
    Increase Throttle Size
    The Workflow throttle setting controls how many Workflows can be processing at any one time on the entire server farm. By increasing the throttle it will allow the number of Workflows execution or can be initiated at a time.
    Use below PowerShell command to get the current Throttle Size:
    Get-SPFarmConfig |
    Select WorkflowPostponeThreshold
    Use below PowerShell command to set new Throttle Size:
    Set-SPFarmConfig -WorkflowPostponeThreshold
    100
    Increase Batch Size
    This is the size that determines number of events processed for a single Workflow instance. Default value is 100, but it can be range from 1 to any number.
    Use below PowerShell command to get the current Batch Size:
    Get-SPFarmConfig |
    Select WorkflowBatchSize
    Use below PowerShell command to set new Batch Size:
    Set-SPFarmConfig -WorkflowBatchSize
    200
    Time Out
    This decides the time out of the Workflow event. The default value is 5 and can be any integer. The time is in minute.
    Use below STSADM command to get the current Time Out value:
    stsadm -o getproperty -pn workflow-eventdelivery-timeout
    Use below STSADM command to get the current Time Out value:
    stsadm -o setproperty -pn workflow-eventdelivery-timeout -pv “15″
    Workflow Timer Interval
    This setting is applicable at Web Application level and not the farm level. The workflow timer interval specifies how often the workflow SPTimer job fires to process pending workflow tasks. This interval also represents the granularity of delay timers within
    your workflow. If a timer is set to delay for one minute, but the interval timer fires only every five minutes, the workflow delays for five minutes, not one minute.
    Use below STSADM command to get the current Workflow Timer Interval value:
    stsadm -o getproperty -pn job-workflow -url <Web Application Url>
    Use below STSADM command to get the current Workflow Timer Interval value:
    stsadm -o setproperty -pn job-workflow -pv “Every 10 minutes between 0 and 30″ -url <Web Application Url>
    Here is the url for reference :
    http://praveenkasireddy.wordpress.com/2013/06/14/workflow-due-to-heavy-load-the-latest-workflow-operation-has-been-queued-it-will-attempt-to-resume-at-a-later-time/

  • FM to read the different steps in workflow and the status at each step

    Hi All,
    Is there any FM in SAP which gives the detail roadmap of the steps taken in a workflow and the diffrent status or decision at each step.
    I am looking for something like what you see when you click on the "STARTED WORKFLOW" in the business workplace outbox.
    Which shows up the "steps in the process so far "  and the decision and the agents for each of them.
    Thanks,
    Charan.

    Hi,
      You can get the status according to the task. please check with FM "SAP_WAPI_GET_WI_DELTA".
    Regards
    SM Nizamudeen

  • Getting Error While Attaching Concurrent Program Output PDF file for POAPPRV Workflow

    Hi All,
    I am getting the below error when I am trying to attach concurrent program output to the PO Approval Notification.
    An Error occurred in the following Workflow.
    Item Type = POAPPRV
    Item Key = 1040589-528378
    User Key =945871
    Error Name = WF_ERROR
    Error Message = [WF_ERROR] ERROR_MESSAGE=3835: Error '-20002 - ORA-20002: [WFMLR_DOCUMENT_ERROR]' encountered during execution of Generate function 'WF_XML.Generate' for event 'oracle.apps.wf.notification.send'. ERROR_STACK=
    Wf_Notification.GetAttrblob(3604701, ZZ_PREVIOUS_PO_COMPARE, text/html)
    WF_XML.GetAttachment(3604701, text/html)
    WF_XML.GetAttachments(3604701, http://oraerp.am.corp.xxxx.com:8099/pls/DEV, 11283)
    WF_XML.GenerateDoc(oracle.apps.wf.notification.send, 3604701)
    WF_XML.Generate(oracle.apps.wf.notification.send, 3604701)
    WF_XML.Generate(oracle.apps.wf.notification.send, 3604701)
    Wf_Event.setMessage(oracle.apps.wf.notification.send, 3604701, WF_XML.Generate)
    Wf_Event.dispatch_internal()
    Error Stack =
    Activity ID = 190844
    Activity Label = AL_NOTIFY_APPROVER_PROCESS:ZZ_PO_PO_APPROVE_ATTCH
    Result Code = #MAIL
    Notification ID = 3604701
    There are several threads for this error however I cannot find any specific solution to the problem.
    Please find the code below -
        wf_engine.setitemattrdocument(itemtype=>itemtype,
                                      itemkey=> itemkey,
                                      aname=>'ZZ_PREVIOUS_PO_COMPARE',
                                      documentid =>'PLSQLBLOB:zz_po_reqapproval_init1.xx_notif_attachments/' || to_char(l_request_id_prev_po)||':'||to_char(l_document_num));
    -- here l_request_id_q_and_s is the request id of the program and l_document_num is the PO document number
    PROCEDURE xx_notif_attachments(p_request_id    IN VARCHAR2,
                                   p_document_num  IN VARCHAR2,
                                   p_document      IN OUT BLOB,
                                   p_document_type IN OUT VARCHAR2) IS
      v_lob_id          NUMBER;
      v_document_num    VARCHAR2(15);
      v_document_prefix VARCHAR2(100);
      v_file_name       VARCHAR2(500);
      v_file_on_os      BFILE;
      v_temp_lob        BLOB;
      v_dest_offset     NUMBER := 1;
      v_src_offset      NUMBER := 1;
      v_out_file_name   VARCHAR2(2000);
      v_conc_prog_name  VARCHAR2(500);
      v_conc_req_id     NUMBER;
      CURSOR get_output_file(p_concurrent_request_id NUMBER) IS
        SELECT cr.outfile_name, cp.concurrent_program_name
          FROM fnd_concurrent_requests cr, fnd_concurrent_programs_vl cp
         WHERE request_id = p_concurrent_request_id
           AND cp.concurrent_program_id = cr.concurrent_program_id;
    BEGIN
      --    set_debug_context('xx_notif_attach_procedure');
      v_conc_req_id  := to_number(substr(p_request_id,
                                         1,
                                         instr(p_request_id, ':') - 1));
      v_document_num := substr(p_request_id,
                               instr(p_request_id, ':') + 1,
                               length(p_request_id) - 2);
      OPEN get_output_file(v_conc_req_id);
      FETCH get_output_file
        INTO v_out_file_name, v_conc_prog_name;
      CLOSE get_output_file;
      v_out_file_name := substr(v_out_file_name,
                                instr(v_out_file_name, '/', -1) + 1);
      v_file_name     := to_char(v_document_num) || '-Previous_PO_Rev.pdf';
      utl_file.fcopy(src_location  => 'APPS_OUT_DIR',
                     src_filename  => v_out_file_name,
                     dest_location => 'PO_DATA_DIR',
                     dest_filename => v_file_name);
      --  v_lob_id := to_number(v_document_id);
      v_file_on_os := bfilename('PO_DATA_DIR', v_file_name);
      dbms_lob.createtemporary(v_temp_lob, cache => FALSE);
      dbms_lob.fileopen(v_file_on_os, dbms_lob.file_readonly);
      dbms_lob.loadblobfromfile(dest_lob    => v_temp_lob,
                                src_bfile   => v_file_on_os,
                                amount      => dbms_lob.getlength(v_file_on_os),
                                dest_offset => v_dest_offset,
                                src_offset  => v_src_offset);
      dbms_lob.fileclose(v_file_on_os);
      p_document_type := 'application/pdf;name=' || v_file_name;
      dbms_lob.copy(p_document, v_temp_lob, dbms_lob.getlength(v_temp_lob));
    EXCEPTION
      WHEN OTHERS THEN
        wf_core.CONTEXT('ZZ_PO_REQAPPROVAL_INIT1',
                        'xx_notif_attachments',
                        v_document_num,
                        p_request_id);
        RAISE;
    END xx_notif_attachments;
    Please help me find a to the above mentioned error.
    Thanks,
    Suvigya

    There are two ways to look at what error the PLSQLBLOB API is throwing.
    1) Call your PLSQLBLOB API GNE_PO_CREATE_FILE_ATTACHMENT.Gne_Create_File_Attachment directly from a PLSQL block and verify that it returns the BLOB data successfully.
    You could also call another WF API that in turn executes the PLSQLBLOB API internally. For example,
    <pre>
    declare
    l_document blob;
    l_doctype varchar2(240);
    l_aname varchar2(90);
    begin
    dbms_lob.CreateTemporary(l_document, true, dbms_lob.Session);
    -- 207046 - This is the notification id of your failed workflow
    -- PO_REPORT - Document type attribute
    -- 'text/html' - Content Type being generated for
    Wf_Notification.GetAttrBLOB(207046, 'PO_REPORT', 'text/html', l_document, l_doctype, l_aname);
    -- Print the size of the document here to verify it was fetched correctly
    end;
    </pre>
    2) Turn on log for SYSADMIN user with following attributes.
    Log Enabled = TRUE
    Log Level = ERROR
    Log Module = wf.plsql%
    Restart the Workflow Deferred Agent Listener and Workflow Notification Deferred Agent Listener and run your workflow process. Search for log messages written for above context and you can identify the error at wf.plsql.WF_XML.GetAttachment module with message starting as "Error when getting BLOB attachment ->"
    Hope this helps.
    Vijay

  • Error while calling a workflow process from a JSP

    Hi,
    I have a workflow program which is havign a process, which in turn calls 2 other processes.
    Below given is the procedure which i am using to call the main process.
    ===========================================================
    CREATE OR REPLACE PROCEDURE misProcFromJsp(
    Cart_Id in number,
    Email_Address varchar2
    ) IS
    itemtype varchar2(35);
    WorkflowProcess varchar2(35);
    itemkey varchar2(35);
    temp varchar2(35);
    BEGIN
    WorkflowProcess := 'CALLING PROCESS';
    itemtype := 'PPCUSTOM';
    select ITEM_KEY_SEQ.nextval into temp from dual;
    itemkey := temp;
    wf_engine.CreateProcess (itemtype => itemtype,
              itemkey => itemkey,
    process => WorkflowProcess);
    wf_engine.SetItemAttrText (itemtype => itemtype,
                   itemkey => itemkey,
                   aname => 'CART_ID',
    avalue => Cart_Id);
    wf_engine.SetItemAttrText (itemtype => itemtype,
                   itemkey => itemkey,
                   aname => 'EMAIL ADDRESS',
    avalue => Email_Address);
    wf_engine.StartProcess(itemtype => itemtype,
    itemkey => itemkey);     
    commit;
    END misProcFromJsp;
    ===========================================================
    The JSP page which I used is as follows,
    ===========================================================
    <%-- /* $Header: misasSalesCampaignDem.jsp 115.20 2006/06/22 16:59:55 pnambiar noship $ */ --%>
    <!-- METADATA_SOURCE - JRAD -->
    <html dir="ltr" lang="en-US-ORACLE9I">
    <head>
    <%@include file="jtfincl.jsp" %>
    <%@page import="java.sql.*, oracle.jdbc.pool.*" %>
    <%-- @page import = "oracle.apps.jtf.util.GeneralUtil" --%>
    <%-- @page import="oracle.apps.jtf.infrastructure.SecurityUtil" --%>
    <%-- @page import="oracle.apps.ibe.util.RequestCtx" --%>
    <%@page session = "false" %>
    <%-- @page errorPage = "jtfacerr.jsp" --%>
    <%     // commented by Pradeep 4 DBI
    String appName= "MISASFSP";
    boolean stateless = false;
    %>
    <%@ include file="jtfsrnfp.jsp" %>
    <head><title>Test Page Stores</title>
    <body>
    <%
    // current user id
    Integer loggedUserID;
    int userId;
    String sUserId;
    OracleConnection _connection = null;
    try {
         loggedUserID = GeneralUtil.getUserID();
         userId = loggedUserID.intValue();
         sUserId = String.valueOf(loggedUserID.intValue());
              _connection = (OracleConnection) TransactionScope.getConnection();
         java.sql.Statement stmt = _connection.createStatement();  
    if ( request.getParameter("CART_ID") != null && !(request.getParameter("CART_ID")).equals("") && !(request.getParameter("CART_ID")).equals("null")) {
    int par_cart_ID = Integer.parseInt(request.getParameter("CART_ID"));
    String par_email = request.getParameter("EMAIL_ADDRESS");
                   // For Pagination - Calling teh procedure.. to fetch the number of rows.
                        java.sql.CallableStatement proc = _connection.prepareCall("{call misProcFromJsp(?,?)}");
                        //please do keep in mind that the parameter names are the same as defined in teh procedure header.
                        //Any change in the header requires a change here too.
                        //registering the in parameters
                        proc.setInt(1,par_cart_ID);
                        proc.setString(2,par_email);
                        proc.execute();
                        //this particular result will be the total count of all teh records for lead details for the particular search condition.
                        if ((request.getParameter("showLog")).equals("Y")) {
                             out.println("Procedure Completed");
    %>
    <FORM NAME=MYfORM ACTION="misasTextButtonLat.jsp">
    <INPUT TYPE="text" NAME="CART_ID" value ='1378477'>
    <INPUT TYPE="text" NAME="EMAIL_ADDRESS" value ='[email protected]'>
    <INPUT TYPE="submit" value="Go">
    </form>
    <%
         catch ( Exception e )
    String errMsg="";
         StackTraceElement[] myErr;
         myErr = e.getStackTrace();
         errMsg = e.getMessage();
         out.println("<font color=red> <b><u>Error</u> : " + errMsg + "</b></font><font color=black> " + myErr[4].toString() + myErr[5].toString()+ myErr[6].toString()+myErr[7].toString()+ myErr[8].toString()+ myErr[9].toString()+ "</font><BR>");
         out.println("<font color=red> <b><u>Error</u> :</b></font><font color=black> " + myErr[0].toString() + myErr[1].toString() + myErr[2].toString()+ myErr[3].toString() + myErr[4].toString() + "</font><BR>");
    %>
         </body>
    </html>
    ==========================================================
    It is giving the following error
    ===========================================================
    Error : ORA-06550: line 1, column 7: PLS-00201: identifier 'MISPROCFROMJSP' must be declared ORA-06550: line 1, column 7: PL/SQL: Statement ignored oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)oracle.jdbc.driver.OracleStatement.executeNonQuery(OracleStatement.java:2185)oracle.jdbc.driver.OracleStatement.doExecuteOther(OracleStatement.java:2059)oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2976)oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:656)oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:734)
    Error : oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:289)oracle.jdbc.ttc7.Oall7.receive(Oall7.java:589)oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1972)oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:1119)
    ==========================================================
    What went wrong? Please let me know.
    Thanks

    I did some changes and the error now I am getting is,
    ===========================================================
    Error : null oracle.jsp.JspServlet.internalService(JspServlet.java:186)oracle.jsp.JspServlet.service(JspServlet.java:156)javax.servlet.http.HttpServlet.service(HttpServlet.java:588)org.apache.jserv.JServConnection.processRequest(JServConnection.java:456)org.apache.jserv.JServConnection.run(JServConnection.java:294)java.lang.Thread.run(Thread.java:534)
    Error : oa_html._Text__Button__Lat._jspService(_Text__Button__Lat.java:712)oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:119)oracle.jsp.app.JspApplication.dispatchRequest(JspApplication.java:417)oracle.jsp.JspServlet.doDispatch(JspServlet.java:267)oracle.jsp.JspServlet.internalService(JspServlet.java:186)
    ============================================================
    Does the middle tier need to be bounced?
    Thanks

  • Error while updating the content in workflow

    Hi,
    I'm getting an error while updating the content in workflow thru the checkout option. i.e. contributor checks in the content - reviewer rejects the content - then contributor checks out and modifies the content as per the reviewer's remarks and while checking in the following error occurs
    Content Server Request Failed
    Unable to check in content item 'HO000128' for workflow. Unable to execute service method 'checkInUpdateRevByID'. (System Error: Runtime error: java.lang.NullPointerException
    at intradoc.server.DocServiceHandler.checkInRevByID(DocServiceHandler.java:248)
    at intradoc.server.DocServiceHandler.checkInUpdateRevByID(DocServiceHandler.java:240)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at intradoc.common.IdcMethodHolder.invokeMethod(ClassHelperUtils.java:617)
    at intradoc.common.ClassHelperUtils.executeMethodReportStatus(ClassHelperUtils.java:293)
    at intradoc.server.ServiceHandler.executeAction(ServiceHandler.java:79)
    at intradoc.server.Service.doCodeEx(Service.java:490)
    at intradoc.server.Service.doCode(Service.java:472)
    at intradoc.server.ServiceRequestImplementor.doAction(ServiceRequestImplementor.java:1360)
    at intradoc.server.Service.doAction(Service.java:452)
    at intradoc.server.ServiceRequestImplementor.doActions(ServiceRequestImplementor.java:1201)
    at intradoc.server.Service.doActions(Service.java:447)
    at intradoc.server.ServiceRequestImplementor.executeSubServiceCode(ServiceRequestImplementor.java:1071)
    at intradoc.server.Service.executeSubServiceCode(Service.java:3497)
    at intradoc.server.ServiceRequestImplementor.executeServiceEx(ServiceRequestImplementor.java:942)
    at intradoc.server.Service.executeServiceEx(Service.java:3492)
    at intradoc.server.Service.executeService(Service.java:3476)
    at intradoc.server.DocServiceHandler.determineWorkflowCheckin(DocServiceHandler.java:3833)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at intradoc.common.IdcMethodHolder.invokeMethod(ClassHelperUtils.java:617)
    at intradoc.common.ClassHelperUtils.executeMethodReportStatus(ClassHelperUtils.java:293)
    at intradoc.server.ServiceHandler.executeAction(ServiceHandler.java:79)
    at intradoc.server.Service.doCodeEx(Service.java:490)
    at intradoc.server.Service.doCode(Service.java:472)
    at intradoc.server.ServiceRequestImplementor.doAction(ServiceRequestImplementor.java:1360)
    at intradoc.server.Service.doAction(Service.java:452)
    at intradoc.server.ServiceRequestImplementor.doActions(ServiceRequestImplementor.java:1201)
    at intradoc.server.Service.doActions(Service.java:447)
    at intradoc.server.ServiceRequestImplementor.executeSubServiceCode(ServiceRequestImplementor.java:1071)
    at intradoc.server.Service.executeSubServiceCode(Service.java:3497)
    at intradoc.server.ServiceRequestImplementor.executeServiceEx(ServiceRequestImplementor.java:942)
    at intradoc.server.Service.executeServiceEx(Service.java:3492)
    at intradoc.server.Service.executeService(Service.java:3476)
    at intradoc.server.Service.doSubService(Service.java:3465)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at intradoc.common.IdcMethodHolder.invokeMethod(ClassHelperUtils.java:617)
    at intradoc.common.ClassHelperUtils.executeMethodEx(ClassHelperUtils.java:279)
    at intradoc.common.ClassHelperUtils.executeMethod(ClassHelperUtils.java:264)
    at intradoc.server.Service.doCodeEx(Service.java:507)
    at intradoc.server.Service.doCode(Service.java:472)
    at intradoc.server.ServiceRequestImplementor.doAction(ServiceRequestImplementor.java:1360)
    at intradoc.server.Service.doAction(Service.java:452)
    at intradoc.server.ServiceRequestImplementor.doActions(ServiceRequestImplementor.java:1201)
    at intradoc.server.Service.doActions(Service.java:447)
    at intradoc.server.ServiceRequestImplementor.executeActions(ServiceRequestImplementor.java:1121)
    at intradoc.server.Service.executeActions(Service.java:433)
    at intradoc.server.ServiceRequestImplementor.doRequest(ServiceRequestImplementor.java:635)
    at intradoc.server.Service.doRequest(Service.java:1707)
    at intradoc.server.ServiceManager.processCommand(ServiceManager.java:359)
    at intradoc.server.IdcServerThread.run(IdcServerThread.java:197))
    Please help to resolve.
    Thanks in advance
    Prasad

    I also get error while updating the content in workflow thru the checkout option as reviewer. i.e. contributor checks in the content - then reviewer either updates the metadata or checks out and modifies the content and while checking in the following error occurs
    Content Server Request Failed
    Unable to update the content item information for 'HO000128'.
    The content ID must be specified.
    Please help to resolve.
    Thanks in advance
    Prasad

  • Error while transporting TP in production server in workflow

    Dear All,
    I have done some workflows . It is working fine in development in quality but in production while TP transporting it is showing error like '  Temporary log /usr/sap/trans/tmp/TP number not found'. why this error is coming ?
    Please guide m . Its urgent.
    Regards ,
    Shital

    Shital,
    Do you transporting those requests into PRD as Developer?
    I think it is basis related issue, did you had any word with SAP basis person.
    Any ways could you send long text when it is giving this error.
    May be some sequencing issue in PRD?
    Cheers
    Jai

  • Non PO Invoice Workflow - Error while Posting Document

    Hi Experts
    Hope I am posting this in the right forum as I am new to SDN!
    We have customized a multi-level non PO invoice workflow which triggers at the time of clicking 'Save as Completed' in tcode FV60.
    It has been configured to automatically post the document once it is approved at all the required levels. However, the document cannot be posted even after it receives all levels of approval. The status shows as 'Complete' but the error message shown is 'No Amount Authorization for Customer/Vendor in Company Code' in the workflow screen (MSGID F5, MSGNO 155).
    Now as I understand, this is the error for maintenance of user ID in tolerance groups. However, all user IDs have already been maintained and no matter who parks the document, the same error appears in the workflow screen.
    We have no idea whether this is happening due to some missing config from FI side or WF side.
    Regards

    Hi
    Go to Tcode: OBA3 Assign tolerance group under your company code and give all limits for each group. If you done this one your properly your problem should solve.

Maybe you are looking for

  • IOS 5 Photo syncing woes

    So after updating to iOS 5, all of my music and videos have sucessfully synced, but not photos. I have ~20k photos in my Photoshop Elements library, consisting of different file types.  Recently, it always wants to sync about 6000 (or any random numb

  • Immediate help required with this update statement

    update holds set area = (select newarea from stagesteps) where holds.stage= stagesteps.stagename and holds.step = stagesteps.STEPNAME and holds.area is not null When I do this, it says stagesteps.stepame is an invalid name.. Any helps on this highly

  • Sending SSL Certificate to external Web service in BizTalk 2010

    Hi, We are facing issues in calling the external web service(SAP I Web service) which is authenticated using the SSL self signed certificates. When BizTalk sends the request to SAP it fails with HTTP 401 error, and in SAP PI the log says calling appl

  • Third Party File Recovery

    I was currently working on a video project, using FCP with a few friends. When I woke up the next morning the project file was in the trash. I removed the project file from the trash and put it back on the computers HD and an external that I am using

  • I am trying to find the 'nivision.h' file in Vision 7.1.1

    I have searched 'C:\Program Files\National Instruments\Vision\Include' , but I have no include directory here.  Also have looked for  'C:\Program Files\National Instruments\Vision\Lib\MSVC' (do not have 'Lib' directory) and any other possibilities I