Apr 15, 2016

Handling Special Character Issue in BI(XMLP) Publisher Reports

Some time BI Publisher report got error due to special character in xml file.To handle this we have to modify xml file.

We have to use <?xml version="1.0" encoding="iso-8859-1"?> instead of  <?xml version="1.0"?> it will allow report to run if data has some special characters.


If you are using rowset based xml generation use substitute function to replace the tag before writeline.

/* Create Sample XML File */
      &strXMLFile = &ObjRowsetXSD.getXMLData(&rs1, &StrXMLfilepath | &StrXMLfileNm | ".XSD");
      &strXMLFile = Substitute(&strXMLFile, "<?xml version=""1.0""?>", "<?xml version=""1.0"" encoding=""iso-8859-1""?>");
      &SampleXMLFile.WriteLine(&strXMLFile);



If you are generating XML directly in code then use

&XMLdoc = CreateXmlDoc("<?xml version='1.0' encoding=""iso-8859-1""?><ROOT/>");

PeopleSoft Excel to CI Issue : User-defined type not defined

This issues comes mostly when using higher versions of windows operating system(Windows 8 and above) or using higher versions of Office (Above office 2007)

Follow the below steps to resolve the issue:

Solution 1:Need to enable macros

                 Step1: In excel to CI template Press Alt+F11
                 Step2: Go to Tools-> References
                 Step3: Select “Microsoft AcitveX Data Objects 6.1 Library”  and “Microsoft DAO 3.6   Object Library” and press OK button and Save the references.

Solution 2: Need to modify VB Script

                 Step1: In excel to CI template Press Alt+F11
                 Step2: In Menu bar go to Debug->Compile Excel to CI template, it will open the code with error
                 Step3: Replace  "DOMDocument" with "DOMDocument60"
                                  Replace "Set xHTTP = New XMLHTTP" with "Set xHTTP = CreateObject("MSXML2.SERVERXMLHTTP.6.0")"
                    Step4: Save the Document and compile again

Note:Some times Solution1 is not enough to resolve the issue Try both the solutions.

Jun 23, 2015

Data Base Links(DBLinks)

DBLink:
  • Data Base Link provides you the control on the tables from other database.
  • It allows you to query against other databases using the syntax TABLENAME@DBLINK.
Syntax:
  • Use the following code to create a database link:

            create database link "database_link_name"
      connect to username
      identified by "password"
      using 'connection_name';
Example:

     create database link "HRDEV"
      connect to sysadm
      identified by "sysadm"
      using 'HR89DEV';

Usage:

  • We can select any record from HR89DEV database.
    • SELECT * FROM PS_JOB@HRDEV;

Jun 22, 2015

Job Code Full Sync Process (Integration Broker)

Activate Data Publish Rules In Source

    • Go to Enterprise Components > Integration Definitions >Full Data Publish Rule
    • Search for "JOBCODE_FULLSYNC” message.
    • If the rule is Inactive then make the status to Active and save the rule.
Activate Outbound Routing In Soruce      
    • Go to People Tools >> Integration Broker >> Integration Setup >> Service Operations
    • Search for “JOBCODE_FULLSYNC” Service Operation
    •  Navigate to the Routings tab.
    •  Select the outbound routing between "Source" to "Target"
    •  If the Routing is Inactive then click on ‘Activate Selected Routings’ button.

     Activate Inbound Routing In Destination
  •     Go to PeopleTools > Integration Broker > Integration Setup > Service Operations
  •       Search for “JOBCODE_FULLSYNC” Service Operation
  •       Navigate to the Routings tab.    
  •       Select the inbound routing between "Source" to "Target"   
  •       If the Routing is Inactive the click on 'Activate Selected Routings' button.  


    Run “Full Table Data Publish” Process In Source
       
  •       
    Go to Enterprise Components > Integration Definitions > Initiate Processes > Full Data Publish
  •      
    Provide run control id in search page.
  •      
    In run control page select process frequency as “Once”
  •       
    Select Message Name “JOBCODE_FULLSYNC”
  •       
    Click on “Run” button


  •       Select EOP_PUBLISHT (Full Table Data Publish) process
  •       Click “Ok” button.
 
    
    Verify IB Messages Were Posted In Source
  •      Go to PeopleTools > Integration Broker > Service Operations Monitor > Monitoring > Asynchronous Services
  •      In Monitor Overview tab select queue level as Pub Con, Group By Service Operation
  •      Select proper time period
  •      Verify messages for JOBCODE_FULLSYNC service operation
   
  •      If messages are in Error or Timeout state then click on message count.
  •      You will navigate to Publication Contracts tab on the same page.
  •      Click on Details link for timed out or error message
  •      Find out the root cause.
       Verify IB Messages Were Received In Destination
  •     Go to PeopleTools > Integration Broker > Service Operations Monitor > Monitoring > Asynchronous Services
  •       In Monitor Overview tab select queue level as Sub Con, Group By Service Operation  
  •       Select proper time period
  •       Verify messages for JOBCODE_FULLSYNC service operation

     Note: If messages were not received then bounce pubsub servers.

Apr 10, 2014

Phone Number Validation Using Regular Expressions in PeopleSoft

Local JavaObject &oPhoneNumExpression = CreateJavaObject("java.lang.String", "\+{0,1}[0-9\s\-\(\)]+");
Local JavaObject &oPhoneNum = CreateJavaObject("java.lang.String", &PhoneValue);
If &oPhoneNum.matches(&oPhoneNumExpression) = False Then
   MessageBox(0, "", 0, 0, "Enter valid phone number");
End-If;

Regular Expression "\+{0,1}[0-9\s\-\(\)]+"   : It allows a number + in starting and - in the middle of the number.
&PhoneValue : Contains the entered phone number value.