Map process task name
Hello folks,
Is it possible to map an adapter variable to the process task name? Do I need to use the API to get the name or it is readily available?
Thanks
i m not so sure but you can try for the following:
process defination->process that needs adapter -> add a task -> integration -> map adapter variables ->Process Defination -> Name
Try it and lemme know if it works!
Similar Messages
-
Linking the Revoke Action to Process Task
Something that I haven't quite figured out yet is the connection between "Provision Resource" and the Process Task to Create the Resource, and likewise the connection between "Revoke Resource" and the Process Task to delete the Resource. I have a suspicion that it happens purely because the Process Task Name begins with "Create" or "Delete" and not something that is actually specified somewhere. Is this correct, or is there more to it?
I guess this could be a more general question about what regulates which Process Tasks are invoked and in what order for a given event. I finally think I understand that the Disable and Enable events are linked to Tasks through the "Process Effect" selection.
Maybe there is a document that defines this that I haven't stumbled on. I would take a reference if there is one.
Thanks,
BillWhen provisioning intitaes then it triggers the Unconditional task (Create User Task generally).
When Revoke triggers then it will execute a task which is in the Undo tab of Unconditional Task (Create User Generally). -
Mapping Adapter to a process task in process definition.
Hi Guys
My requirement is , Disable users associated with an organization when the organization is disabled.
I have performed the following steps:
1. In design console Lookup definition Lookup.ACT_PROCESS_TRIGGERS , I added a row
ACT_DISABLED DisableUSerWhenOrgDisabled
2. Then I created process task adapter to recursively disable the users based on the organization name.
3.Next I attached the adapter to a new task in process definition --> Xellerate User with the name DisableUSerWhenOrgDisabled(decode field in Lookup.ACT_PROCESS_TRIGGERS ).
4.Then I mapped the Adapter variables to appropriate entities in the Integration tab.
Now when I login into the admin console and disable an Organization , the adapter is not at all invoked.
I am unable to get if I am missing anything.Kindly help in resolving this.
Is this the correct way to achieve this functionality?
OR
Do I need to go for Entity Adapters.
Thank you
sas
Edited by: sas on Jan 8, 2009 4:55 PMSAS,
You only need one adapter. You can use one variable that maps the Organization Name. Using this value, you can use the tcOrganizationOperationIntf apis to get information about that organization. Once you get the disabled value, you can create your if statement based on the value of this task. If the Organization is not disabled, return a literal string like "NO_ACTION_REQUIRED". If the Organization is disabled, using the code i previously posted, or the code you have generated, to disabled all the users within the organization. If this task successfully completes, return the literal string like "ALL_USERS_DISABLED". If an error happens, i would return something like "ERROR" or something more descriptive. Then on your responses tab, you can add these values you are returning, along with a more descriptive value. Set the NO_ACTION_REQUIRED and ALL_USERS_DISABLED to a C status and the ERROR responses to a R status. Now when you map your adapter, map in your Organization Name and for your Adapter Return Value map it to the responses.
As far as what you can do with responses. On the process task, the response tab, you can select the specific response, and then have it trigger another task.
-Kevin -
AD - 'Change First Name' process task is rejected by default - OIM 11.1.2
Hi All,
I wanted modification to be auto provisioned to AD account when user attribute is changed.
For this created 'Change First Name' process task and made entry in "Lookup.USR_PROCESS_TRIGGERS" lookup def.
I followed the link Enabling update for provisioned user in OIM11g
When I changed first name of a user from identity console, 'Change First Name' process task is assigned to XELSYSADM. But the status of the process task is Rejected. Also, the changed 'First Name' value is not updated in the process form of the user. Hence the change is not reflected into AD.
Please tell me why the status is Rejected and changes are not reflecting.
Also, Please provide the solution to auto provision the modifications into AD.
Thanks in Advance.Thanks much kevin,
One more query.....
In my case when 'city' attribute is changed its invoking 'Change city' which inturn invokes 'City updated' process. Now when city is updated I need to updated 'Organization Name' in AD process form and make it reflect in AD.
For this, I created 'Change Org Unit' process task which will populate 'Organization Name' field in process form, so inturn it will invoke 'Organization name updated' process task.
I made 'Change Org Unit' process task as dependent task for 'Change city', so once the 'Change City' process task status is 'C', it will invoke 'Change Org unit' process task.
But, 'Change Org unit' process task is not being invoked.
Could you pls provide me solution.
Thanks in advance... -
Hi All,
I am trying to load shape file into a sql spatial table. A execution process task is used to run the ogr2ogr.exe program.
This is how the process tab looks like .
Executable : C:\gdal_ogr2ogr\bin\gdal\apps\ogr2ogr.exe
Argument : -f MSSQLSpatial MSSQL:server=SQL-ABC-DEV;database=MYSIMPLE_Dev;Trusted_Connection=True;\\mypath\files\shares\Data\www.mypage.htm\my_sample_file.shp
Success value : 1
For above settings, package runs fine. The spatial table is created in SQL server db. However when hard-coded SQL server name and database name are replaced with global variables , the spatial table is not created in the database. Yet the package runs fine.
It does not throw any errors. (I am using another variable for full file path. It is not causing any errors though)
" -f MSSQLSpatial MSSQL:server="+@[$Project::SQLServerName]+";database="+ @[$Project::DatabaseName] +";Trusted_Connection=True;"+ @[User::Filepath] + "\\my_sample_file.shp"
Both variables are string type. Can anyone tell me what I am doing wrong here please?
I am running this in VS 2012.
Thanks for your help in advance..
shamenThere should be a single space just after True:
before
" -f MSSQLSpatial MSSQL:server="+@[$Project::SQLServerName]+";database="+ @[$Project::DatabaseName] +";Trusted_Connection=True;"+ @[User::Filepath] + "\\my_sample_file.shp"
after keeping the space
" -f MSSQLSpatial MSSQL:server="+@[$Project::SQLServerName]+";database="+ @[$Project::DatabaseName] +";Trusted_Connection=True; "+ @[User::Filepath] + "\\my_sample_file.shp"
Thanks
shamen -
I'm very interested in using the capabilities of Adobe LiveCycle Process Management for my project, however I have one rather large concern... I hope someone here can tell me whether there's a way to address it.
Since I work for the Government of Canada, I have to meet certain requirements relating to bilingualism of the user interface. It's my understanding that the Workspace portion of LiveCycle has already has support for French.
But what about the design of my processes? How can I display text to a user in the language of their choice when they're interacting with my processes? ... in particular, I'm thinking about the process name, task names, and user actions.
I hope that this is possible without too much pain. I imagine this must be a pretty common requirement!
Thanks in advance to all who respond.You can completely change the content of whole pdf by using "renderPDFForm" operation under service "FormsService". in this operation there is Template category where you can set the Locale.
And if you need to change the other workspace options like Complete, Save as Draft , you can then import workspace ui project and then change apppropriate values.
Thanks,
Prashast -
Responce mapping in Process Tasks
Hi,
Is there a way,where I can map response between two process tasks? .I have the following scenario:
1. Task 1 : Create User : This task is manual taks (no adpater is attached) and it will be assigned to a particular admin user.This task contains 2 responses .Approve and Reject.
2.Task 2 : Create Application User : This task contains the adapter which creates the user.This task will be called once the user selects Approve in the previous task.
The problem is that ,if the user approves and if my application is down,still my first task is showing as "Completed".
If my second task retuns an error response,my first task needs to show that.Is there any way to implement this?.Thanks.Have you created a new version of the process form?
Potentially you might have to create a new version of the object form as well (don't think so but worth trying)
Best regards
/Martin -
OIM 11g: Add process tasks as a result of a Request?
Is it possible in OIM 11g to have the result of a Request be that 1 or more process tasks are added to an an account's process?
The out-of-the-box Request framework seems to be very attribute driven (Modify Provisioned Resource, Self Modify Provisioned Resource), and I suppose we could add an attribute to trigger process tasks to be added, however, without going into detail, we'd really just like to be able to add the process task with no process form updates.
Has anyone attempted anything like this?Sure you can. Create a plugin on the request status:
<plugin pluginclass="com.custom.eventhandlers.request.RequestCompleted" version="1.0" name="RequestCompleted">
<metadata name="status">
<value>Request Completed</value>
</metadata>
</plugin>
In your code, using benEntity.getEntityKey() you can get the "Users-Object Instance For User.Key" value for the instance the request is for. Then search the user's existing instances of that resource object type (findObjects) and match it to the "Users-Object Instance For User.Key" value from the result set. Then get the process instance key. From there you can use this code to get the task details:
Map taskMap = new HashMap();
String taskName = map.get(resourceName);
taskMap.put("Process Definition.Tasks.Task Name",taskName);
tcResultSet rs = taskOper.getTaskDetail(processInstanceKey,taskMap);
long taskKey = rs.getLongValue("Process Definition.Tasks.Key");
And finally this code to insert the task:
provIntf.addProcessTaskInstance(taskKey, processInstanceKey);
And done!
-Kevin -
SFTP sender to File receiver mapping of file names
My scenario is: sender channel = SFTP (Seeburger) transferring multiple PDF files to Receiver adapter File (NFS).
These PDF files need to have the same name as the original files from the sender (3rd party) system.
Because these files are being processed without an interface, I can't use UDF to help map the file names.
I've tried using Seeburger's localejbs/Seeburger/AttribMapper to map the names, as follows:
File (NFS) receiver channel config:
- ASMA boxes for 'Use Adapter-Specific Message Attributes' and 'File Name' are ticked
- Module localejbs/Seeburger/AttribMapper is on the first line in the module tab under processing sequence, with module key = AttributeMapper
- Under Module Configuration:
- Module Key = AttributeMapper
- Parameter Name = http://sap.com/xi/XI/System/File/FileName
- Parameter Value = @http://seeburger.com/xi/SFTP/dtSubject
(I haven't entered any attribute module config on the sender side)
This setup fails on the receiver side with the message 'Delivering the message to the application using connection File_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.RetryControlException: Channel stopped by administrative task.' (not very helpful!). All I can get from that is that it doesn't like my module configuration!
Can anyone help me understand the correct way to do the file name mapping for my specific scenario?
Regards,
ChristineWe've got this working at last!
The main problem was indeed the missing .sca file from Seeburger: SeeModuleCollectionPI.sca
Our Basis team deployed this file this morning. After a bit of fiddling around with the attribute mapping, my test files were transferred successfully with their original names.
The config I ended up with is just as described in another forum post for SFTP to FTP, but I'll repeat it in more detail here:
Sender channel
Parameters tab:
Adapter Type = SFTP (Seeburger)
(sender, transport & message protocol = SFTP)
Scheduler = x in all appropriate days, with interval = 1 (minimum allowed)
(rest here is specific to your environment, but I set filename to *.pdf to get all .pdf files from the sender)
Module tab
Processing Sequence
Number Module Name Type Module Key
1 localejbs/Seeburger/AttribMapper Local Enterprise Bean AttribMapper
2 localejbs/Seeburger/solution/sftp Local Enterprise Bean solutionid
3 localejbs/CallSapAdapter Local Enterprise Bean exit
Module Configuration
Module Key Parameter Name Parameter Value
AttribMapper http://sap.com/xi/XI/System/File/FileName @http://seeburger.com/xi/common/dtSubject
Receiver Channel
Parameters tab:
Adapter type = File
(receiver, with transport protocol File System (NFS), etc)
Target tab:
Target directory (set to your required PI server directory)
File Name Schema = * (can be anything, will be ignored)
Processing tab:
(your requirements-specific settings - mine were create, write directly, file type binary)
Advanced tab:
Under Adapter-Specific Message Attributes (ASMA):
tick the following:
Use Adapter-Specific Message Attributes
Fail If Adapter-Specific Message Attributes Missing
File Name
Modules tab:
Processing Sequence
Number Module Name Type Module Key
1 CallSapAdapter Local Enterprise Bean 0
(nothing under Module Configuration)
Thanks to those who kindly took the time to try and help me, your suggestions pointed me at the real problem.
Christine -
Split Source Mapping Generation Task
Hi
I created a Dynamic Web Project in IBM Rational Application Developer Version 8. I am using BEA Weblogic 10.0.2 as the Application Server. When creating Dynamic web project, I added project to an EAR and named it testEAR. The project compiles without any errors and EAR is generated. When I try to add it to my server and deploy, I get the following error.
Runtime exception occurred in publish task 'Split Source Mapping Generation Task'.
Path must include project and resource name: /testEAR
I checked web.xml for duplicate entries and didnt find anything. Below are my XML files for Deployment Assembley. The first is for the testEAR project
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="testEAR">
<wb-resource deploy-path="/" source-path="/"/>
<dependent-module archiveName="XYZ.war" deploy-path="/" handle="module:/resource/XYZ/XYZ">
<dependent-object>WebModule_1308854753228</dependent-object>
<dependency-type>uses</dependency-type>
</dependent-module>
</wb-module>
</project-modules>
The second is for the Dynamic Web Project
<?xml version="1.0" encoding="UTF-8"?><project-modules id="moduleCoreId" project-version="1.5.0">
<wb-module deploy-name="XYZ">
<wb-resource deploy-path="/" source-path="/WebContent"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
<property name="context-root" value="XYZ"/>
<property name="java-output-path" value="/XYZ/WebContent/WEB-INF/classes"/>
</wb-module>
</project-modules>
Please let me know how to resolve this problem.Hi,
This failure occurred probably because a Content Directory was not specified for the EAR project.
If a Content directory is not specified, then ".settings" and ".project" files will be part of the source path for the bea compiler.
As per the requirement, it is very important that WLS build scripts parse/compile and copy all the contents of the source folder.
So, as per the process the ".settings" directory and the ".project" directory are also copied into the temporary build directory.
This causes the failure during deployment as ".settings" and ".project" components can't be deployed.
The Content directory is a requirement only in WLS environment, due to the build logic of WLS.
By default, the WLS Eclipse tasks create a Content directory for a EAR project. So, this is not documented.
But, when you import an existing EAR directory, this limitation is exposed.
Creating the EAR Content folder should be the best solution.
Steps to modify imported applications:
1. Create a directory for the EAR content (for APP-INF, META-INF and all other modules or files that are part of the EAR) and copy all the files (except ".settings" and ".project") into the EAR content directory. (This has to be performed in windows explorer)
2. Then edit the file .settings/org.eclipse.wst.common.component EAR content directory reference for deploy-path:
For eg:
<wb-resource deploy-path="/" source-path="/"/>
to
<wb-resource deploy-path="/" source-path="/EarContent"/>
3. Refresh the eclipse project.
4. Delete the temporary project folder that is created in the below location:
<Workspace Home>\.metadata\.plugins\org.eclipse.core.resources\.projects\
For eg:
cd D:\Cases\EclipseWorkspace\.metadata\.plugins\org.eclipse.core.resources\.projects\
del WebTestEAR\
** This is a temporary folder which will be created by WebLogic build scripts during
deployment. **
5. Now, try to deploy the EAR project.
Hope it helps. -
How to Determine Task Key based on Task Name?
Hi all, I'm trying to implement addProcessTaskInstance and I can't seem to dynamically obtain the task key. I want to find this based on the task name since this will be consistent through environments, but due to multiple development streams going on at once I can't be guaranteed that the task key will be the same in each in environment (i can be guaranteed it won't be actually). I'd rather not hard code the key in a variable in each environment if I can avoid it.
Thanks,
RyanHi Ryan,
you could also use api to retrieve the task key.
HashMap map = new HashMap();
map.put("Process Definition.Tasks.Task Name", your_task_name);
tcResultSet localtcResultSet = tcUtilityFactory.getUtility(tcDataProvider, "Thor.API.Operations.TaskDefinitionOperationsIntf").getTaskDetail(your_form_key, map);
taskKey= localtcResultSet.getLongValue("Process Definition.Tasks.Key");
This would be slower than database query though.
Regards,
Ece -
Trigger a process task based on Lookup Value
Hi Everyone,
We have a requirement like for one of the custom adaptors,we have
The Process form has the below five attributes
i)First Name----(String)
ii)Last Name----(String)
iii)Location----(Lookup)
iv)Address----(String)
V)Mobile-----(String)
The attribute Location is a lookup Field.
in Location we have
Code Decode
Chennai Chennai
Bangalore Bangalore
Delhi Delhi
Mumbai Mumbai
NOw if i select chennai in the location lookup.I want to trigger a seperate task from process definition.
How can this be achieved?
Regards,
Naveenyou can't achieve dynamicly using process task.
if the value of that lookup is limited and known then you can design like below(Static)
1. create a process task adapter which takes one string input(location) and return the same. update response for each location values
2. create task called Location updated or if this task is there for update location value in target system then leave as it is
3. create a new condiional task "call task based on location" . attach newly created adapter. pass location attribute as input and map return value with response code.
finally attach this task on the success response of "Location Updated" task
4. now you have response for all location . so attach respective task on each response.
Note: if there is no Location Updated task present then create "Location Updated " task and directly attach above adapter on this task.
--nayan -
Process Task Adapter that looksup value
Hi,
Any help on creation of a process task adapter that will lookup a value in OIM.
I wanted to make this as a generic adapter, by passing the lookup name and a codekey value which should fetch the decoded value in that lookup table.
By doing so, I wanted to set few attributes so that when a attribute value got changed in USR form, it should search the mapped lookup and the codekey value (using a process task definition) and then set the decoded value in the targetted attribute.
Thanks in advance.
Regards.Here is the thread which might help you. Solution is there.
Adapter for querying lookup table
Sunny -
Just wondering how the process tasks are related to the process form fields. E.g. where can I map that if the first name on process form is modified, OIM should trigger the 'First Name Changed' process task. I know about USR_PROCESS_TRIGGERS, but I am talking about the task which is mapped to the connector and is responsible for updating data in target application.
Thanksif the first name on process form is modifiedIt triggers First Name Updated. It's architecture of OIM that it triggers 'Label Updated' task when you update Process Form. May be some event handlers are attached. Not sure 100% as didn't search for this.
-
Clarification Adapter-Process task association
Hi,
yet another basic question...
I have built my IT resource+resource object+adapters+provisioning process.
This is for study purpose.
The user get`s correctly created. What is now not clear to me is how can I tell
to OIM which process task to use for updating the user. The same for delete/
enable/disable.
I realize that this must be done in the lookup definition in the design console,
but do not now how. Can you please shed a light on this?
Thank you very much.Hi
Edits are typically done on the process form of the resource by an admin. for example say some attribute e.g. First Name needs to be changed on the target system after provisoning (i.e. account creation).
You will need to create a conditional task (not required for completion) which has a name "First Name Updated".
OIM understands tasks that are named with the <attribute/field name> Updated (the attribute name must be the exact case as the field name in the process form)<space>Updated (notice "U" upper case) are special and you can attach any adapter (business logic) to make OIM do what you need it to do. In this case you will attach a modify adapter that will update the value of the corresponding field on the target system.
For Enable and Disable you will need to create a task with any name typically people use "Enable User" "Disable User" respectively but thats not necessary. Whats of essence is the task effect drop down on the "Edit Task" window of the task you created (Disable User or Enable User in this case), select the "Disables process or access to application" for disable user task and attach your adapter for disabling the account on the target system, and set the task to Object status mapping C as "Disabled".
For enable just select the Enables.... from the drop down and attach your adapter for enabling the account on the target system, and set the task to Object status mapping C as "Enabled".
For delete/revoke, you can create a task with any name e.g. Delete User but what you need to do is put this task in the undo/recovery of the "Create User" task or whatever task that creates the account e.g. Create User task.
hope this helps.
Maybe you are looking for
-
ITunes File Sharing and Time Machine
Does Time Machine backup the documents in the iTunes File Sharing pane on an iPad? If I deleted an app or file by mistake (or if my iPad crashed), would I be able to recover the file shared documents through Time Machine backups? Thanks in advance!
-
Again, I have a net book ( ACER ) and run Mozilla / Firefox with Google as home page .... Most recently, ( the last 4 weeks ) I have been besieged by abrupt Internet crashes ( Win Sys 32 ) ... and when I browse on Firefox ( google ) ..... my web sele
-
Factsheet modification - adding a Z infoblock
Hi all, I'm trying to modify the standard factsheet, kindly offered by SAP AG. Basically what I want to do are the following points: 1 change the content of the infoblock. I know I have to develop method GET_REPORT, but unfortunately I cannot catch t
-
Hide/Suppress section using WebElements
I am trying to set up a button on my report using WebElements to hide a section/group based on a value in a formula. Not having much luck.. Any help would be appreciated Regards, David
-
Adobe Flasher Player not loading
I believe i have downloaded and installed the most recent version and yet when I go back to the espn website - it continues to indicate I need to download adobe? I ma not very computer savy - any advice?