Need to generate Unique User IDs in OIM

Hi,
I am working in OIM 9.1 environment right now. I need to generate unique User IDs for all the users who come via self request. My problem is that while creating the user ids, I can search for the existing users in OIM and AD easily, but i am unable to search the users for whom the request has been made but approval is pending. Such user ids are reserved in OIM so if an employee with the same first and last name comes, there might be a conflict which might lead to an error. Can someone suggest any api or query using which I can search for these IDs under request in OIM.

If i use the userid generator as Pre-Insert, there will be a conflict if two similar named users request at the same time (or if one of the request is yet to be approved).
I am getting the below error while creating user id as Pre-Insert. What is the correct way of getting this done? Please suggest.
012-11-20 19:25:41,787 INFO [STDOUT] Running CREATEUSERINOIM
2012-11-20 19:25:41,788 INFO [STDOUT] Target Class = com.pldt.adapter.createuser.CreateUserInOIM
2012-11-20 19:25:41,788 INFO [STDOUT] ***********************Inside Create User****************************
2012-11-20 19:25:41,805 INFO [STDOUT] =====================Before Date Insert===============
2012-11-20 19:25:41,805 INFO [STDOUT] =====================hiredate===============1970-01-01
2012-11-20 19:25:41,805 INFO [STDOUT] ***************************section***************XTNL Active
2012-11-20 19:25:42,647 INFO [STDOUT] Running DISABLEUSERINOIM
2012-11-20 19:25:42,649 INFO [STDOUT] Target Class = com.pldt.adapter.disableuser.DisableUserInOIM
2012-11-20 19:25:42,649 INFO [STDOUT] Entered Method retrieveUtility in SelectApprovalUser class
2012-11-20 19:25:42,662 INFO [STDOUT] *************************************Inside disableOIMUser**********************
2012-11-20 19:25:42,662 INFO [STDOUT] *************************************2**************
2012-11-20 19:25:42,663 INFO [STDOUT] ******************tcUserIntf**********Thor.API.Operations.tcUserOperationsClient@5fd3131f
2012-11-20 19:25:42,663 INFO [STDOUT] *************usrkey**********713
2012-11-20 19:25:42,664 INFO [STDOUT] *************usrkey**********XTNL Active
2012-11-20 19:25:42,664 INFO [STDOUT] ********************employeeGroup check Value*************XTNL Active
2012-11-20 19:25:42,664 INFO [STDOUT] returning False
2012-11-20 19:25:42,797 INFO [STDOUT] ***********************User Created Succesfully****************************
2012-11-20 19:25:42,848 INFO [STDOUT] **************************Employee Group**********XTNL Active
2012-11-20 19:25:44,199 INFO [STDOUT] Running CREATEUSERINOIM
2012-11-20 19:25:44,200 INFO [STDOUT] Target Class = com.pldt.adapter.createuser.CreateUserInOIM
2012-11-20 19:25:44,200 INFO [STDOUT] ***********************Inside Create User****************************
2012-11-20 19:25:44,212 INFO [STDOUT] =====================Before Date Insert===============
2012-11-20 19:25:44,213 INFO [STDOUT] =====================hiredate===============1970-01-01
2012-11-20 19:25:44,213 INFO [STDOUT] ***************************section***************XTNL Active
2012-11-20 19:25:44,255 ERROR [XELLERATE.SERVER] Class/Method: tcUSR/verifyUserLogin Error :User Loginid is duplicate.
2012-11-20 19:25:44,258 ERROR [XELLERATE.SERVER] Class/Method: tcUSR/eventPreInsert Error :User login is not correct.

