How to run process tasks in Xellerate User form sequentially

I have 2 tasks in the process definition of Xellerate User. One triggers on change in department and the other triggers on manager change. I want the manager task to trigger first and then the department task to run after the values have been updated in the former task. It so happens that always department task is getting triggered first.
I cannot have task dependency in Xellerate User form. I tried setting the response code in the manager task and have it generate department task. In this case the department task is triggered twice. First time it runs before the manager task. The second time since it is a task to run in the response code of manager task.
How to make each task run once and have it done sequentially?

Yes that was my first instinct but I need the old and new values of department and manager. That is possible when I make it a process task.
Heres what I want to do-
If there is a change in department of a user, send mail to manager with old and new department values.
If there is a change in manager when department changes, send mail to old and new manager with old and new department values.

Similar Messages

  • How to call Process Task in AD User proccess definition from Xellerate user

    Hello,
    I need a help from you guys.
    I have one customized process task in "Xellerate User" Process definition. When my this task executes completely, I would like to call one of the customized process task in "AD User" process definition from xellearte user. Is there any way we can do that?
    Thanks for your any help....

    There are lots of ways to accomplish this. I haven't read through the other posts, but here are a few options.
    Option 1 - Create a second task that also triggers at the same time, but set the task you already have as preceding. Then on your second task, write whatever code is needed to update a field, insert a new task, whatever the function is that's needed.
    Option 2 - On the completion response of your original task, just use the response code to trigger the second task from running. Then again, write whatever code is needed.
    Option 3 - Create a UDF on your user form. Add this field to the Lookup.USR_PROCESS_TRIGGERS. When your first task completes, use the APIs to update this field with a new value, perhaps the current date. On your AD Process Definition, create a task with the name you used in the lookup. This task will get triggered whenever the field is updated. Now if the user does not have an AD Instance, you don't have to worry about it ever running.
    I'm sure you could create other event handlers as well to do this, it just depends on how creative you want to be.
    -Kevin

  • OIM 11g changing process tasks on Xellerate User

    Hi all,
    I am trying to send an email when an OIM user gets disabled. To do this i would like to set the Notification for the "Disable User" process task on Xellerate User.
    However, any attempted change to the process tasks gives this error:
    The security level for this data item indicates that it cannot be updated.
    Update failed.
    Update failed.
    Adding a post-update event handler doesn't work in 11g anymore as well.
    What would be the suggested way to send emails and fire adapters on changes to the user profile?
    Thanks for your thoughts.

    Hi Kevin,
    I got it working by creating a new process task with task effect: Disables Process Or Access To Application
    That process task had an adapter attached that would send the mail.
    After your comment I went on to experiment with the notifications. Earlier i couldn't get them to be sent, but after creating a new process task (setting the tcCompleteTask handler and the notification) it started sending the emails. And now I don't need the custom adapter anymore.
    Not sure what changed, thanks for your input.

  • How to catch rollback in Disable user process task in Xellerat User Process

    hi ...
    I want to send an email to manager group of the user, once the user is disabled from the OIM (when end date is reached). I created an adapter and attached it to the ‘Changed User Disabled’ process task in the ‘xellerate user provisioning’ process and add a new row in the “Lookup.USR_PROCESS_TRIGGERS” Lookup definition. (code key: USR_DISABLED and Decode: Change User Disabled ). This adapter executes only when the user status is equal to “disabled”.
    This works correctly when the OIM user disabling process execute without any errors. But sometimes while disabling the user it gives an error (“resource is not configured properly”) and rolls back everything and make the user active. But at the same time my adapter runs and sends the mail informing user is disabled but yet user is active.
    My problem is how can I find or catch rolls back transaction in the “Disable User” process task (which is in “Xellerate User” process”) ??? If I can get to know that a roll back is occurred then I can send a mail to OIM administrator, informing that user disable process is failed.
    Can someone please help me to find this..
    Thanks in advance :)
    Regards,
    i.k.

    Hi Rajiv,
    Error occurs while disabling the user due to resource configuration problems. ( error message is : DOBJ.RESOURCE_NOTCONFIGURED_PROPERLY -- One or more provisioned resource is not configured properly) In this case i know the problem and how to solve it. But what I want to know is in any case if disable process get fail and if things get roll back again, then how can I track that situation and send a mail to OIM Admin(informing the failure) instead of sending a mail to user managers saying that user account has been disabled.
    I think now my problem is clear…. Can u please help me to find this.
    Regards,
    i.k.

  • Process tasks of "Xellerate User"'s  modified

    Hi Experts,
    In our env, Maapng info of all custom process tasks was updated to unmapped. Its happend for only Xellerate User resource object. we dont know, how it happend. Can ay one tell, any reason behind it. Last change in OIM is, installation of RACF connector into OIM. How ever, we are not sure, is this effects the Xellerate user's process task's adapter mapping information.
    Please suggest.
    Thanks,
    ravi.

    Hi Kevin,
    Yes, It was unmapped, We are looking for root cause of it. You meant to say, This unmapped thing was happend due to RACF connector installation?.
    Thanks.

  • Can we add process tasks to Xellerate User process?

    Hi,
    Can I add a process task- unconditional one to "Xellerate User" process definition?
    I want certain fields to be populated in User Profile Form, when the user is created/updated.
    Please advice

    I could manage to trigger the Xellerate User Process Task and it runs fine, but when trying to update the OIM user field, it throws the below error:
    oracle.iam.platform.authz.exception.AccessDeniedException: You do not have permission to modify the [USR_UDF_IPWD] attributes of the user with user key null.
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.modify(UserManagerImpl.java:830)
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.modify(UserManagerImpl.java:971)
    usrManager.modify("User Login",sUserLogin.toString().toUpperCase(), new User(null, usrDetails));
    usDetails hashmap contains the key, value pair which needs to be updated.

  • How to get Process Task Retry Count using API (OIM 10g)

    Hi ,
    I want to get all the process task which are failed after retried 5 times.
    For e.g Create user task in AD retried for 5 times but still it is in failed state. I want to get all such process task.
    I am stuck at point how to get process task retry count from process definition?
    Thanks

    You can reference the code in the "Task Timed Retry" scheduled task to get what you are looking for. Here is the decompiled code:
    >
    package com.thortech.xl.schedule.tasks;
    import Thor.API.Operations.tcScheduleTaskOperationsIntf;
    import com.thortech.util.logging.Logger;
    import com.thortech.xl.dataaccess.tcDataSetException;
    import com.thortech.xl.dataobj.tcDataSet;
    import com.thortech.xl.scheduler.tasks.SchedulerBaseTask;
    import com.thortech.xl.util.logging.LoggerMessages;
    import java.sql.Date;
    import java.util.Hashtable;
    public class tcTskTimedRetry extends SchedulerBaseTask
    private static Logger logger = Logger.getLogger("Xellerate.Scheduler.Task");
    Date isCurrentDate;
    public void init()
    logger.debug(LoggerMessages.getMessage("EnteredMethodDebug", "tcTskTimedRetry/init"));
    this.isCurrentDate = new Date(System.currentTimeMillis());
    logger.debug(LoggerMessages.getMessage("LeftMethodDebug", "tcTskTimedRetry/init"));
    public void execute()
    logger.debug(LoggerMessages.getMessage("EnteredMethodDebug", "tcTskTimedRetry/execute"));
    tcDataSet localtcDataSet1 = new tcDataSet();
    tcDataSet localtcDataSet2 = new tcDataSet();
    tcDataSet localtcDataSet3 = new tcDataSet();
    try
    if (isStopped())
    return;
    localtcDataSet2.setQuery(getDataBase(), "select osi_retry_on from osi where 1=2");
    localtcDataSet2.executeQuery();
    if (isStopped())
    return;
    localtcDataSet2.setDate("osi_retry_on", this.isCurrentDate);
    localtcDataSet1.setQuery(getDataBase(), "select osi.sch_key, osi.mil_key, osi.orc_key, osi.osi_rowver, sch.sch_rowver, osi.osi_retry_for, osi.osi_retry_on, osi.osi_retry_counter, sch.sch_note from osi osi,sch sch where osi.osi_retry_on <=" + localtcDataSet2.getSqlText("osi_retry_on") + " and osi.sch_key = sch.sch_key" + " and sch.sch_status='R'" + " and osi_retry_counter>0 order by osi.sch_key");
    localtcDataSet1.executeQuery();
    if (isStopped())
    return;
    int i = localtcDataSet1.getRowCount();
    logger.debug("tcTskTimedRetry:execute:Number of Process tasks retrieved is=" + i);
    tcScheduleTaskOperationsIntf localtcScheduleTaskOperationsIntf = (tcScheduleTaskOperationsIntf)getUtility("Thor.API.Operations.tcScheduleTaskOperationsIntf");
    tcDataSet localtcDataSet4 = new tcDataSet();
    localtcDataSet4.setQuery(getDataBase(), "select osi_retry_for, osi_retry_counter from osi where 1=2");
    localtcDataSet4.executeQuery();
    Hashtable localHashtable = new Hashtable();
    if (isStopped())
    return;
    for (int j = 0; j < i; j++)
    if (isStopped())
    return;
    localtcDataSet1.goToRow(j);
    localtcDataSet3.setQuery(getDataBase(), "select count(*) as counter from osi osi,sch sch where osi.sch_key = sch.sch_key and osi_retry_for=" + localtcDataSet1.getLong("sch_key"));
    localtcDataSet3.executeQuery();
    if (isStopped())
    return;
    if (localtcDataSet3.getInt("counter") > 0)
    continue;
    localHashtable.put("osi_retry_for", String.valueOf(localtcDataSet1.getLong("sch_key")));
    localHashtable.put("sch_note", localtcDataSet1.getString("sch_note"));
    long l = localtcDataSet1.getLong("osi_retry_counter");
    if (isStopped())
    return;
    try
    localtcScheduleTaskOperationsIntf.createScheduleItem(localtcDataSet1.getString("orc_key"), localtcDataSet1.getString("mil_key"), localHashtable, l - 1L);
    catch (Exception localException2)
    logger.error(LoggerMessages.getMessage("ErrorMethodDebug", "tcTskTimedRetry/execute", localException2.getMessage()), localException2);
    catch (tcDataSetException localtcDataSetException)
    logger.error(LoggerMessages.getMessage("ErrorMethodDebug", "tcTskTimedRetry/execute", localtcDataSetException.getMessage()), localtcDataSetException);
    logger.debug("PJ:tcTskTimedRetry:execute:DataSetexception has occured");
    catch (Exception localException1)
    logger.error(LoggerMessages.getMessage("ErrorMethodDebug", "tcTskTimedRetry/execute", localException1.getMessage()), localException1);
    logger.debug(LoggerMessages.getMessage("LeftMethodDebug", "tcTskTimedRetry/execute"));
    public boolean stop()
    logger.debug("tcTskTimedRetry:stop:Task being stopped");
    return true;
    >
    -Kevin

  • How to run a report from oracle 10g form in .csv format

    dear all,
    how to run a report from oracle 10g form in .csv format? i've already run in pdf & excel format.
    i'm using
    SET_REPORT_OBJECT_PROPERTY (ro_report_id, report_desformat, 'PDF'); --for pdf
    SET_REPORT_OBJECT_PROPERTY (ro_report_id, report_desformat, 'SPREADSHEET'); ---for excel
    Please Help..

    i have already tried.
    but the report show in htm or html format. that file will not save into csv. please help.

  • How to run the 9I report from the forms menue 9i

    how to run the 9I report from the forms menue 9i.
    Shehzad Latif

    Hi,
    1. create a Reports Object node in Forms. If you use teh same object node name then you can write generic code that works in all Forms
    2. Get the whitepaper about Forms/reports integrtion
    http://otn.oracle.com/products/forms/pdf/frm9isrw9i.pdf
    Frank

  • How to run process flow outside owner project?

    Hi,
    I have two process flows (process_flow_A and process_flow_B) in two different projects (projectA, projectB). Process_flow_A has to be run after process_flow_B is finished. So what I am thinking now is either put process_flow_A in Project B or put process_flow_B in project A. But how to see process flows which are not in it's owner project? Or is there any other ways to do this task?
    thanks.

    It can be done - in a round about way.
    You can call a SQLPlus operator. The operator will call sqlplus_exec_template.sql. You can use this script to call your other process flow in the other project.
    ..owb_home/owb/rtp/sql/sqlplus_exec_template.sql
    If you open up the .sql file, you will see examples of how to use it to call mappings, process flows, etc.
    Hope this helps..

  • How to run process chains

    hi,
    this is sudhakar
    pls any one tell me
    I prepaired process chain
    but i dont know how to start how it run daily automatically
    pls any one give ans
    thanks
    sudhakar

    hi,
       open your process chain -> right click on start process ->  select maintain varient -> select direct scheduling -> goto change selections tab -> select date/time give from when you want to run for eg from today 3.00 PM means in date tab give todays date and in time tab give the time info.  in bottom select periodic jobs check box and click on periodic values tab -> here select daily check and save again check and save again save. now you schedule your job at 3.00PM from today, now you need to release this job, after this settings come to your process chain click on clock symbol to activate and schedule your process chain. so this chain will run at specified time, you can check this in SM37 by giving your user name and released job as job status.
    Regards
    Sankar

  • How to create process task adaptor for Manager DN for OID?

    Thanks in advance,
    We are trying to get provision users in OID and need to populate manager DN. We created pre-populated Rule generator adaptor to create user in OID. We used utility task and concat cn=managerid and ",, cn=users,dc=mycompany,dc=com." it work great at the time of user creation. Now we are trying to build "process task" adaptor in same way but it is failing and complaining about users not exist.
    I used same way to build process task adaptor as I did for prepoulate rule generator only difference it selected "Process task" at the time of creation. I am new to OIM and trying to get some details. Please let me know if I am missing something.
    If you already build process task adaptor to create users in OID with single location, I will appreciate that if you share with me.
    Example cn=user1, cn=users,dc=mycompany,dc=com.
    Thanks,
    -Ishaq

    Hi
    You have changed the manager DN in Trusted Resource and you are able to update this information in OIM also. Now you want to update this manager DN in OID.
    If this your requirement then following link may help you
    OIM password
    Or in this task you can write your java code to update the process form attached with the provisioning process of user.
    It should work.

  • Trigger another Process Task after Enable User completed

    I would like to have a process task trigger after the "Enable User" process task successfully completed.
    E.g. Scenario
    A user currently has a disabled resource. When I enable the user, the Enable User process task
    gets called and enables the user. After that I would like to have my custom process task triggered after that.
    I tried adding my custom process task in the Enable User task as a dependent task, but it never gets called.
    Also, I tried adding the custom task to Tasks to Generate but that did not work.
    What am I doing wrong or am I missing a step?

    Instructions:
    Goal: When 1st process task is triggered, the 2nd process task will kickoff.
    1. Select the 1st process task
    2. In the Task Dependency Tab of the 1st process task, add the 2nd process task in the Dependant Task section.
    3. In the Responses Task of the 1st process task, select the SUCCESS response and add the 2nd process task in the Tasks to Generate section.
    IMPORTANT: Each response has its own Task to Generate. So make sure you add to the response you want the 2nd process task to trigger off by.

  • How to use process overriden public runtime user?

    Hello,
    While creating a unix/linux dynamic target, I am passing unix/linux hostname and username
    manually.
    I am using the dynamic target in 'Open Terminal Session' and overriding the default username
    with Public authenticated username. Open terminal session is working fine and able to
    ssh the linux host.
    But 'Execute Terminal Commands' process is getting failed while using the same 'Open Terminal
    Session' as target.
    Even though i am passing the sam 'Open Terminal Session' as target; 'Execute Terminal Command' is using the default runtime user rather than using the process overriden public runtime user.
    Please do the needfule for the same. Please let me know if I need to provide more information.
    Thanks,
    Prashant

    Thanks for your reply Chris.
    In Open Terminal Session we have Credentials tab, there we can override process runtime user with public key
    but we dont have anything in execute terminal commands.
    We have credentials tab in 'Execute Unix/linux scripts' also but we cant use Public Authenticated Runtime User.
    I have attached snapshots for ref puposes.

  • How to run process chain in day of 20 and 2 every month?

    Dear all,
    I have to run process chain in day of 20 and 2 every month,but the settting of PC just allow Scheduled start every month once
    time.
    Please tell me the way of setting process chain.
    Thanks.

    Hi,
    (1) Create an event in the BW system
    Define a system event (for example SAP_BW_TRIGGER) with Transaction SM62. Lets says it is "EVENTX". Use this even in the Process chain and execute the process chain as repeative job.
    (2) Use the below lines of code in the program for calling a Fucntion which trigeres the event created above . Here in this program you will call the the Below FM if and only id the sy-datum is 20 th or 2nd of the month ( as mentioned by our friend suggested).
    call function 'BP_EVENT_RAISE'
    exporting
    eventid = EVENTX
    exceptions
    bad_eventid = 1
    eventid_does_not_exist = 2
    eventid_missing = 3
    raise_failed = 4
    others = 5.
    endfunction.
    Regards,
    Anil Kumar Sharma .P

