OIM 10g Task Assignment adapter

Hi All,
I have Task assignment adapter in place which assigns the task to the group in OIM - group decided on some condition.
I want to bypass this task assignment if user's manager is the member of decided group. Is it possible?
Any pointer would be a great help.
Thanks,
Pallavi

Add a task say "Check Manager" which will check whether user's manager is part of that group or not. Based on that send some response YES or NO
On YES, call "Approval" and attach task assignment adapter there.
On NO, you can attach any task if you want or leave it as it is.
Reference:
http://rajivdewan.blogspot.com/2010/07/multilevel-approval-workflow-in-oracle.html

Similar Messages

  • OIM - Task Assignment Adapter - How to get the object instance key?

    Hello experts,
    I'm trying to use a task assignment adapter to assign an approval task dynamically. Basically, the user can request a resource like "CustomApp Profiles" and we create an object form to let them choose the profile that he needs. Each profile has an owner, which is populate in a Lookup (Owner is the code and Profile is the decode).
    So, in the approval task, I need to get the profile selected by user in the object form and search into the lookup who is the owner of that profile. But I don't know how can I get the object instance key using the parameters that can be mapped to a task assignment adapter.
    Looking into the OIM documents, I believe that the easier way is using the request key, because the REQ_KEY is a foreign key in OBI table.
    Did anyone knows how can I get the object instance key using the request key? Can I use some API or should I execute a SQL statement directly in OIM database?
    Best Regards,
    Nitto

    To retry a task that is in a rejected state, you use the SCH_KEY which is the task key.  In OIM, all rejected tasks are listed in the OTI table.  It contains all the important information about a rejected or pending task.
    You can use the APIs found in the tcProvisioningOperationsIntf class to retrieve open tasks.
    -Kevin

  • OIM 11gR2 - Task Assignment

    There is an approval workflow in my current 10g environment, where approval is assigned to a particular user after running a task assignment adapter. The java code inside my task assignment adapter has the logic which gives the approver key as output. Based on this the task is assigned to that particular approver. In OIM 11gr2 since the approval workflow happens in SOA side how can i perform my java logic there and route the approval based on that. Thanks.

    You can obtain user key either using expression rules or if logic is complex, you can use java embedding task to add your java code inside composite. Refer link here:
    http://docs.oracle.com/cd/E21764_01/doc.1111/e14309/soa_api.htm
    Check section: 26.2.3 Updating the SOA Composite
    regards,
    GP

  • Task Assignment Adapter Error

    Hi I have developed a task assignment adapter for approval.I am hardcoding the group name and then qurtying database to find the group.Then from the resultset I am getting the value of the group key.and then I m writing two tasks to get the key and the key type.
    I am getting the following error
    Running PUTGROUPINHASHMAP
    2008-09-05 12:09:48,640 INFO [STDOUT] Target Class = com.thortech.xl.util.adapters.tcUtilHashTableOperations
    2008-09-05 12:09:48,640 INFO [STDOUT] Running QUERYDATABASE
    2008-09-05 12:09:48,703 INFO [STDOUT] Running GETGROUPKEY
    2008-09-05 12:09:48,703 INFO [STDOUT] Running SETKEY
    2008-09-05 12:09:48,703 INFO [STDOUT] Target Class = com.thortech.xl.util.adapters.tcUtilStringOperations
    2008-09-05 12:09:48,734 ERROR [XELLERATE.DATABASE] select ugp_key from ugp where ugp_key =
    java.sql.SQLException: ORA-00936: missing expression
    But when I am hardcoding the group key then its working fine.
    I just dont know where the error is.
    Please help me regarding this.
    I think OIM is querying database but is not able to find the group,but the group which I putting in hashmap is present.

    I suppose I was not clear in my query.
    Actually I have a situation in which if a user logins and requests a resource then I get the above error and as a result of which the approval goes to the Xelsysadm and not the group that I have assigned.
    But when I login as Xelsysadm i.e system administrator and then if I request for a resource for any user by clicking the request menu item then the approval is working fine i.e it goes to the group that I have assigned.
    Please help me regarding this
    Edited by: jason_2007 on Sep 7, 2008 11:50 PM

  • Approval request to dynamic user --- task assignment adapter

    Hi All,
    I have a requirement.
    1. User will be requesting for AD Group Memership.
    2. The approval request should go to the owner of the AD group. (AD Group owner will have an OIM Account)
    is it possible to add custom "Target Type" in "Assignment" tab of Approval task?
    Assistance appreciated.
    Thanks & Regards
    Inbaa.

    Hi Thanks for the info. I have tried the approach.
    Task Assignment adapter has two adapter variables - "Adapter Return value for key" ( Type - Object) and "Adapter Return value for key type" ( Type - Object)
    1. I have added a task which invokes my custom java class method -- getApprover() - returns approver Name (User Id) -- String format -> I have mapped the output to adapter variable "KEY"
    2. I have added another task which invokes my custom java class method -- getApproverType() - returns statuc string "User" -- String format -> I have mapped the output to adapter variable "TYPE"
    I have attached this adapter to approval process with the mapping
    Variable -Adapter Return value for key & Adapter Return value for key Type
    Map To - Task Information
    Qualifier - Note
    When I request for the resource , the task assignment adapter assigns the approval request to the USER itself instead of the approver.  Anything I am missing here??
    Thanks & Regards
    Inbaa

  • How to get group key from a task assignment adapter

    Hi All,
    Senario:
    I have two groups, say G1 and G2.
    One Access policy, say P. (This access policy is associated with AD resource.)
    AD Resource Object R.
    I have defined an Approval process for Resource R.
    Access policy P is assigned to both Group G1 and G2.
    This Access Policy P is linked to Resource R
    According to above configuration,
    When I add User U1 to Group G1 ( or G2 ) through "Group Membership", Access Policy P is executed and the approval process which associate with the Resource R is executed.
    In my Approval process, I have a task assignment adapter.
    Within my adapter, I want to get the group key, which cause to fires this approval process. ( It may be G1's key or G2's key. )
    Could some one help me for this ?
    Regards,
    Thirlk
    Edited by: thirlk on Jun 28, 2009 10:55 PM

    See this thread
    Working on the same requirement.
    How to get the administrator group of a group from a approval process
    If you have any further question let me know.

  • Task assignment adapter - dynamic route to either group or user

    I have configured an approval process in design console and I want to be able to dynamically route the approval request to either the target user manager OR a group. I have written logic/code to automatically determine what group or user to route the request to and also to set the key type to either user or group depending on my logic conditions.
    This code is executed in a task assignment adapter and set the values for the key type and key depending on the logic.
    i.e. the key type would be "user" and key would be the user key for the target user manager, if my logic determines it should be routed to a manager
    OR
    the key type would be "group" and key would be the group key for the approval group, if my logic determines it should be routed to a group
    HOWEVER MY PROBLEM is with assigning the adapter to a process task. I am thinking I would need to have two entries in the Assignment tab of the process task. The first entry has the default rule and I assigned the target type to "group" and include my adapter here.
    How do I go about assigning the second entry for target type "user"? Since "Default" is the only rule option and I am not able to use it twice.
    I tried to create a rule in the Rule Definition form and create a Task Assignment rule that might do something to check if a task is assigned to "user", so that I can have this as my second rule in the Assignment tab of the process task and if it is true, it would call my adapter that would return the key for the target user's manager.
    I DO NOT KNOW what conditions to set in the Rule Element window for the Task Assignment rule. Can someone tell me what to do here OR provide me with a better alternative.

    Thanks for all the responses. Approvals are now being routed correctly.
    I have a follow-up question though........ I created a process adapter to send notifications to either the target user manager or members of the group that is the approval is routed to.
    I have a notification process task as part of my approval process and in its Integration tab, I added my process adapter that sends notifications.
    The code for the adapter uses the same logic I described in my original question to determine if the approval is being routed to a user of group. If it is routed to a group, the notification adapter identifies members of the group and sends email to them, this part works fine.
    However the problem is when the logic determines it should be routed to the target user's manager. One of the variables of this notification process adapter is username of the target user. Using that username, my code determines who the manager, gets the manager's email address and sends the email. Problem with this is that when mapping variables for process adapters in the Integration tab, in the Map To field, it does not give you the option of mapping to Request Target User, which would have provided me with user attributes of the target user such as the user name. It provides option for the Requester, but my reality is that the Requester is not always the Target User.
    Any suggestions for fixing this would be greatly appreciated.

  • Xellerate sample API for Task Assignment adapter

    Can anyone share an example of Task Assignment API adapter (jar file) for Xellerate? Thank you.

    Hi Maria,
    1. When do I need to use Task assignment rule and when task assignment adapter?
    Both are for the same purpose i.e., assigning a task/approval task to a person or group. I have never worked on task assignment rule but unless you have complicated logic for assigning a task you can always go ahead with task assignment rule.
    2. Or do I need to use them together?
    Either of them will suffice!
    3. I put the adapter on the assignment tab and it says "Mapping incomplete" How do you map this adapter? (I have to pass user logon somehow)
    When you add the adapter to the assignment tab, map button(below the assign button) which is deactivated by default will be activated, you can go ahead and map the variables there!
    Hope this helps.
    -Hrushi
    Edited by: hrushi on Sep 6, 2010 7:24 PM

  • What are Task assignment adapter and Task Assignment Rule?

    What are Task assignment adapter and Task Assignment Rule?

    Task assignment adapter lets you return a value to the type and assignee values in the adapter. You can use these to dynamically assigned to users or groups.
    Task assignment rules let you specific the priority in which the assignment rules are done. If you go to any process task adapter and open it. Go to the assignemnt tab. Here is where you can specifiy your rules to create an order of determination. You can have multiple entries with rules determining organization and then have them assigned to appropriate groups in each assignemt rule entry. Or you can dynamically assign by using the default and a task assignment adapter to figure that out.
    -Kevin

  • Task Assignment Adapter - Tools Reference guide

    Can anybody please tell me an example of how to create a Task Assignment Adapter? I have already gone throuh the Tools Reference Guide.
    I created one task assignment adapter in adapter factory and it provides by default with 2 variables
    Adapter Return value for key type
    Adapter return value for key
    Which type of task should i create within this adapter to map these 2 variables? Can anybody please provide some guidance/examples. I am getting Compilation errors and code_gen.errors if I just try to SET VARIABLEs to some 'null' literal value.
    Very appreciative.
    Thanks!

    Hi experts,
    Inspite of going through various threads related to task assignment adapters...i m unable to get how the adapter has to be created.
    i got to understand that based on task assigment rule evaluation...it will be assigned to certain user or group as defined in assignment tab of process defn
    but the first step to create the adapter and map the variables is unclear. the adapter has two default variables. how they have to be mapped. and what requires addition of new variables to it.
    for example if i have the case where users with certain last name , say last name ='John' will ve evaluated in task assigment rule. and in process defn, the task 'last name updated' has to be assigned to certain group say group1.
    so for users with last name 'john', if some modification is done in last name, last name updated task is fired and it will be assigned to group1. That means it has to be approved by member/members of group1 to be completed. I hope i m right upto this point.
    Now what does the task assignment adapter actually do.
    In assignment tab, it decides if the task is assigned to group/user. and the adapter decides to which user/group it is assigned.
    considering this example. please detail the steps for adapter creation and variables mapping

  • Task Assignment Adapter

    What is the use of utility task in task assignment adapter?
    And what is return variable for key and return variable for key type in adapter variables for task assignment adapter?
    Thanks,
    Durgaprasad

    Utility Tasks
    Task Assignment Adapter:
    Metalink Note: 980372.1 & 1119497.1
    lmgtfy
    and I got:
    Sample
    -Bikash

  • OIM: what parameters for the task assignment adapter?

    Hi,
    following the tip here: Re: how to use adapter to assign task to a specific user
    I created a task assigment adapter and set the following by means of a simple java class:
    Adapter return value for key="myapprover2"
    Adapter return value for key type="User"
    myapprover2 is the login name of a user in OIM.
    It does not seam to work, because the approval task is assigned to the xelsysadm instead of myapprover2.
    What I else need to do to get it working?
    Thanks.

    The key needs to be the Users.Key value returned in a string format to the Object variable holding the task assignment key variable.
    -Kevin

  • OIM: what should return a task assignment ?

    Hi,
    I have written a task assignement adapter, which returns the login name of a user, as it appears in OIM "myappr1".
    I have specified this adapter in the Assignment tab of a process task of an approval task.
    The approval process and the task I wrote are correctly executed, however the approval request goes to xelsysadm rather then to myappr1 as I would expect.
    What value should actually return the adapter?
    Thanks much.

    See I beleive that for a Task Assignment you must supply the target type within the adapter itself (and not on the Target Type field). Look for the following correction as well.
    When you create this adapter you will find that there are two automatically included variables named Return Variable for Key and Return Variable for Key Type. In addition to the task you have already added for the selection of target user, also add another task for selection of target type. Do it as follows:
    - Create a utility task. Select xlUtils.jar from API source.
    - Select holdData for the method name.
    - Now provide value for Return Variable for Key Type as Group (this would be a literal).
    Try it out once again.
    Thanks
    Sunny

  • Replicating the app functionality from OIM 10g to OIM 11gR2

    Hi,
    I have a resource object with an object form and a process form and approval, provisioning configured in OIM 10g design console. Provisioning is manual provisioning assigned to a particular group based on a task assignment adapter. For replicating the same in OIM 11gR2 i followed the following steps.
    1. Created a Resource object in Design console.
    2. Created a dummy IT Resource ( Since while creating app instance it is having IT Resource as Mandatory field. * Is there any way to skip this as i do not have any IT resource in my original app as it is going for manual provisioning?)*
    3. Created a process form in Design Console with the same fields as present in my 10g app process form.
    4. Now i need to Create an app instance and select the created resource object and IT resoource. Also i need to create a form associated with the app instance in which i will add the fields as present in the object form in my 10g app. ( Here i am not understanding how data will flow from object form to process form since there is no data flow mapping here)
    5. Other steps like creating the SOA composite with human tasks and deploying it and after that creating approval policies is pretty much clear.
    Please clarify whether the steps are correct and also the queries which i have posted in between. Thanks in advance.
    Regards,
    Durgaprasad
    Edited by: Durgaprasad on Jan 17, 2013 3:38 AM

    Thanks Gyanprakash. Wll disconnected resource trigger our custom approval process if we select the resource name properly in scope in operational level approval policy. Have you tried a disconnected resource with your custom approval process. Because i read the following lines in admin guide
    Oracle Identity Manager supports provisioning of disconnected resources by using the SOA worklist for manual provisioning of disconnected resources. After the role-based provisioning decision or SOA request approval is complete and the corresponding application instance is determined to be a disconnected application instance, a new SOA workflow is started. This new SOA workflow is assigned to the manual provisioning administrator.
    So i thought disconnected app instance will have its own approval process configured during the creation and it will route accordingly. So just wanted to clarify how to make disconnected app instance to trigger our approval. will approval policay take care of it as i am going to select the name of the disconnected app in the scope field.

  • OIM 10g Approvals

    Hi All
    I have the following queries regarding OIM approval workflows.
    1. In OIM approval workflows, how can we ensure that the requestor is not the approver for his requests (Seggregation of Duty - SOD)
    2. As per the OOTB functionality of OIM, the request goes to user's manager for approval. In case the Manager's ID is disabled, the request goes to xelsysadm.
    How can we change this behavior so that if the user's manager is disabled, the request should go to User's manager's manager.
    Please help.

    Answer to your questions:
    1. This is a known bug and has been fixed in the latest patch.
    2. You need a custom task assignment adapter that will check whether the manager is disabled and return the manager of manager user key instead.

Maybe you are looking for