Skip Headers
Oracle® Identity Manager Connector Guide for PeopleSoft Employee Reconciliation
Release 9.1.0

Part Number E11205-05
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

3 Extending the Functionality of the Connector

This chapter discusses the following optional procedures:

3.1 Adding New Fields for Full Reconciliation

To add new fields for full reconciliation:

Note:

If you do not want to add new fields for full reconciliation, then you need not perform this procedure.
  1. In PeopleSoft Application Designer:

    1. From the File menu, click Open. The Open Definition dialog box is displayed.

    2. Select App Engine Program from the Definition list.

    3. Enter BLKPRCS_ER in the Name Selection Criteria field.

    4. Click Open.

  2. Modify the header and queries in the application engine code (BLKPRCS_ER).

    For example, suppose you want to add the alternate city field, ALT_CITY, to the list of fields that are reconciled. You must first identify the table in which this field is located. This field is located in the ADDRESSES table. The required changes are as follows:

    1. Define this field as a variable. To do so, add the code highlighted in bold in the following sample:

      Local string &city_ac;
      
    2. Modify the header variable to include the new variable, which you want to reconcile. Add the lines highlighted in bold in the following code sample:

      &hdr = "EMPLID" | &Sepratr | "LASTNAME" | &Sepratr | "FIRSTNAME" | &Sepratr | "SEX" | &Sepratr | "POSTAL" | &Sepratr | "CITY" | &Sepratr | "PHONE" | &Sepratr | "BIRTHDATE" | &Sepratr | "COUNTRY" | &Sepratr | "ADDRESS" | &Sepratr | "STATE" | &Sepratr | "HIRE_DATE" | &Sepratr | "DEPTID" | &Sepratr | "JOBCODE" | &Sepratr | "EMPLOYEETYPE" | &Sepratr | "STATUS" | &Sepratr | "ALT_CITY";
      
    3. At the end of the SQL statements section, add a SQL statement to retrieve and store the column values of the new field in a local variable as follows:

      /* ALTERNATE CITY */
         &Sel = CreateSQL("select CITY_AC from %table(ADDRESSES) where EMPLID = :1", &emplid);
         &f = &Sel.Fetch(&city_ac);
      
    4. Add data fields that are retrieved to the XML message. For example, to add the data fields of the CITY_AC column to the ALT_CITY tag, add the lines highlighted in bold in the following code sample:

      &datarow = &datarow | &phone | &Sepratr | &bdate | &Sepratr | &cnty | &Sepratr | &address | &Sepratr | &state | &Sepratr | &hdate | &Sepratr | &deptid | &Sepratr | &jobcode | &Sepratr | &emptype | &Sepratr | &hrstatus | &Sepratr | &city_ac;
      
  3. In the Oracle Identity Manager Design Console, make the required changes as follows:

    See Also:

    Oracle Identity Manager Design Console for detailed instructions on performing the following steps
    1. Create a new user-defined field. For the procedure to create a new user-defined field, see "Creating a New User-Defined Field".

    2. Add a reconciliation field corresponding to the new field in the PSFT_ER_RO resource object. For the example described earlier, you can add the Users.ALTCITY reconciliation field

    3. Modify the PSFT_ER process definition to include the mapping between the newly added field and the corresponding reconciliation field. For the example described earlier, the mapping is as follows:

      Users.ALTCITY = Alternate City
      
  4. Add the new field in the Lookup.PSFTER.Attr.Map.Recon lookup definition. The format that you must use is as follows:

    Code Key Decode Key
    TargetAttribute Users.OimAttributeName

    Note:

    You must ensure that the TargetAttribute value that you specify does not contain spaces.

    For example:

    Code Key value: ALT_CITY
    Decode: Users.ALTCITY
    

    In this example, ALTCITY is the reconciliation field and its equivalent target system field is CITY_AC. As a standard, the prefix "Users." is added at the start of all reconciliation field names.

  5. Restart Oracle Identity Manager.

3.2 Adding New Fields for Incremental Reconciliation

Note:

If you do not want to add new fields for incremental reconciliation, then you can skip this section.

Standard incremental reconciliation involves the reconciliation of predefined fields. If required, you can add new fields to the list of fields that are reconciled.

