Financial Workflow Routing

Hi All,
I am able to create a workflow using object type FIPP when I park an FI document (journal entry using FV50/FB50). The workflow workitem is routed to the approver specified in OBWF according to organization assignment. However, I would like to have te workitem routed to a user based on information entered in the FI document. For example, for company code 1000 and G/L account 123000, I would like to send it to user A. For company code 2000 and G/L account 124000, I would like to send it to user B. I can set up a custom table to route it to the correct approver.
But, can someone throw some light on where this routing needs to happen? Is there an enhancement point or a user-exit that gives me the option to intervene and change routing instead of following what's in OBWF? Please advise at the earliest.

You can have a workflow triggered by the FIPP.POSTED event. In the workflow header you can specify the event in the Start events. Then you can create a task in workflow template for user decision or Park document review based on requirement. The agent rule based on function module can be created using PFAC wherien you can pass the FIPP object in agent rule container. In side the rule you can define a custom function module which will return agents based on attribtes of FIPP Object.

Similar Messages

  • Can LiveCycle Workflow route to machines instead of users?

    Hi, can livecycle route documents in its workflow to specific machines in an intranet instead of specific people/users? I have a shared machine that could have any number of users. I don't know who will be logged in. I only know that whoever is assigned to that location can view the documents.
    I do not want to route them to a person, a group, etc., just a computer.
    Can it be done?
    Thank you for any help.

    You can restrict the Person or group field value be selected from a particular SharePoint group. And you can add the 37 persons to that SharePoint group. 
    This setting is part of the field settings. "Choose From"
    And for checking whether a user belongs to a particular group, you can use object model to find or webservice or CSOM depending on which interface you're building(Infopath/webpart/etc.,)
    Below is a sample:
    http://stackoverflow.com/questions/1380277/sharepoint-find-out-if-current-user-belongs-to-specified-group 

  • Workflow routing to 3 people

    when there are 3 people assigned to an responsibility rule it is routing to 3 persons . in the log its showing workitem is with 3 users how can it be rectified

    Hi,
    In your first post what you have mentioned is correct. That is the standard behavior of rule/workflow.
    But while coming to second case, i would advice you to check the workflow log again and see if any of the agents forwarded it to some other user and was it sent back to the particular user determined by the rule?
    Even if someone forwards the workitem, the workitem will disappear from all other agents inbox.
    Or see, if he has started the execution of the workitem. In that case, that workitem would be reserved by that agent and will show only that agent name in log.
    Regards,
    Raj

  • Ad Hoc Workflow Routing

    Has anyone developed an Ad Hoc workflow in Content Services using BPEL?
    I am doing this using the User Request action to initiate the workflow. I'm also using the Ad Hoc design pattern in BPEL. This works well.
    My problem is, I am not sure how to specify the person who should be the first assignee. Is there a way to use an optional attribute or something that would be a username?

    Looking in to the source code a bit deeper - it turns out that there is (currently) an undocumented way to dynamically add a responder to a request item.
    You can send an escelation message (IFS_ECM_ESCALATION_RESPONSE) back on IFS_BPEL_IN with a username supplied in the (IFS_ECM_WORKFLOW_RESPONDER) parameter - which will get added to the request if not already present.
    The user thus can see full details of the request item. What I have not fully tested yet is whether the user has read access to any saved definitions found in the REQUEST_DEFINITIONS section when dealing with FdkConstants.CREATE_DOCUMENT_REQUEST_TYPE request types.
    Anyway, the following code is from the BPEL processes that I'll be soon releasing after running Oracle BPEL's schemac tool on CONTENT_IFSQUEUEMESSAGE.xsd to generate Java helper classes ...
    import com.oracle.xmlns.xdb.CONTENT.IFSQUEUEMESSAGE;
    import com.oracle.xmlns.xdb.CONTENT.IFSQUEUEMESSAGEFactory;
    import com.oracle.xmlns.xdb.CONTENT.IFSQUEUEMESSAGEPARAMETER;
    import com.oracle.xmlns.xdb.CONTENT.IFSQUEUEMESSAGEPARAMETERFactory;
    import com.oracle.xmlns.xdb.CONTENT.PARAMETERS;
    import com.oracle.xmlns.xdb.CONTENT.PARAMETERSFactory;
    import com.oracle.xmlns.xdb.CONTENT.IIFSQUEUEMESSAGE;
    import com.oracle.xmlns.xdb.CONTENT.IIFSQUEUEMESSAGEPARAMETER;
    import com.oracle.xmlns.xdb.CONTENT.IPARAMETERS;
      public static final String WF_MESSAGETYPE_ESCALATION =
        "IFS_ECM_ESCALATION_RESPONSE";
      public static final String WF_PARAM_PROCESSID =
        "IFS_ECM_WORKFLOW_PROCESSID";
      public static final String WF_PARAM_RESPONDER =
        "IFS_ECM_WORKFLOW_RESPONDER";
      // returning this message allows addition of new responder on the REQUEST item
      public static IFSQUEUEMESSAGE getWorkflowEscalationMessage(
        long processid, String user
        throws Exception
        IFSQUEUEMESSAGE msg = IFSQUEUEMESSAGEFactory.createFacade();
        msg.setMESSAGETYPE(WF_MESSAGETYPE_ESCALATION);
        PARAMETERS parameters = PARAMETERSFactory.createFacade();
        IFSQUEUEMESSAGEPARAMETER param1 =
          IFSQUEUEMESSAGEPARAMETERFactory.createFacade();
        param1.setNAME(WF_PARAM_PROCESSID);
        param1.setVALUE(String.valueOf(processid));
        param1.setDATATYPE("STRING");
        parameters.addPARAMETERLIST_ITEM(param1);
        IFSQUEUEMESSAGEPARAMETER param2 =
          IFSQUEUEMESSAGEPARAMETERFactory.createFacade();
        param2.setNAME(WF_PARAM_RESPONDER);
        param2.setVALUE(user);
        param2.setDATATYPE("STRING");
        parameters.addPARAMETERLIST_ITEM(param2);
        msg.setPARAMETERLIST(parameters);
        return msg;
      }If you want to test from PL/SQL, you can do so with something like the following :-
    /* Enqueue to IFS_BPEL_IN: */
    DECLARE
       enqueue_options     dbms_aq.enqueue_options_t;
       message_properties  dbms_aq.message_properties_t;
       message_handle      RAW(16);
       -- recipients          DBMS_AQ.aq$_recipient_list_t;
       queueMsg            IFSQUEUEMESSAGE;
    BEGIN
    --  -- Indicates that a Workflow is successfully completed.
    --  IFSQUEUEMESSAGE.initialize('IFS_ECM_WORKFLOW_MSG_COMPLETE',queueMsg);
    --  queueMsg.AddParameterToList('IFS_ECM_WORKFLOW_PROCESSID','48944','STRING');
    --  -- Response - True if request is approved, False otherwise
    --  queueMsg.AddParameterToList('IFS_ECM_WORKFLOW_RESPONSE','TRUE','STRING');
    --  -- Indicates that a time out has occurred in the Workflow 
    --  IFSQUEUEMESSAGE.initialize('IFS_ECM_WORKFLOW_MSG_EXPIRED',queueMsg);
    --  queueMsg.AddParameterToList('IFS_ECM_WORKFLOW_PROCESSID','48944','STRING');
    --  -- Indicates that a responder has not responded to the request in the specified time limit.
    --  IFSQUEUEMESSAGE.initialize('IFS_ECM_ESCALATION_RESPONSE',queueMsg);
    --  queueMsg.AddParameterToList('IFS_ECM_WORKFLOW_PROCESSID','48944','STRING');
    --  queueMsg.AddParameterToList('IFS_ECM_WORKFLOW_RESPONDER','RICH','STRING');
      dbms_aq.enqueue(queue_name      => 'IFS_BPEL_IN',          
                      enqueue_options => enqueue_options,      
                      message_properties   => message_properties,    
                      payload              => queueMsg,              
                      msgid                => message_handle);
       COMMIT;
    END;
    /In terms of dates, I expect in the new few weeks. By the way, these workflows are built based on the Content DB development kit. Though you should be able to manually backport these in to the old Content Services workflow framework if you wanted.
    cheers
    Matt.

  • Workflow Routing

    Hi everyone! We are running 46C and I have setup an org unit with positions and usernames assigned to positions. However, my workflow will not send to all users in the org unit... I have set it up as a general task and the agent assignment in the workflow step as org unit. How can I get my workflow item to appear in all the inboxes of the users in that org unit? Thank you very much! Hoping for your replies. 

    On what basis you have to select the First records ?
    If there are 5 Agents assigned to one position then according to your requirement "select the first one and send the workitem to that user?" Correct me if I am wrong.
    Get all the agents into multiline container element and then create one background task in workflow and call custom method and get the first records from the multiline container element.
    Regards
    Aman

  • Invoking Web service from iProc Workflow Notification,OAF Changes?

    I have a Requirement to Digitally sign the Requisition before the requisition is finally approved. We have a role in iProcurement, 'Certifying Official' , who would be the final approver. When the 'Certifying Official' receives the notification and clicks the 'Approve' button , we make a call to a web service to get the Digital signature and display a new page with the Requisition information back to the user. The user can choose to either save or cancel the Signature , if they save the signature we will display a confirmation page and comeback to the workflow process .
    I was wondering what a better approach would be
    1) Cusomize the OA Framework (Extend the controller) notification page and call the web service to digitally sign the Requisition and forward the user to a new page. Based on the user selection, I will have to re-direct to the new page or comeback and execute the workflow.
    2) Customize Oracle workflow. If choose the workflow route, I was wondering If i would be able to display new pages based on the user action.
    3) Have a link on the Notification page.
    Thanks

    You can use either of these two options. Even with using option 2 you have to extend the controller to fetch the nextPage from the workflow using appropriate API's. So better use the first option by extending the controller, call the webservice and forward to the required page.

  • Substituting WF-BATCH user in PO creation Workflow

    Experts,
    Looking for a bit of guidance on an issue that has been hanging around a while, and no one seems to be able to assist.
    Here is the scenario: Purchasing P Req's are created, and workflow routes them to the appropriate releaser(s) for approval. The approver releases the P Req to be converted to a PO. This is where things start going wrong. We are looking to output the PO in an email (PDF) format to SCOT. This in itself isn't a problem, except that the workflow user WF-BATCH also creates emails for IS-U customers in a RAW format with the text in the body of the email. Including a PDF format within the node then converts the IS-U emails to PDF, which is out of the question. We have tried every(?) conceivable option within the INT node to accommodate both options within the same node.
    Trying a different approach I have created another node under INT called 'SMTP', with the thought of routing the PO outputs to this using a user substitution in the workflow in association with OSS Note 311633, which effectively points the users output to the appropriate node via a PID.
    I guess the 2 questions I have are:
    1. Have I missed anything in the standard SCOT setup that could be utilised, and;
    2. If the answer to 1 is 'No', whether my proposed 'solution' is achievable.
    Many thanks in advance,
    Paul...
    Message was edited by: Paul Brown

    Hi Sudhir,
    the release is done with the BAPI function
    BAPI_REQUISITION_RELEASE_GEN
    Some of these BAPI's do offer an import element, saying "USER", where you can overwrite the current user with another one's ID, to avoid having the background user as the last change of the object.
    In this case, this option is not available, so to say, there's nothing that can be fixed.
    The solution to set and overwrite the release step with another user id, is exactly to change the change documents. So you've already found what you were looking for.
    Best wishes,
    Florin

  • OTL - Table Relationship between Timecard and Workflow

    Hi All,
    Our employees work multiple projects and charge their time thru OTL to each of individual project as appropriate every pay period. Each project has it's own project manager. When an employee sumbits his timecard for approval the workflow routes an approval notification to EACH project manager. Every project manager must approve the employee's timecard before the "overall" timecard status is APPROVED.
    For example, an employee works on four diffent projects - each project has a different PM. When the employee submits his timecard for approval an approval notification is sent to all four PMs. However, more than occasionally at least one of the PMs doesn't approve the timecard in a timely fashion so the employee's timecard is "hung up" waiting for approval.
    I need to write a query in which I specifiy both an employee and particular pay period, and the query returns for the employee/pay peirod EACH Project Name, the PM for the respective project, and whether or not the the PM has approved the employee's time for the respective PM's project in the specified pay period.
    Unfortunately I don't really know where to start. I don't know if there is an HXC or group of HXC tables that would allow me to report on the individual project manager's 'status' (i.e., has a PM approved his project in the employee's timecard)...or do I need to allow include some workflow tables such as (maybe ?) wf_notifications ? And if I need to include some WF tables can someone help me understand where the relationship between timecard and WF is definded/stored (in other words, for a particular timecard how can I query a WF table - for example, wf_notifications - and find all the respective notifications associated with that particular timecard ?
    I hope my question is clear, but please advise if you have any questions. Thanks in advance for the help !!
    Jeff

    Hi Jeff,
    Did you ever get an answer on this question, as I have similar issues.
    One question you may be able to answer - Do all approvals on the project side need to be done for ANY project information to pull into Project Accounting, or as each Project Manager approves their portion does it pull in to PA?
    Thanks very much!!
    Lori

  • Workflow Enhancements

    We use HCM F&P and everything works well in the Production system.
    We plan to make some enhancements to the Form like 1) Changes in Layout, 2) New Fields, 3) Changes in Workflow routing
    We plan to introduce new container variables which will change workflow routing after the changes are done.
    When we plan to release to the production system, what will happen to active workflows in the system?
    (workflow which are not completed with old layout or does not have the variables set?)
    What is the best way to minimize the impact to existing / work in progress workflows?

    Sorry, I was fuzzy. My at work English does not translate well to decaf English. Many distractions. My apologies if I offended or sounded argumentative.
    End result, we are "meaning" the same thing.
    Let me re-explain my meaning to all,
    SAP's WF Versions are misleading. What I meant by not a actual 'version' in prod, it creates a new version "number" in prod any time it gets transported to prod, regardless of versioning in dev. Period. But the version numbers probably won't match match up over time. i.e. ver 8 in dev may not match ver 8 in prod. You can't look at ver 8 in dev and expect ver 8 in prod to be same change.
    If you DO create a new version in dev and transport it to prod, any inProcess WFs will maintain old template through completion.
    If you DO NOT create a new version in dev and transport it to prod, any inProcess WFs will be a mix of old / new template.(i.e. mangled unusable mess sometimes).
    Tasks of same number, overwritten regardless of version. Versioning "template" won't version Tasks.
    Subflows? I don't recall. I suspect they would be treated like a Task.
    All this is all verifiable by creating a test template in dev (or sand box). Create with a bunch of forks, tasks, conditions, outcomes, etc. Save. Create a bunch of WF instances at various states of completion. Then make modification to the template and see how it affects the running WFs and new WFs. Simple.
    Create MANY test WFs in dev and Q and I know EXACTLY what it is going to do before it gets to prod. Personally, I like my weekends!
    Again, apologies for any misunderstanding and length of this post. This is a very important concept WF'ers need to fully understand (and test) if you have complicated or mission critical processes.
    Rick Sample

  • SOA Composer and editing Routing Rules

    I have been trying to edit my human workflow routing rules decision table from the SOA Composer web interface. the routing rules appear in the list of ruiles available to open and edit but when I open the routing rules it defaults to the IF/THEN view and the decision table view isn't available from the dropdown. The SOA Composer does however work for more general decision tables that aren't routing rules, is there something special about routing rules that makes them no editable at runtime via the SOA Composer?

    Hi Naresh!
    The state of SOA composer in the Weblogic console is 'Installed' but not running! When I try to start the soa composer it shows:
    Application composer does not have any targets.
    All of the Deployments selected are currently in a state which is incompatible with this operation. No action will be performed.
    And because of this the browser display nothing!
    Thanks!
    Ana

  • Using External Routing Service to Route the task

    Hi,
    I am using External Routing Service to Route the task and have placed the jar file at
    /oracle/app/product/fmw/Oracle_SOA1/soa/modules/oracle.soa.ext_11.1.1
    I have modified the Manifest.mf file for "oracle.soa.ext.jar" as
    Manifest-Version: 1.0
    Ant-Version: Apache Ant 1.7.1
    Created-By: 17.0-b17 (Sun Microsystems Inc.)
    Implementation-Vendor: Oracle
    Implementation-Title: Oracle SOA EXT
    Implementation-Version: 11.1.1
    Product-Name: Oracle SOA EXT
    Class-Path: ./routing/lib/jaxrpc.jar ./routing/lib/axis-update.jar ./routing/lib/axis.jar ./routing/lib/log4j-1.2.11.jar ./routing/lib/orabpel.jar ./routing/lib/bpm-services.jar ./routing/lib/xmlparserv2.jar ./routing/lib/wsdl4j-1.5.1.jar ./routing/lib/commons-discovery-0.2.jar ./routing/workflow.routing.jar
    Product-Version: 11.1.1.4.0
    Specification-Version: 11.1.1
    Extension-Name: oracle.soa.ext
    but it's failing to get the ExternalRoutingService.class and throws exception
    Missing class: ExternalRoutingService
         Dependent class: oracle.bpel.services.workflow.task.impl.RoutingSlipInterpretor
         Loader: weblogic.utils.classloaders.GenericClassLoader@2080514773
         Code-Source: /oracle/app/product/fmw/Oracle_SOA1/soa/modules/oracle.soa.workflow_11.1.1/bpm-services.jar
         Configuration: /oracle/app/product/fmw/Oracle_SOA1/soa/modules/oracle.soa.workflow_11.1.1/bpm-services.jar
    I tried adding the workflow.routing.jar to classpath (as this jar contains the ExternalRoutingService.class) and then gives error for IAssignmentService saying class not found IAssignmentService.class

    Hi Pranay,
    Did you find solution for this?
    I am also facing same issue.
    Thanks
    Balaji

  • Chaging description by the approver causes worng behaviour of workflow

    Hello,
    When approver makes changes to the SC "descritption" of SC and approves the SC is routed back to requistioner for accept/reject changes as well as appear in inbox the first approver for his approval.
    Error reporoduction
    Create a SC, single item, non-catalog,via “Describe requirement” functionality.
    The SC is sent to the first approver determined, for approval.
    The approver makes changes to ‘Description’ of SC and saves the changes(i.e. saving is  equivalent to approve here)
    The SC is routed back to requisitioner as well as seen in the first approver inbox for approval agian.
    As per the normal flow if the item are rejected the workflow  goes to requistioner for  approve/reject changes only(as the value of the SC changes), but here changing the desc causes the undesired bahaviour.
    I am using  WS14000133 workflow(n step dynamic workflow).
    please advice
    regards
    Sachin

    Hello,
    I don't understand what has security level of the workflow got to do with the issue?
    But still can you please let me know as how to set the security level of the workflow?
    The approver  when  rejects one of the line items straight away, without making any changes,  the workflow routes back to the requisitioner for accept changes or withdraw  the SC. In this case the workflow works fine.
    But when the same approver goes and changes the line item say desc or the
    G/L account the workflow routes to the requaisitoner for approval fo the cahnegs as well as appear in the inbox of the first approver 
    In both the cases the approver is the same , hence the security level could not be the  reason.
    Do you think that the changes to the worflow items ( as in desc. changes or G/l chages) needs to be handled by the BADI ?  Directly appoval or rejection of the line items are handled by the standard SAP code, hance no issues occur here.
    The Workflow is WS14000133.
    Regards
    SAchin

  • 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

  • Is it possible to remove the contribution step in the basic workflow?

    Hi,
    Our client wants complete control on the the steps and users for each step of the workflow.
    This is the approach they want to follow.
    There would be a default workflow associated for all content. Any updates to any manged content will have to go through this workflow. There will be only one step having one user for this workflow. Whenever content changes the workflow routes to this user. This user will then decide to define the steps and users for the steps of workflow to be asscoiated to this content.
    We thought of making it simple by using a critera workflow and basic workflows to achive this. The default workflow which I was saying would be the criteria workflow. Now once the workflow taskt comes o the user's basket he will then create a basic workflow for the content id with required steps and the users. He will then accept the criteria workflow and start the basic workflow immediately. But we have to ensure somehow that this content of criteria workflow should not be published. We are using content publishing uitility. Hope we can do something there. What I mean by not published here is that content changes made in the basic workflow should not be visible to the end site but they should be visible in the basic workflow.
    Now the concern is that in basic workflow there is a mandatory contributor step which is not really required for us. How can we avoid it. And we how to ensure that the approved contents of criteria are not published unless the basic workflow is approved?
    Regards,
    Pratap

    Pratap,
    I think you will have to mix several standard mechanisms to achieve what you are looking for.
    Note that there are two basic ways to achieve that an item is not accessible:
    - item's state (sending an item to a workflow or leaving it in pending state before the item is published belong to this option)
    - item's security (security groups, accounts, ACLs, etc.)
    If you want to have an item in a state that it has not entered a workflow (I'm not sure, but I think it wouldn't be a good idea to mix criteria and basic workflows), but it has to be accessible to a certain group of users, you may have to:
    1) check the item in so that it is accessible to the selected group of users only (published, no workflow)
    2) have the users start the workflow
    3) somewhere (most likely at the beginning of the workflow) relieve the security restriction so that "normal" users can access it during the workflow
    4) as soon as the workflow finishes, it will be available to everyone
    as for 1) I'd consider ACLs (Collaboration Manager component)
    Another option is to write a component with your own logic - if from any reason the standard mechanisms will have too many obstacles to overcome.
    I'd also recommend to consider using BPEL workflows rather than basic workflows - they are equally flexible (if not more) and they can be more easily combined with criteria workflows. You could:
    1) create a general criteria workflow which would grab any new item
    2) the criteria workflow would have just two steps: step 1 - grab an item, wait until BPEL workflow is defined/selected, then continue; step 2 - a synchro step which wait until BPEL workflow finishes, then continue or finish right away
    Jiri

  • Anybody know how you can see workflow objects?

    Hii,
    Trying to run process flow from pl/sql - van run mappings fine and mappings relate to pl/sql packages on the database.
    However, when try and see process flows on workflow schema cannot see them. Checking design centre location and name seem fine but just want to check at database level as well.
    Thanks
    BEGIN
    owbsys.wb_workspace_management.set_workspace('OWB_REPO','OWB_REPO_OWNER');
    DBMS_OUTPUT.PUT_LINE('Result: ' || TO_CHAR(owbsys.wb_rt_api_exec.run_task('PF_MOD_LOCATION1','PROCESS','PF1', null, null, 1)));
    END;
    where
    OWB_REPO is the workspace
    OWB_REPO_OWNER is the OWB Owner.
    PF1 is the name of my process flow

    I do not know the workflow tables. The workflow client application should not be used to make any modifications to OWB workflows; one of the MOS notes and docs mention it is ok to view the OWB workflows with the client, but with OWB 11.2 having the supported functionality built-in I'm not sure what value-add is obtained by viewing the deployed workflow from the OWF client. Similarly, the OWF Manager app would be superseded by the OWB Control Center and OWB Browser. Workflow Monitor is still supported with OWB, particularly if you have non-OWB workflows that integrate/interact for workflow routing/response, notifications, etc.

Maybe you are looking for