Custom attributes(UDF) of OIM 11G R2

Hi,
I created UDFs in User form using OIM Admin console.
Now i want to change the maximum length of the attribute.
But unable to change as it shows as display only field
I even cannot delete the created udf as there is no delete option to create new one
So,please tell me whether we can delete an UDF and how can we change the maximum length of attribute

You need to create a Sandbox --> activate it.
Then click on Form Designer. In the opened tab select User and click on search.
Now click on the Form Name User, this will open a new tab with listing all the attributes of user.
You can change the attribute by clicking the attribute you want to modify.

Similar Messages

  • Customizing request datasets in OIM 11g

    Hi Friends,
    I have couple of questions/issues while customizing request datasets in OIM 11g. Can you please help me?
    1) I gave read-only="true" in my request dataset for one of the attribute, but I was still able to edit that attribute value while raising requests.
    2) I gave hidden="true" in my request dataset for one of the attribute, but I was still able to see that attribute while raising requests.
    3) I have around 90 attributes in my request dataset. Is there any way to display category type and under that category display the attrbitues i.e. just like attributes in user profile.
    4) As I have 90 attributes, I am expecting the format will be like first 45 will be shown in left panel(column) and remaining 45 in right panel (column). Instead of this , it is showing first 70 in left panel and the remaining 20 in right panel which is very ugly to see. Is there any way to show frist 45 on left side and remaining 45 on the right side? Please help me.

    Regarding the first two points:
    1) The read only property applies to the approver only, i.e. approver can read and not modify the attribute. It does not apply to the requester. I don't believe you can configure a read-only attribute in the data set.
    2) If you want to hide an attribute, you can restrict it in your request template.

  • How to give query in lookup type udf in OIM 11g

    Hi,
    In OIM 9.x, we were able to provide query in lookup type field in users UDF to fetch data from DB and display it in lookup table.
    Where as in OIM 11g, I cant find that option. We need to provide user id in lookuptype field based on some query. Please let me know where we can do the same in OIM 11g.
    Thanks,
    Kalpana.

    In OIM 9.x, we had below query in one of the lookup type attribute:
    select usr.usr_udf_empid,usr.usr_first_name,usr.usr_last_name from usr where usr.usr_emp_type='Full-Time' and usr.usr_status='Active' and usr.USR_UDF_EMPID is not null
    The lookup used to show firstname, lastname & employee id of active employees in the lookup.
    Where we can achieve the same in OIM 11g?
    Thanks,
    Kalpana.

  • Display Custom Error Message in OIM 11g

    Hi,
    I'm trying to display an error message from a validation event handler but seems that am missing something. When the "oracle.iam.platform.kernel.ValidationFailedException" is thrown from a validation handler an error message is displayed: "An error occurred". If an error code is provided (see code below) then the message looks like: "An error occurred. The corresponding error code is ERR-0001". I guess that some resource bungle with corresponding messages should be provided.
    the code used:
    package test;
    public class UserGeneralValidationHandler implements oracle.iam.platform.kernel.spi.ValidationHandler
    @Override
    public void validate(long processId, long eventId, Orchestration orchestration)
                   throws ValidationException
    String errorCode = "ERR-0001";
    String message = "Simple validation message.";
    ValidationFailedException ex = new ValidationFailedException(message);
    ex.setProcessID(processId);
    ex.setErrorCode(errorCode);
    throw ex;
    Q:
    1.What is missing for complete solution?
    2.What is the algorithm that used by OIM to find default or non default resource bundle?
    3.How to change out-of-box validation messages? For a sample "The organization ABC does not exist." message is shown if non existing organization is provided during user creation and I'd like to have a different one.
    Regards
    Serge

    rename OIMUI.jar  to OIMUI.zip
    find logging_en and loggin.properties.
    Modify the "IAM-2050512" error message with your custom message
    Find Agent and agent_en.properties.
    Find Note[ERROR_SUBMITTING_REQUEST].text.  Modify the message. Make sure the message must be the same with in logging.properties("IAM_2050512")
    Deploy
    change the  OIMUI.zip to jar
    replace the existing OIMUI.jar
    login to weblogic  and redeploy OIM (oim.ear)
    no need to restart OIM server.
    Test:
    create a request in web console again, you must see the custom message when you hit the submit button
    hope this helps.
    -rad

  • Custom Schedule Job Issue - OIM 11g R2

    Hi All,
    I deployed a custom schedule task to assign a role to a user and created a schedule job for the same.
    The problem is my job is executing twice even though I ran it for one time and getting exception saying Role already assigned..
    please tell me how to make execute job only once on one execution
    Thanks in advance
    Praveen...

    sorry, for late reply...
    I tried restarting servers... no luck....
    1)java code
    public class TerminateAbscondUsers extends TaskSupport
    ODLLogger logger = ODLLogger.getODLLogger("OIMCP.SAPH");
    UserManager usrMgr = Platform.getService(UserManager.class);
    public HashMap getAttributes()
    return null;
    public void setAttributes()
    public void execute(HashMap hashMap)
    logger.info("Entered TerminateAbscondUsers:execute() method");
    Long abscondDays = (Long)hashMap.get("AbscondDays");
    logger.info("Abscond Days = "+ abscondDays);
    List<User> resultUserList = getUserList();
    disableUsers(resultUserList,abscondDays);
    logger.info("Left TerminateAbscondUsers:execute() method");
    public List<User> getUserList()
    logger.info("Entered TerminateAbscondUsers:getUserList() method");
    HashSet<String> reqAttr = new HashSet<String>();
    reqAttr.add("User Login");
    reqAttr.add("Status");
    //reqAttr.add("EventDate");
    reqAttr.add("DateOfAbsconding");
    List<User> usrList = new ArrayList<User>();
         SearchCriteria usrIDSearchCriteria = new SearchCriteria("Action","AB",SearchCriteria.Operator.EQUAL);
         try
              usrList = usrMgr.search(usrIDSearchCriteria,reqAttr,null);
              logger.info("Absconded userList size ="+ usrList.size());
         catch(UserSearchException use)
              logger.info("UserSearchExecption = " + use.getMessage());
    catch(Exception e)
              logger.info("Exception TerminateAbscondUsers:getUserList() = " +Arrays.toString(e.getStackTrace()));
         logger.info("Absconded usrList = " + usrList.toString());
         logger.info("Left TerminateAbscondUsers:getUserList() method");
         return usrList;
    public void disableUsers(List<User> resultUserList, Long abscondDays)
    logger.info("Entered TerminateAbscondUsers:disableUsers() method");
         UserManagerResult localUserManagerResult1;
         UserManagerResult localUserManagerResult2;
    try
              for(int i=0;i<resultUserList.size();i++)
                   String userLogin = resultUserList.get(i).getLogin();
                   logger.info("User Login = " + userLogin);
                   Long userKey = (Long)resultUserList.get(i).getAttribute("usr_key");
                   String strUsrKey = userKey.toString();
                   logger.info("User key = " + strUsrKey);
                   //Date abscondDate = (Date)resultUserList.get(i).getAttribute("EventDate");
                   Date abscondDate = (Date)resultUserList.get(i).getAttribute("DateOfAbsconding");
                   Date currentDate = new Date();
                   Long diffDate = (Long)((currentDate.getTime() - abscondDate.getTime())/(1000*60*60*24));
                   if( diffDate > abscondDays)
                        logger.info("diff date = " + diffDate);
                        User localUser = new User(strUsrKey);
                        localUser.setAttribute("End Date",(Object)currentDate);
                        localUser.setAttribute("Action","TE");
                        localUserManagerResult1 = usrMgr.modify(localUser);
                        logger.info("Set End Date operation status = " + localUserManagerResult1.getStatus());
                        localUserManagerResult2 = usrMgr.disable(userLogin,true);
                        logger.info("Terminate operation status = " + localUserManagerResult2.getStatus());
    catch(ValidationFailedException vfe)
    logger.info("ValidationFailedException = " + vfe.getMessage());
    catch(UserDisableException ude)
    logger.info("UserDisableException = " + ude.getMessage());
    catch(NoSuchUserException nsue)
    logger.info("NoSuchUserException = " + nsue.getMessage());
    catch(UserModifyException ume)
    logger.info("UserModifyException = " + ume.getMessage());
    catch(Exception e)
         logger.info("Exception TerminateAbscondUsers:getUserList() = " +Arrays.toString(e.getStackTrace()));
         logger.info("Left TerminateAbscondUsers:disableUsers() method");
    2) METADATA XML
    <scheduledTasks xmlns="http://xmlns.oracle.com/oim/scheduler">
    <task>
    <name>Terminate Abscond Users</name>
    <class>com.hdfclife.oracle.iam.customScheduler.user.TerminateAbscondUsers</class>
    <description>Terminate Abscond Users</description>
    <retry>5</retry>
    <parameters>
    <number-param required="true" helpText="No. of days since Absconded">AbscondDays</number-param>
    </parameters>
    </task>
    </scheduledTasks>
    Thanks in Advance...

  • How to create custom adf tab in oim 11g for self service

    Hi all,
    I want to create a new tab in self service console by using out box code. Any suggestions please
    Thanking you

    Refer link below:
    http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/oim/oim_11g/customize_oim_ui_selfservice_tabs/customize_oim_ui_selfservice_tabs.htm
    regards,
    GP

  • UDF Creation Error in OIM 11g

    Hi,
    When I tried to create new UDF under "Custom Attributes" category (through OIM Admin Console), it throws below error.
    <Error> <XELLERATE.ADAPTERS> <BEA-000000> <Event: Adding Columns to SDC. has encountered an error.>
    <Error> <XELLERATE.SERVER> <BEA-000000> <Class/Method: tcDataObj/runEvent Error :EVT Fatal Rejection Occured>
    <Error> <oracle.iam.configservice.impl> <IAM-3020016> <Attribute creation failed due to an exception.
    oracle.iam.configservice.exception.ConfigManagerException: Error Adding Column: java.sql.SQLException: SQL statement to execute cannot be empty or nullData validation failed. The Event Handler could not be run.Data will not be saved.
    I have restarted the server and tried again but getting the same error.
    Please help me to fix this...

    Please list down the steps you followed to create the UDF, that might help to figure out the issue.

  • Oim 11g Custom Challenge questions

    hi,
    does oim 11g allows users to setup custom challenge questions.
    Sun Idm does have this feature..
    any idea on Oracle Idm..
    thank you.

    How to add custom challenge questions in OIM 11g
    Find below link for 11gR2
    http://srini-bellamkonda.blogspot.in/2012/11/adding-custom-challenge-questions-in.html

  • Trusted Reconciliation in OIM 11g

    Hi
    I have written custom scheduler task in OIM 11g which will retrieve values from database and call recon API's to create users in OIM.
    Database Table contains the following sample values
    FIRSTNAME:RECON
    LASTNAME:USER1
    USERLOGIN:RUSER1
    ORGANIZATION:Xellerate Users
    EMPLOYEE-TYPE:Full-Time
    I created Resource Object with the above recon attributes and mapped these attributes to OIM User Attributes and made userlogin as key attribute.
    I created Recon Rule as USER LOGIN equals userlogin and action rule as No Matches Found -> Create User
    Now I ran the job from UI and status is showing as Data Recieved only. It is not creating users.
    Below are the logs for the same.
    *<Jul 20, 2011 7:47:55 AM EDT> <Error> <oracle.iam.reconciliation.impl> <IAM-5010000> <Generic Error/Information: {0}*
    oracle.iam.platform.utils.SuperRuntimeException: java.sql.SQLIntegrityConstraintViolationException: ORA-02291: integrity constraint (OIM11GDB.FK_RECON_EVENTS_USR) violated - parent key not found
    ORA-06512: at "OIM11GDB.OIM_SP_RECONBLKUSERCRUD", line 759
    ORA-06512: at "OIM11GDB.OIM_SP_RECONBLKUSRMLSWRAPPER", line 71
    ORA-06512: at line 1
         at oracle.iam.reconciliation.dao.DBCall.execute(DBCall.java:24)
         at oracle.iam.reconciliation.dao.ReconActionDao.processSPCall(ReconActionDao.java:1316)
         at oracle.iam.reconciliation.dao.ReconActionDao.executeBulkUserMatchCRUD(ReconActionDao.java:686)
         at oracle.iam.reconciliation.impl.UserHandler.executeBulkCUD(UserHandler.java:568)
         at oracle.iam.reconciliation.impl.BaseEntityTypeHandler.process(BaseEntityTypeHandler.java:34)
         at oracle.iam.reconciliation.impl.ActionEngine.processBatch(ActionEngine.java:129)
         at oracle.iam.reconciliation.impl.ActionEngine.execute(ActionEngine.java:90)
         at oracle.iam.reconciliation.impl.ActionTask.execute(ActionTask.java:73)
         at oracle.iam.platform.async.impl.TaskExecutor.executeUnmanagedTask(TaskExecutor.java:100)
         at oracle.iam.platform.async.impl.TaskExecutor.execute(TaskExecutor.java:70)
         at oracle.iam.platform.async.messaging.MessageReceiver.onMessage(MessageReceiver.java:68)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy364.onMessage(Unknown Source)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:466)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:371)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:328)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
         at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3822)
         at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Pls Help.

    Hi Rajiv,
    Please see my comments below.
    Where is Design Console Access attributes ?I think no need to set value for this attribute as the default value will be End-User only. Correct me if I am wrong.
    Have you created Recon Rule properly ?yes
    Have you created Reconciliation Profile ?yes
    Call teh API porcessReconciliationEvent after createReconciliationEvent API.Is it mandatory to call processReconciliationEvent after createReconciliationEvent? The reason why I am asking is when I wrote scheduler for target recon I didn't used processReconciliationEvent.
    Thanks

  • Debuging Event Handler OIM 11g

    Hi experts
    I have built the event handler and its able to set email of the end user as [email protected] after post process. Fortunatly i could do this at first shot after following the link on the oracle meta link.
    But i could not debug the eventhandler class file for any additional changes. though i have added the SOP statments i cud not see anythin in the OIM Diagnostic logs.
    can any one help me where i can find the trace out put of the SOP's i've set in the event handler.. is it in the WLS logs or do i need to set the OIM log level to finest. im lil confused
    this is the first time im dealing with oim event handlers.

    Hi ,
    By default SOP statments prints on OIM logs.
    You can generate Custom Log file in OIM 11g for event handler.
    1.Open logging.xml from <OIM Domain>/config/fmwconfig/servers/<OIM Server>
    2.In the <log_handlers> tag add entry for custom handler
    3.Add entry for the custom logger under <loggers> tag
    4.Restart the OIM server
    For more details, please see link http://docs.oracle.com/cd/E21764_01/doc.1111/e14308/log.htm#CEGEAGIB .
    Thanks,
    Pradeep
    Edited by: Pradeep Khopade on Jan 30, 2012 10:23 PM
    Edited by: Pradeep Khopade on Jan 30, 2012 10:24 PM

  • Serialization error in OIM 11g

    Hi,
    I have a custom jar file in OIM 11g which is causing this issue,
    <All session object
    s should be serializable to replicate. Check the objects in your session. Failed
    to replicate non-serializable object.
    java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is:
    java.lang.ClassNotFoundException: Failed to load class ...
    Please suggest what should be done to avoid this.
    M

    User,
    please. please,please...
    I don't like to extract each peace of information using at least two posts.
    Is you custom class serializable? Does the class implement the Serializable interface to make it serializable? If not implement this interface (just add implements Serializable to your class definition) and try again.
    If this doesn't help you should give more and detailed info.
    Timo

  • OIM 11g to provision a web services based application , how ?

    Hi All,
    I'm trying to provision using GTC connector in OIM but the problem is i know how to write a webservice but i'm newbie to OIM 11g so i am not able to integrate my webservice to the OIM GTC connector.
    Highly appreciate if any one give me the background or steps to follow how to execute the provisioning using custom web service in OIM 11g.
    Thanks

    Hi,
    -Just trying to help-
    Based on OIM 11G requirements:
    If your target system is a Web service that can accept and parse SPML-based provisioning requests packaged in SOAP messages, you can use the SPML provisioning format provider and Web Services provisioning transport provider.
    You need not create custom provisioning providers.
    1-SPML provisioning format provider
    TargetOperation value object that is created by the SPML provisioning format provider and used as an input for the Web Services provisioning transport provider:
    com.thortech.xl.gc.impl.prov.WSTransportTargetOperation
    2-15.4 Web Services Provisioning Transport Provider
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14309/prdfnd_prov.htm#CHDJBFAI
    I hope this helps,
    Thiago Leoncio Guimaraes

  • OIM 11g - Renaming an UDF attribute

    Hi,
    May I know how i can rename a custom defined user attribute in OIM 11g?.Thanks.

    878153 wrote:
    Thanks BB.My requirement is to renamed a UDF which I have created.For example,I created a UDF with labee "Mobile" and want to change it to "Telephone" .May I know how I can achieve this?.If you want to define the label for your attribute in GUI, then use resource bundles to define the label for your label:
    $OIM_ORACLE_HOME//server/customResources/customResources_<your language>.properties
    Add the global.udf. prefix to the name of the attribute.
    Otherwise, you will have to create a new attribute and delete the old one.

  • Custom User Attributes not visible on user profile in OIM 11g

    hi ,
    As I have created a custom attribute in OIM11g. I am not able to view the attribute after I crate a User in OIM.
    Please help me in solving my issue .
    Thanks
    srikanth

    It's a very basic thing. Just try creating an Authorization Policy and you would know how to do it. For your refernce I am also pasting the excerpt from the same Metalink Article
    After creating the UDF, please follow the below steps to make the UDF visible for modification by an admin user:
    1. Navigate to create a new 'Authorization Policy'as below:
    a. Login to UI and click on Administration
    b. On the top left you will see the Authorization Policy tab
    c. Now click on Create Authorization Policy
    2. Please use the below information to create the Authorization Policy
    a. Name: UDF policy
    b. Entity Name: User Management
    c. Permissionsc. Permissions:
    i. Modify User Profile
    ii. View User Profile
    Please make sure that the UDF is selected in the attributes for these permissions.
    d. Data Constraints: All Users
    e. Policy assignment: All Users
    3. Create a user called "useradmin' and add the below 2 roles:
    a. All Users (This is default)
    b. Identity User Administrators (This will provide the administrative tab to this user so that he can administer other users)
    4. Create another end user called 'testuser1' populations the necessary fields.
    5. Now login as 'useradmin'
    6. Search for a user called 'testuser1' and open the user.

  • Creation of 250+ custom UDFs in OIM 11gR2

    We are working on a IAM implementation using OIM 11g R2. Our requirement is to add 250+ custom UDF attributes in user profile.
    We already have 100 UDFs and planning to create additional 150 UDFs.
    Could you please let us know if anyone of you have come across such a large number of UDFs in your experience and any performance impacts that can be associated.
    Thanks
    Suren

    Just try below
    1. export User.xml using deployment manager(metadata export)
    2. export sandbox. make sure at least one udf you have added in all the pages (Create, Modify and View page)
    [Must have a copy/backup of both which will help you for recovery if something goes wrong]
    3. open User.xml and copy paste for the remaning 150 UDF similar to the existing entries
    4. go to exported sandbox. there will be file like UserEo.xml, UserEo.xml.xml, UserVo.xml, UserVo.xml.xml.. may one more file will be there. open each file and add similar entries for the remaining attribute
    5. import User.xml using deployment manager
    6. import sandbox and activate same.
    Oh I didn't get your question. Yes we had around 200 UDF on Beta version of R2, and there was no diff on the performance. So, I don't think there will be any performance issue.

Maybe you are looking for

  • DB link over HSODBC problem

    I've double and triple checked this and can't seem to find out why I am still getting ora-02063 errors. The connection is to a MSSQL server 2000 database from 10G R2, files configured are as such: =====================================================

  • TimeOutException - unable to create instance - after installing patch set.

    Hi, We have Oracle 9iAS 9.0.2 (Release 2) running on Windows 2000 Server. We are running EJB's on the server, these include Entity and Session Beans. Last week on 13-March 2003 (Thrusday) we installed a PatchSet downloaded from "metalink.oracle.com".

  • GooSync Free is back!

    Hi: I had been using GooSync to sync/backup my nokia calendar for long time until last year they decided to charge for all their service. Since then I was looking for alternatives. First I tried Ovi.com but I had troubles with time (see here) and int

  • Cannot run java

    i am trying to log on to a program called skillcheck.com an assessment website.   when i click on the tab system check to make sure my system is compatible i keep getting the following message...No Java Client available.  My Mac Book Pro is running o

  • Iphoto 4 lost pictures!!!

    someone help ! I moved (now i know rather stupdily) my iphoto library to a shared folder to allow my girl friend to access them (as if it were an itunes folder). then i realized this may not be possible so i did ' undo move' action from the finder. T