Similar Messages

  • Potential fix for WGM generating negative User IDs

    I saw a posting back from August 2007 from "Summer is Gone", where he/she asked about Workgroup Manager generating negative User IDs (UIDs). No one responded back then and the thread is now closed, so I thought I'd contribute my experience with it today.
    I had this problem on a 10.4.11 server that serves only as an OD Master. I had archived the OD database, set to Standalone, rebooted, and then restored the archive as a potential fix for some little glitches that we'd been having after 4 years of running the server.
    After the archive was restored, WGM was creating negative UIDs during "Add User". I'm not certain that was the trigger, but it's the likely one.
    The fix was to simply trash ~/Library/Preferences/com.apple.workgroupmanager.plist and relaunch WGM. After that, WGM once again started generating positive UIDs.

    In case no one got back to you, when you use WGM to import set the "First User ID" to a positive number. WGM>Server>Import>First User Import ID
    Then all users will get a positive ID.

  • Need to generate unique sequence number based on category

    Hi,
    I have to update the NEW_NUMBER column  with unique number ,taking into category column consideration.
    Here is the table structure and data.
    {code}
    create table sample(
    CATEGORY VARCHAR2(100),
    NUMBER   VARCHAR2(100),
    NEW_NUMBER VARCHAR2(100))
    {code}
    {code}
    insert into sample values('CAPACITOR','36858','');
    insert into sample values('CAPACITOR','37858','');
    insert into sample values('CAPACITOR','36958','');
    insert into sample values('RESISTOR','46858','');
    insert into sample values('RESISTOR','47858','');
    insert into sample values('RESISTOR','46958','');
    {code}
    I have to update the NEW_NUMBER column  with unique number ,taking into category column consideration.
    Output would be like this.
    {code}
    insert into sample values('CAPACITOR','36858','270-01-0000001');
    insert into sample values('CAPACITOR','37858','270-01-0000002');
    insert into sample values('CAPACITOR','36958','270-01-0000003');
    insert into sample values('RESISTOR','46858','370-01-0000001');
    insert into sample values('RESISTOR','47858','370-01-0000002');
    insert into sample values('RESISTOR','46958','370-01-0000003');
    {code}
    If you can help to generate for one category,I will do it for other categories.
    Thanks in advance.
    Thanks,
    Lak

    Not sure how you came up with 270 and 370. But with what ever information you have provided this is what i came up with.
    SQL> select * from sample;
    CATEGORY   OLD_NUMBER           NEW_NUMBER
    CAPACITOR  36858
    CAPACITOR  37858
    CAPACITOR  36958
    RESISTOR   46858
    RESISTOR   47858
    RESISTOR   46958
    6 rows selected.
    SQL> merge into sample a
      2  using (
      3          select category
      4               , old_number
      5               , decode(category, 'CAPACITOR', '270', 'RESISTOR', '370')
      6                 || '-01-'
      7                 || lpad
      8                    (
      9                       row_number() over(partition by category order by old_number)
    10                     , 7
    11                     , '0'
    12                    ) new_number
    13            from sample
    14        ) b
    15     on (
    16          a.category   = b.category and
    17          a.old_number = b.old_number
    18        )
    19   when matched then
    20      update set a.new_number = b.new_number;
    6 rows merged.
    SQL> select * from sample order by category, old_number;
    CATEGORY   OLD_NUMBER           NEW_NUMBER
    CAPACITOR  36858                270-01-0000001
    CAPACITOR  36958                270-01-0000002
    CAPACITOR  37858                270-01-0000003
    RESISTOR   46858                370-01-0000001
    RESISTOR   46958                370-01-0000002
    RESISTOR   47858                370-01-0000003
    6 rows selected.

  • How to change user name in OIM 11

    Hi,
    I have a custom java class to generate unique user names based on last name + initials + numbers (for duplicates). We have this implemented in plugin framework and it seems to be working fine. But when someone changes his name (first, last or middle), the user names need to be recalculated. How can we automate this process?
    Any ideas are highly appreciated!
    MBiswal

    I will suggest update your existing eventhandler and instead of Create operation use both CREATE and MODIFY operation under your eventhandler and your same code will be working fine.
    Make sure you use EntityManager.modify to update userprofile.(don't use Usermanager.modify)
    In MDS you can say Operation ANY
    While writing code use: if (operation.equals("MODIFY") || operation.equals("CREATE")){                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Generate random User Alias - Entity adapter

    Hi,
    I am a newbie. Can anyone please help me in telling steps for creating an Entity Adapter which generate a random User Alias.
    TIA.
    Got few threads that tell about pre-populate adapter, none for entity adapter.

    Hi,
    Follow the below steps to create new entity adapter in OIM
    To add the new created event handler to OIM server, perform the following steps:
    1. Write a java code to perform the needed operation ("Generate random user alias" in your case).
    2. Copy the file to OIM_HOME\xellerate\EventHandlers
    3. Open Design Console and navigate to: Development Tools -> Business Rule Definition -> Event Handler Manager
    4. Create a new Event Handler and specify:
    Event Handler Name: +<give the class name of your code>+
    Package: +<give the package name of your code>+
    Pre-Insert: Checked (for this scenario)
    5. Save the event handler
    6. Navigate to Development Tools -> Business Rule Definition -> Data Object Manager
    7. Search for "Users" and add the event handler to the Pre-Insert list.
    8. Save.
    Regards,
    NS

  • To know user ids under a responsibility

    I am working on a customized application using OAF.
    Now I need to know the user ids which are assigned a responsibility by administrator.
    Also I know the responsibility name only. I also have to find out the responsibility id.
    So for responsibility name I need to find out the responsibility id, and using it I have to find out the user ids associated to that responsibility.
    Kindly let me know the table names of the system from which I can get the above.
    Regards

    I am working on a customized application using OAF.
    Now I need to know the user ids which are assigned a responsibility by administrator.
    Also I know the responsibility name only. I also have to find out the responsibility id.
    So for responsibility name I need to find out the responsibility id, and using it I have to find out the user ids associated to that responsibility.select * from fnd_user_resp_groups where responsibility_id = (select responsibility_id from fnd_responsibility_tl
    where responsibility_NAME='System Administrator');
    Thanks
    --Anil                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           

  • Generate user Ids in ECC in specific numeric format

    Hi experts,
    Is it possible to create  user IDs ( say 12 character numeric ID) in SAP ECC 6.0? If so, what is the tcode?
    We are implementing SSO and we would be using first name and last name to identify the users in ECC and create unique accounts by letting the system generate the ID. For any new account request, the system should create increment this numeric ID and create a unique user ID in the ECC system. This ID is used only for technical purposes as the user would always use his AD account to login.
    Appreciate if anyone can provide some thoughts in this area..
    Thanks
    Kee

    > ( say 12 character numeric ID)
    That would be your limit as well.
    > This ID is used only for technical purposes as the user would always use his AD account to login.
    So you are using Singe-Sign-On, but need to generate the ABAP UMR record name for them.
    First off: There are advantages from keeping the UID names the same, just as there are disadvantages from making them cryptic on the ABAP side because the UID name (system field sy-uname) is used in many many applications as the identifier of the creator, or whatever, of data records.
    Okay, that is not scalable for huge systems. But it is still better than nothing (e.g. the first name / last name is not displayed)
    If you want to go for the sequential numbered user ID option, then the most obvious way to me is to create a number range object (transaction SNRO) for draw the number from there as they are registering. It would be advisable to not activate any number buffering for the range (to avoid gaps) and you might want to ensure that user interfaces to create UIDs where the number range is not forced are protected.
    Can be done, but sounds a bit messy to be honest. At least it is not the way things have been done historically in SAP. For example, how would you do a synchronization between the AD and the ABAP system? Or an audit of it? I think that you would have to always go via the mail a ddress only.
    Of course, a mail box is something which is quite dear to a person... probably more so than their SAP password....
    Interesting question!
    Cheers,
    Julius

  • I need to send sm37 Spool Report Automatically to one or more user ids.

    Hai Gurus,
    I need to send sm37 Spool Report Automatically to one or more user ids.
    Kindly guide me

    Thanks.. .
    is it possible to create Many distribution list for each & every Spool Report ?
    I mean, Can i create separate distribution list for each Reports ?. EX: ME2N Report.
    Edited by: Swetha SAP Girl on Jul 6, 2009 10:11 AM

  • Do we need unique program ids for different SAP Channels

    Hi All,
    I am using different channels for receiving SalesOrder and Invoice idocs from SAP system. Wanted to confirm if we need unique program ids for each SAP channel or a single program id can be configured in SAP GUI to receive both idocs. I am using SOA 11g.
    Regards
    Subhankar

    Unique program id for each type of IDOC is preferred per each channel
    IDOC Type 1->Programid1->Channel1
    IDOC Type 2->Programid2->Channel2
    Manoj

  • OIM 11g: How to remove rule requiring unique user email addresses

    Use the OIM 11g Administrative and User Console to update a user's email address to be the same as another user's address and on save you get error message:
    "The user with the attribute Email and value [email protected] already exists"
    In OIM 9.1 we used to be allowed duplicate email addresses.
    OIM 11g wants them to be unique (refer OIM 11g User Guide table 11-2 in section "11.2 User Entity Definition" which shows the email attribute properties with unique:yes).
    How do you change this to "unique:no"?
    The OIM 11g Admin Guide section "14 Configuring User Attributes" describes the User.xml file in MDS but doesn't mention unique properties.
    The System Properties accessed via System Management->System Configuration doesn't show anything that looks like an option to enforce email address uniqueness.
    Thanks

    OIM 11g does not allow duplicate email addresses. We asked Oracle about this and they responded that the feature (duplicate email addresses) was "removed from OIM 11g due to sending mail notifications, security and other related
    concerns". We think we can live with this restriction and did not make an enhancement request.
    The user guide does show that email address is unique:
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14316/usr_mangmnt.htm#BGBDCDCH
    but there's no way to override the rule.

  • How to get unique users through resource name using OIM 10g API

    Hello,
    I have a scenario where i have a resource 'TRY' with multiple request allowed,so if user 'A' requests for
    resource 'TRY' 3 times then i can see in user 'A' resource profile 3 occurrences of resource 'TRY' & when i
    use getAssociatedUsers() API it gives me 3 occurrences of user 'A',so is there any available API for searching
    unique users based on resource name ?
    Thank-You
    Rahul Shah

    You can get the logged in user name using the below java code:
    ADFContext adfCtx = ADFContext.getCurrent();
    SecurityContext secCntx = adfCtx.getSecurityContext();
    String user = secCntx.getUserPrincipal().getName();
    HTH

  • Unique ID generation in OIM 11.1.1.5

    Dear All,
    I would like to generate the automatic unique ID during the user creation in OIM 11.1.1.5. Can any one please suggest me to do the customization for it and share some documents which can be helpful to me.
    Thanks
    Harry
    Edited by: Harry-Harry on Nov 5, 2012 12:35 AM

    If you have specific format for the ID generation then you will have to use post-process event handler for this.
    In this case 1st you will process record with some random ID and afterword will process it to get required formatted id.
    Refer
    http://docs.oracle.com/cd/E14571_01/doc.1111/e14309/oper.htm

  • Exporting the user IDs from R/3 to a flat file

    I need to generate a flat file with all the user IDs from an ABAP system. How can I do that? is there something available out-of-the-box or I need to develop something?
    Also, is there a quick way to bering all the user IDs from R/3 into the Portal?

    Hi,
    Goto SE16 - click on the Table contents button in the screen and execute the table.it will list out the user details - > Edit > Download-> Spreadsheet ->give the name and location for the file.
    REward with points if it is useful
    Regards,
    Sangeetha.A

  • Not able to create, deleted user again in OIM

    Hi,
    As part of our porcess we susped the user on the next day of his/her last working day. And after 20 days we are deleting that user from OIM.
    Now the deleted user again re-hire into the organization. So we need to re-create the user in OIM.
    But we are unable to create the user in OIM 11g. And it is showing error as "user already exist".
    Then we found there is an entry for this user in OIM repository as usr_status as deleted. And also we are not able to see this user in the OIM admin console even there is an entry in repository.
    Please help us how to solve this issue in creating the identity in OIM.
    Thanks in advance
    Siva

    If you want to re-create a deleted user with the same user id then you need to set the re-use id property to true and also drop the unique key contraint from the USR table.
    Ref: Re: Steps for re-using the same user id of a deleted user in OIM 11g ?
    -Bikash

  • How to generate unique filenames??

    i need to be able to generate unique files from a servlet..
    my initial instinct was to use the seesion id as part of the filename, however as this file will be embedded in the responding html, this is not safe, as the user will only have to look at the html source to view a session id value.
    i am now considering to use the date/time of the creation of a session as the unique identifier for the file, however this will not work if two sessions can be created at the same time.
    my question thefore is if no two sessions can have the same date and time?
    if not.. can anyone give me an idea as how to produce unique filenames?

    If you are actually creating a file, why not usethe
    java.io.File.createTempFile() method?how does that help with prducing a unique value to use
    as the name of a file?
    with that method i still need to supply the filename
    as one of its arguments!
    No you don't. You provide a prefix and suffix and it fills in the middle with something guaranteed to be unique, in the directory you specify. Here is the javadoc:
    createTempFile
    public static File createTempFile(String prefix,
    String suffix,
    File directory)
    throws IOException
    Creates a new empty file in the specified directory, using the given prefix and suffix strings to generate its name. If this method returns successfully then it is guaranteed that:
    1. The file denoted by the returned abstract pathname did not exist before this method was invoked, and
    2. Neither this method nor any of its variants will return the same abstract pathname again in the current invocation of the virtual machine.
    This method provides only part of a temporary-file facility. To arrange for a file created by this method to be deleted automatically, use the deleteOnExit() method.
    The prefix argument must be at least three characters long. It is recommended that the prefix be a short, meaningful string such as "hjb" or "mail". The suffix argument may be null, in which case the suffix ".tmp" will be used.
    To create the new file, the prefix and the suffix may first be adjusted to fit the limitations of the underlying platform. If the prefix is too long then it will be truncated, but its first three characters will always be preserved. If the suffix is too long then it too will be truncated, but if it begins with a period character ('.') then the period and the first three characters following it will always be preserved. Once these adjustments have been made the name of the new file will be generated by concatenating the prefix, five or more internally-generated characters, and the suffix.
    If the directory argument is null then the system-dependent default temporary-file directory will be used. The default temporary-file directory is specified by the system property java.io.tmpdir. On UNIX systems the default value of this property is typically "/tmp" or "/var/tmp"; on Microsoft Windows systems it is typically "c:\\temp". A different value may be given to this system property when the Java virtual machine is invoked, but programmatic changes to this property are not guaranteed to have any effect upon the the temporary directory used by this method.
    Parameters:
    prefix - The prefix string to be used in generating the file's name; must be at least three characters long
    suffix - The suffix string to be used in generating the file's name; may be null, in which case the suffix ".tmp" will be used
    directory - The directory in which the file is to be created, or null if the default temporary-file directory is to be used
    Returns:
    An abstract pathname denoting a newly-created empty file
    Throws:
    IllegalArgumentException - If the prefix argument contains fewer than three characters
    IOException - If a file could not be created
    SecurityException - If a security manager exists and its SecurityManager.checkWrite(java.lang.String) method does not allow a file to be created
    Since:
    1.2

Maybe you are looking for

  • List of open work orders

    Hi all, How to detwermine whether an open work order exist for a particular material and the plant. Is there a transaction where i can check the open work orders given the above input parameter. Regards Hemanth

  • Generic document Icons without Application Signature

    I have a mix of document icons on the desktop. All are saved in Word or Excell but some are seen as .doc icons (Grey) while other have the Word Signature (Blue with a W). Have no idea why that has happened or what to do. In the good old days this was

  • Attaching a Reader to a Collection

    i've got a Collection of Strings. rather than iterate thru the Collection, i want to use a Reader+ to get the data in the Collection. how could i do that?

  • Where is the download for version 7

    Did apple take the download off the website due to problems. When i click on the download button I get the download page but not way to actually download the thing???

  • Problems Adobe applicationManager

    hi. I have an pc with win8 running on it. it hast thre partitions on it: c(boot) 60GB, D(Data) 1,8 TB,e(recovery) 60GB).So the problem is: i Download the ApllicationManager .exe to D. But when it installs , it goes automatically to c. i found that i