Maybe you are looking for

  • How to delete dynamically created nodes?

    Hello Colleagues, In our screen we have a push button which adds one node to the context when used. The node is having a few fields which are shown in the UI. So as you keep on pressing the button, additional rows will be appended on the screen. Now,

  • Mac space issue

    Can someone please explain to me why it shows I have 360GB of 372GB free for my home directory, but the Macintosh HD shows 173Gb of 186Gb free? I am new to macs so I may not fully understand whats going on i am using OmniDiskSweeper but the sizes are

  • Hyperion Enterprise Reporting

    My Hyperion Salesperson tells me Hyperion Enterprise Reporting in no longer supported for Essbase, but that conflicts with reports I am getting from Hyperion Support that they are releasing upgrades to go with Essbase 6.2 and 6.5. Does anyone know wh

  • How to add a Navigational attribute to an infoset

    Hi All, I have an infoset for which i am trying to add a navigational attribute. For a multiprovider i could able to see the provision to add a navigational attribute whereas coming to an infoset i couldn't find any option to do so. i tried using RSI

  • Will a Hybrid or Solid State Drive improve my FCP Editing experience?

    hello folks. i want to improve my macbook pro video editing performance and hope that upgrading my 5400 rpm internal hdd to at least a 7200 rpm drive will do the trick. BUT then i began considering SSD and Hybrid and wonder INSTEAD of just a regular