Appendix: Adding Diagnostics

This appendix discusses how to create and use new query, function, and SQL-based diagnostics for the delivered diagnostic source types.

Note. A red paper is available on My Oracle Support that provides guidelines about how to define new diagnostic source types.

See Also

PeopleSoft Internal Controls Enforcer Diagnostics Red Paper on My Oracle Support.

Click to jump to parent topicKey Column Requirement

The PeopleSoft Internal Controls Enforcer server diagnostic module uses a function called BuildResponse to create the resulting XML file. This function expects that the result contains the key as its first column. This key will not be part of the diagnostic report that is displayed in PeopleSoft Internal Controls Enforcer. This key may be a concatenation of several fields, and it must uniquely identify each row. This key is crucial to the diagnostic portal module for comparing a newly retrieved diagnostic report against the previous diagnostic report. The following diagram shows an example of how the system uses the key column.

Key column use in BuildResponse function

Click to jump to parent topicCreating Query-Based Diagnostics

Complete the following steps to implement new queries for use with diagnostics:

  1. Create the query on the remote system. Remember to add the key as the first column of the result.

  2. Add a query reference definition in PeopleSoft Internal Controls Enforcer to reference that query. Make sure to give the query ID the same name as that of the query that you created in the remote system.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Query Definition.

    2. Click Add a New Value and enter the name of the query you created in the remote system as the query ID.

    3. Enter a description.

    4. Select Business Unit Required if you need to query control data in a PeopleSoft database so that setID redirection can retrieve the appropriate set of records. If this is selected, the system automatically inserts the entity business unit as the first parameter of the query that it sends to the external source system.

    5. If needed, specify additional parameters to pass to your query. The order is important; it must match the prompt properties you defined for the query.

    6. Save.

  3. Add a new diagnostic definition in PeopleSoft Internal Controls Enforcer to point to the new query.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Define Diagnostic.

    2. Click Add a New Value and enter an ID for the diagnostic.

    3. Select the ID of the external source system.

    4. Select Query

    5. Specify the query reference (created previously in step 2) to use for this diagnostic.

    6. Save.

Click to jump to parent topicCreating SQL-Based Diagnostics

Complete the following steps to create and implement new SQL-based diagnostics:

  1. In the PeopleSoft Internal Controls Enforcer application, add a SQL reference using the Define SQL Reference page.

    See Defining SQL References.

  2. Add a new diagnostic definition in PeopleSoft Internal Controls Enforcer that points to the new SQL reference.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Define Diagnostic.

    2. Click on Add a New Value and enter an identifier for the diagnostic.

    3. Select the ID of the external source system.

    4. Select SQL.

    5. Specify the SQL reference (created previously in step 2) to use for this diagnostic.

    6. Save.

Click to jump to parent topicCreating Function-Based Diagnostics for PeopleSoft Enterprise Applications

Complete the following steps to create and implement new function-based diagnostics for PeopleSoft Enterprise Applications:

  1. On the remote PeopleSoft system, write a new function.

    Note. The functions that are packaged in PeopleSoft Internal Controls Enforcer are found in FUNCLIB_EPQ.EPQ_PUB_FUNCTIONS.FieldFormula. You should save any functions that you create into a different record definition to ensure that future upgrades do not overwrite your function definitions.

    PeopleSoft Internal Controls Enforcer provides a function called BuildResponse that you can use to create the resulting XML file.

    Function BuildResponse(&numrow As number, &numcol As number, &sc As number, &colarr As array of string, &rowarr As array of array of string) Returns string;

  2. On the remote system, add an extra WHEN clause into AnalyzeFunction in FUNCLIB_EPQ.EPQ_PUB_FUNCTIONS.FieldFormula for the new function.

  3. Add a function definition in PeopleSoft Internal Controls Enforcer that references the new function. Make sure to give the function ID the same name as the function that you created in the remote system.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Function Definition.

    2. Click Add a New Value and enter the name of the function you created in the external source system as the function ID.

    3. Enter a description.

    4. Select Business Unit Required if you need to query control data in a PeopleSoft database so that setID redirection can retrieve the appropriate set of records. If this is selected, the system automatically inserts the entity business unit as the first parameter of the function that it sends to the external source system.

    5. If needed, add additional parameters to pass to your function. The order is important; it must match the parameter list you defined for the function.

    6. Save.

  4. Add a new diagnostic definition in PeopleSoft Internal Controls Enforcer to point to the new function.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Define Diagnostic.

    2. Click on Add a New Value and enter an identifier for the diagnostic.

    3. Select the ID of the external source system.

    4. Select Function.

    5. Specify the function reference (created previously in step 3) to use for this diagnostic.

    6. Save.

Click to jump to parent topicCreating Function-Based Diagnostics for JD Edwards EnterpriseOne Applications

Complete the following steps to create and implement new function-based diagnostics for Oracle's JD Edwards EnterpriseOne applications:

  1. On the remote JD Edwards EnterpriseOne system, write a new function, using either of the following methods:

  2. In WebMethods Developer, create a new adapter service using the Business Function template and the EnterpriseOne Adapter as the adapter type. The purpose of this adapter is to facilitate calling the business function from a flow service.

  3. In WebMethods Developer, create a new flow service using the adapter service created in the previous step. The purpose of this flow is to respond, with an XML document, to requests from PeopleSoft Internal Controls Enforcer.

    1. Be sure to use the E1 Date Pattern integration option to obtain the date pattern to pass into the adapter.

    2. Use the documentToXMLString service in conjunction with the XMLoutputdoc document to create an XML document. The XMLoutputdoc document is located in the PSFT_EnterpriseOne_ICE package under the docs folder.

    3. Use the setRsponse service to return the XML document to the calling process.

  4. Add a function definition in PeopleSoft Internal Controls Enforcer that references the new flow service. Make sure to give the function ID the same name as the flow service that you created in step 3.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Function Definition.

    2. Click Add a New Value and enter the name of the flow service you created as the function ID.

    3. Enter a description.

    4. Do not select Business Unit Required.

    5. If needed, add additional parameters to pass to your flow service. The format will be parametername=value.

    6. Save.

  5. Add a new diagnostic definition in PeopleSoft Internal Controls Enforcer to point to the new function.

    1. In the portal system, navigate to Internal Controls Enforcer, Master Setup, Diagnostic Setup, Define Diagnostic.

    2. Click on Add a New Value and enter an identifier for the diagnostic.

    3. Select the ID of the external source system.

    4. Select Function.

    5. Specify the function reference (created previously in step 3) to use for this diagnostic.

    6. Save.