To add new fields for incremental reconciliation:

  1. Modify the PeopleCode given in the following files. These files are in the OIM_HOME/XLIntegrations/PSFTER/peopleCode directory.

    • For HRMS 8.8 SP1

      OIMConnector_appclass_8.49&8.8.txt

    • For HCM 8.9 and 9.0

      OIMConnector_appclass_8.49.txt

    For example, suppose you want to add the alternate city field, ALT_CITY, to the list of fields that are reconciled. You must first identify the table in which this field is located. This field is located in the ADDRESSES table. The required changes are as follows:

    1. Define this field as a variable. To do so, add the code highlighted in bold in the following sample:

      Local string &EMPLID, &lname, &fname, &sex, &postal, &city, &phone, &cnty, &address, &state, &bdate, &hrstatus, &reg_temp, &per_org, &full_part_time, &emptype, &address1, &address2, &address3, &city_ac;
      

      Then, you must initialize it. To do so, add the code highlighted in bold in the following sample:

      &Hrstat = "";
      &date = "";
      &city_ac = "";
      
    2. At the end of the SQL statements section, add a SQL statement to retrieve and store the column values of the new field in a local variable.

      If (&city_ac = "") Then
        &Sel = CreateSQL("select A.CITY_AC from %table(ADDRESSES) A where A.EMPLID = :1", &EMPLID);
        &f = &Sel.Fetch(&city_ac);
      End-If;
      
    3. Add data fields that are retrieved to the XML message. For example, to add the data fields of the CITY_AC column to the ALT_CITY tag, add the lines highlighted in bold in the following code sample:

      &recnode = &fieldtypenode.AddElement("DEPT_TBL");
      &recnode.AddAttribute("class", "R");
      &fields = &recnode.AddElement("DEPTNAME");
      &fields.AddAttribute("type", "CHAR");
      &fields = &recnode.AddElement("ALT_CITY");
      &fields.AddAttribute("type", "CHAR");
      
    4. Add the data text that are retrieved to the XML message. For example, to add the data text of the CITY_AC column to the ALT_CITY tag, add the lines highlighted in bold in the following code sample:

      &datarecnode = &transnode.AddElement("DEPT_TBL");
      &datarecnode.AddAttribute("class", "R");
      &datafldnode = &datarecnode.AddElement("DEPTNAME");
      &textnode = &datafldnode.AddText(&deptname);
      &datafldnode = &datarecnode.AddElement("ALT_CITY");
      &textnode = &datafldnode.AddText((&city_ac);
      
  2. Extract the contents of the peopleSoftERApp.war file into a temporary directory by using the following command:

    jar –xvf peopleSoftERApp.war
    

    Copies of this file are in the application server deployment directory.

  3. In the attributemap.properties file, add the XPath (key-value entry) of the new field. For example, add the following XPath for the ALT_CITY attribute:

    Users.ALTCITY=//Transaction/PERSONAL_DATA/ALT_CITY
    

    Note:

    In the attributemap.properties file, the key part of each line is the text to the left of the equal (=) sign. You must ensure that the key part of the lines does not contain spaces. For example, Users . ALTCITY, Users. ALTCITY, and Users.ALT CITY are all invalid key values because they contain spaces.
  4. Delete the existing peopleSoftERApp.war file from the temporary directory into which you extracted it, and then enter the following command to re-create the file that contains the new attribute:

    jar –cvf peopleSoftERApp.war .
    
  5. Delete the old version of the peopleSoftERApp.war file from the application server deployment directory.

  6. Copy the newly created peopleSoftERApp.war file into the application server deployment directory.

  7. In the Oracle Identity Manager Design Console, make the required changes as follows:

    See Also:

    Oracle Identity Manager Design Console for detailed instructions on performing the following steps
    1. Create a new user-defined field. For the procedure to create a new user-defined field, see "Creating a New User-Defined Field".

    2. Add a reconciliation field corresponding to the new field in the PSFT_ER_RO resource object. For the example described earlier, you can add the Users.ALTCITY reconciliation field.

    3. Modify the PSFT_ER process definition to include the mapping between the newly added attribute and the corresponding reconciliation field. For the example described earlier, the mapping is as follows:

      Users.ALTCITY = Alternate City
      

      In this example, ALTCITY is the reconciliation field and also the equivalent target system field. As a standard, the prefix "Users." is added at the start of all reconciliation field names.

  8. Restart Oracle Identity Manager.

Creating a New User-Defined Field

To create a new user-defined field, perform the following:

  1. Log in to the Oracle Identity Manager Design Console.

  2. Expand the Administration folder.

  3. Double-click User Defined Field Definition.

  4. Search for and open the Users form.

  5. Click Add.

  6. Enter the details of the field.

    For example, if you are adding the Alternate City field, then enter Alternate City in the Label field, set the data type to String, enter USR_UDF_ALT_CITY as the column name, and enter a field size value.

  7. Click Save.