Workflow in OPM

Dear guru,
we are implementing OPM for our client in Indonesia. The scoup are Quality, Product development, process execution, ASCP Unconstrain, and so on. My question is about workflow on ASCP, quality, and process execution. Is this workflow unseperated part from those module I mentioned before, or can be seperated. for example, I am not implementing this workflow for changing formula status from new to approved for general use, I simply manually change it from change status. Or in the other way, can I say that is this workflow not a mandatory setup?
Regards
Indra

Hi Indra
Ofcourse, Oracle Workflow is not Mandatory. And not consider as a seperate module. Basically WF is used for Approvals, for Items, POs, Requistions, Formulas...etc., and without WF also you can perform the standard features of Oracle modules.
But if you tell your client about WF and can ask them to use the same then it will be better for security/recording/professional purposes. Now a days Clients are very intelligent that, they themself are asking for security approvals.
Hence you can make use of Oracle WF.
Hope you understood
Thanks
Raj
Sierra

Similar Messages

  • OPM Quality Worklow

    Dear All,
    Need your help, I would like to activate workflow for OPM Quality Sample Notification.
    Anyone please share your experience, any steps should I follow?
    Thanks
    Jonadi

    Process: The Sample Creation Notification workflow sends a notification to draw a material sample as required by the associated sampling plan for the item specification and specification validity rule in effect.
    Setting Up:
    This particular even will be initiated from OPM Inventory. the moment we receive the Material it will trigger one event which is "oracle.apps.gmi.inventory.created".
    you need to set this under workflow events
    Regards
    Srinivas

  • OPM/Oracle Order Management

    What are the pro's and con's of switching from OPM Order Fulfillment to Oracle Order Management?
    We use Order Fulfillment now and are concern we will lose the profile functionality when and if we upgrade.

    OPM Order Fulfillment is a simple to use Order Entry and Shipping application that meets the needs of many process manufacturers.
    Oracle Order Management is more flexible and configurable to suit a number of different industries. Oracle Process Manufacturing is integrated
    to Order Management and has functionality to support entry of order quantities in two units of measure, as well as designation
    of a preferred quality grade and automatic allocation of process inventory.
    In place of the Order Profile (or order template) functionality available in Order Fulfillment, we recommend using the Copy Order
    functionality in Order Management. You can establish a special order type in Order Management (you can call it Template or
    Profile) and assign a workflow to the order type that makes it "non-transactable" (the order stays in an "entered" state so that
    it can't be booked or shipped). You can query on these special order types and copy them to create standard orders. When you
    copy an order in Order Management, you can change the order type, so the Template order can be copied and the new order
    type can be "Standard".

  • Scsm 2012 r2 (ur 3) with exchange connector 3 - state never run but reveices mail in opm log?!

    Hello everybody,
    we have installed scsm 2012 r2 (UR 3) with exchange connector 3. We have connected the connector by the workflow Account (domain user "servicedesk" is in local admin group of the sm server and in the sm Administrators group) and have access
    to the mailbox on exchange (2010; autodiscovery is working correct). We receive all mails in the servicedesk mailbox on restarting the sm services and see the mails in the opm logs. But no incidents are created and the connector stays in "never
    tun" state and does not receive mails any More after the first start. What do we have missed to check? Beste regards Thomas

    i have added the registry keys.
    the last log says:
    EwsResponse: <Trace Tag="EwsResponse" Tid="1" Time="2014-08-10 18:38:52Z" Version="14.03.0067.001">
      <?xml version="1.0" encoding="utf-8"?>
      <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
        <s:Header>
          <h:ServerVersionInfo MajorVersion="14" MinorVersion="3" MajorBuildNumber="174" MinorBuildNumber="1" Version="Exchange2010_SP2" xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types"
    xmlns="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" />
        </s:Header>
        <s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
          <m:FindItemResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
            <m:ResponseMessages>
              <m:FindItemResponseMessage ResponseClass="Success">
                <m:ResponseCode>NoError</m:ResponseCode>
                <m:RootFolder IndexedPagingOffset="1" TotalItemsInView="1" IncludesLastItemInRange="true">
                  <t:Items>
                    <t:Message>
                      <t:ItemId Id="AAMkAGM0NzI4Nzc5LWM0NWMtNDBiZC1iMjIyLWU5YTZlNGM0YjVjZgBGAAAAAADPPKNYSCzLRLMWL/UoJg1CBwAVmecTYATlQovl76GEizxlAAAAoyGrAAAVmecTYATlQovl76GEizxlAAAAo0kZAAA="
    ChangeKey="CQAAABYAAAAVmecTYATlQovl76GEizxlAAAAo4Fd" />
                      <t:ParentFolderId Id="AAMkAGM0NzI4Nzc5LWM0NWMtNDBiZC1iMjIyLWU5YTZlNGM0YjVjZgAuAAAAAADPPKNYSCzLRLMWL/UoJg1CAQAVmecTYATlQovl76GEizxlAAAAoyGrAAA="
    ChangeKey="AQAAAA==" />
                      <t:ItemClass>IPM.Note</t:ItemClass>
                      <t:Subject>Test 1</t:Subject>
                      <t:Sensitivity>Normal</t:Sensitivity>
                      <t:DateTimeReceived>2014-08-10T18:35:12Z</t:DateTimeReceived>
                      <t:Size>2858</t:Size>
                      <t:Importance>Normal</t:Importance>
                      <t:IsSubmitted>false</t:IsSubmitted>
                      <t:IsDraft>false</t:IsDraft>
                      <t:IsFromMe>false</t:IsFromMe>
                      <t:IsResend>false</t:IsResend>
                      <t:IsUnmodified>true</t:IsUnmodified>
                      <t:DateTimeSent>2014-08-10T18:34:56Z</t:DateTimeSent>
                      <t:DateTimeCreated>2014-08-10T18:35:12Z</t:DateTimeCreated>
                      <t:DisplayCc />
                      <t:DisplayTo>Service Desk</t:DisplayTo>
                      <t:HasAttachments>false</t:HasAttachments>
                      <t:Culture>de</t:Culture>
                      <t:EffectiveRights>
                        <t:CreateAssociated>false</t:CreateAssociated>
                        <t:CreateContents>false</t:CreateContents>
                        <t:CreateHierarchy>false</t:CreateHierarchy>
                        <t:Delete>true</t:Delete>
                        <t:Modify>true</t:Modify>
                        <t:Read>true</t:Read>
                      </t:EffectiveRights>
                      <t:LastModifiedName>Thomas Göttl</t:LastModifiedName>
                      <t:LastModifiedTime>2014-08-10T18:35:12Z</t:LastModifiedTime>
                      <t:Sender>
                        <t:Mailbox>
                          <t:Name>Thomas Göttl</t:Name>
                        </t:Mailbox>
                      </t:Sender>
                      <t:IsReadReceiptRequested>false</t:IsReadReceiptRequested>
                      <t:ConversationIndex>Ac+0ycOTmfHK8XrvSM2ftu9rcjREeg==</t:ConversationIndex>
                      <t:ConversationTopic>Test 1</t:ConversationTopic>
                      <t:From>
                        <t:Mailbox>
                          <t:Name>Thomas Göttl</t:Name>
                        </t:Mailbox>
                      </t:From>
                      <t:InternetMessageId>&lt;[email protected]&gt;</t:InternetMessageId>
                      <t:IsRead>false</t:IsRead>
                      <t:ReceivedBy>
                        <t:Mailbox>
                          <t:Name>Service Desk</t:Name>
                        </t:Mailbox>
                      </t:ReceivedBy>
                      <t:ReceivedRepresenting>
                        <t:Mailbox>
                          <t:Name>Service Desk</t:Name>
                        </t:Mailbox>
                      </t:ReceivedRepresenting>
                    </t:Message>
                  </t:Items>
                </m:RootFolder>
              </m:FindItemResponseMessage>
            </m:ResponseMessages>
          </m:FindItemResponse>
        </s:Body>
      </s:Envelope>
    </Trace>
    and the one before:
    EwsResponseHttpHeaders: <Trace Tag="EwsResponseHttpHeaders" Tid="1" Time="2014-08-10 18:38:52Z">
    200 OK
    Transfer-Encoding: chunked
    Content-Encoding: gzip
    Vary: Accept-Encoding
    Persistent-Auth: false
    Cache-Control: private
    Content-Type: text/xml; charset=utf-8
    Date: Sun, 10 Aug 2014 18:38:51 GMT
    Server: Microsoft-IIS/7.5
    WWW-Authenticate: Negotiate oYGyMIGvoAMKAQChCwYJKoZIgvcSAQICooGaBIGXYIGUBgkqhkiG9xIBAgICAG+BhDCBgaADAgEFoQMCAQ+idTBzoAMCAReibARqZCLk7OlBLjMLGg8XtQO+mutKfYPyK2jeJ2B+wq9raDj1chIZkQT0/72YftQJfdtu1DwfzmlEz8kDSD7ElFT2nF/T5LMDIMT4EpLJALsGQPTec86ubSbl1dKsIZn09qdoGDg5tGxV0bwOSg==
    X-AspNet-Version: 2.0.50727
    X-Powered-By: ASP.NET
    </Trace>
    the one before:
    EwsRequest: <Trace Tag="EwsRequest" Tid="1" Time="2014-08-10 18:38:51Z" Version="14.03.0067.001">
      <?xml version="1.0" encoding="utf-8"?>
      <soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
        <soap:Header>
          <t:RequestServerVersion Version="Exchange2007_SP1" />
          <t:TimeZoneContext>
            <t:TimeZoneDefinition Id="W. Europe Standard Time" />
          </t:TimeZoneContext>
        </soap:Header>
        <soap:Body>
          <m:FindItem Traversal="Shallow">
            <m:ItemShape>
              <t:BaseShape>AllProperties</t:BaseShape>
            </m:ItemShape>
            <m:IndexedPageItemView MaxEntriesReturned="1" Offset="0" BasePoint="Beginning" />
            <m:Restriction>
              <t:And>
                <t:IsEqualTo>
                  <t:FieldURI FieldURI="message:IsRead" />
                  <t:FieldURIOrConstant>
                    <t:Constant Value="false" />
                  </t:FieldURIOrConstant>
                </t:IsEqualTo>
                <t:IsEqualTo>
                  <t:FieldURI FieldURI="item:ItemClass" />
                  <t:FieldURIOrConstant>
                    <t:Constant Value="IPM.Note" />
                  </t:FieldURIOrConstant>
                </t:IsEqualTo>
              </t:And>
            </m:Restriction>
            <m:ParentFolderIds>
              <t:DistinguishedFolderId Id="inbox" />
            </m:ParentFolderIds>
          </m:FindItem>
        </soap:Body>
      </soap:Envelope>
    </Trace>
    the one before:
    EwsRequestHttpHeaders: <Trace Tag="EwsRequestHttpHeaders" Tid="1" Time="2014-08-10 18:38:51Z">
    POST /EWS/Exchange.asmx HTTP/1.1
    Content-Type: text/xml; charset=utf-8
    Accept: text/xml
    User-Agent: ExchangeServicesClient/14.03.0067.001
    Accept-Encoding: gzip,deflate
    </Trace>
    the one before (xxx for our Domain):
    Exchange Connector: Autodiscovered URL: https://sv-exchange01.xxx.intra/EWS/Exchange.asmx
    Is there something we missed?

  • Changing PO workflows to reference HR secondary assignments

    Hi -
    My client is currently implementing Oracle GL, FA, AP, AR, PO, iP, OPM, and OM. They are considering adding HR into the scope as soon as next week - however, only the portions of HR necessary for PO will be ready at our go-live. Based on this, I have one question. Has anyone had any experience with customizing Workflow to have the PO and Requisition approval workflows look at HR secondary assignments instead of primary? My client doesn't want to have to make their primary assignments to drive financial workflows. They would like to base the primary assignment on HR data and the secondary on the financial workflows.
    Thanks!

    Hi Michael,
    Yes there is. In customizing under Personnel Management -> Organizational Management -> Transport. Check the documentation there for more information.
    Regards,
    Martin

  • Misc. Receipt with OPM quality enable r12

    Dear Friends..
    need your guidance..
    i setup OPM Quality and event for sample creation - including Validity rule for Inventory that have impact on misc. transaction esp. Miscellaneous Receipt.
    now, i can receipt quantity with all information, and a notification was send to sampler people.
    but, what i confuse is, on receiving transactions, and WIP qc process - all process pending until the sample result disposition change into ACCEPT.
    but, on Miscellaneous Receipt, after i save and check the onhand quantity workbench - the quantity i have receipt by Miscellaneous Receipt directly added.
    even if Notification send to sampler people, by this far, what i've know is on Miscellaneous Receipt, the sampling process ONLY for formality process, is it correct or i have a wrong setup?
    please share your opinion..
    regards

    Hi,
    You would have to set up the AME approvals.
    Plse see note 954429.1 in Oracle support portal - OPM Quality Management ERES/Workflow Setup for Release 12 (Doc ID 954429.1)
    Thanks,
    Peter

  • 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

Maybe you are looking for

  • Bi Content in 7.0 - Did SAP Convert all content to use new ETL process?

    Hello. I am working with BI 7.0 for the first time.  I have 8 years of BW 3.x experience.  We are starting a new BI project and we are in the process of activating Business Content.  We have BI_CONT level 7 (the latest as of today I believe).  I appe

  • Blackberry ID is not responding

    I did a security wipe on my bb q5 device, after the phone turned on, i selected a language, choose a wifi connection , swipe left to choose my country and agree to terms and conditions, but the agree to terms page won't load, it takes me to the homep

  • Blocking the invoice

    hi all, i want to block the invoices for payment ,which are not cleared by quality inspection. in spro is there any settings available for the same. Kindly guide me. Regards, velu

  • Scrapping of materials with approvals

    Hello SAP experts, I need your advice for the following issue. Any process or advice is greatly appreciated. (1) Client wants to scrap unsold and out of date materials at end of the each quarter. (2) The scrapping process should include the approvals

  • Apache-Weblogic Bridge does not work?

    I've gone thru' the documentation regarding setting up of apache-weblogic bridge, but still it does not work. Does anyboday have any more details regarding this...EnvironmentOS - Solars 5.7Weblogic - 5.1 SP 8Apache 1.3.12