Search This Blog

Saturday, March 11, 2023

Cash Advances: Unable to add cash advance

Sometimes, we may see issues related to users reaching out that they are not able to create cash advances in the system. The Employee ID prompt would throw error as Invalid value.

This is due to the fact that the Cash Advance Level setting on the Employee Organization Profile page is set to None. This makes the employee ineligible to create cash advance.

Cash Advance Level:

Travel and Expenses --> Manage Employee Information --> Update Profile

Below is note from peoplebooks for the Cash Advance Level field:

Select Business Unit to indicate that the maximum amount for the business unit applies to the employee. The system displays the amount.

Select Specific Amount to open a new field to input the maximum advance amount authorized for the employee.

Select None if the employee is not authorized for cash advances.








Image Reference: PeopleSoft Expenses 9.1 PeopleBook (oracle.com)

Saturday, June 10, 2017

How to generate XML file from SQR program?

Like any other file, the basic logic to opening a file / writing data and then closing file is same even for XML file generation.

Of-course, the approach followed to implement these basic stuff will be slightly different. Here we need to make use of  xml elements. So thoughtful of time needs to be spent on the design and layout of the XML file.

Approach to design XML file and implement the logic:

Once we are clear with the required information, we should next proceed to implementing the logic.

For instance, let's consider we need to generate XML file which has Address Details of an Employee.

Step 1 would be to first categorize elements. So here we can select Employee as outer element.
Step 2 would be to list out the data elements like here it is Address1,City,State,Country

XML will have to look something like below. 
Note, intentionally excluded the tag - <  in the below example as the below structure auto-converts without tags when viewed online.

?xml version="1.0" encoding="Windows-1252"?>
Employee>
Address>
Address1>"Hitec City"/Address1>
City>"Hyderabad"/City>
State>"TS"/State>
Country>"India"/Country>
/Address>
Employee>

To implement the above logic in SQR, first you need to initialize xml tags.

let $xmlcntrl_begin  = '<'
   let $xmlcntrl_end    = '>'
   let $xmltag_end      = '/'
   let $xmltext_delim   = '"'
   let $xmltag          = ''
   let $xmlcontent      = ''
   let $xmloutput_line  = ''
etc..

Below is sample code to write content.

let $xmloutput_line = $xmlcntrl_begin || $xmltag || $xmlcntrl_end  ||
                               $xmlcontent ||
                               $xmlcntrl_begin || $xmltag_end || $xmltag || $xmlcntrl_end
         write #outputfile  from $xmloutput_line

if we decode above statement it would resolve to something like.

<City>"Hyderabad"</City>

Note: if there are nested elements, ensure the tags are properly closed.

Once the data is written, we need to close XML file.

Execution:
Once the SQR is run , the file will be seen posted in the server path mentioned while opening the file.

Friday, June 9, 2017

BI Publisher: Oracle BI Publisher Tab missing on MS Word 2013

After successful installation of BI Publisher , sometimes we don't see the BI Publisher tab not on
the MS Word doc.

Ensure to check below options:
1. All Microsoft related documents are closed like Word/Excel/Outlook etc.
2. See if BI Publisher is checked under Add ins.
3. Still if above options are of no help, try running below setup from BI Publisher Setup.
   C:\\Program Files (x86)\Oracle\BI Publisher\BI Publisher Desktop\DoNetInstallFiles\Setup


  


 

Monday, May 15, 2017

PS Query: Making use of expression

In PS Query, we have the provision to make use of expression based on the need.

For example, if we need to have uppercase for the city from address record we can make use of expression as shown below. Ensure the expression is marked as field so that the result would come up on the result.



Sunday, May 7, 2017

PeopleSoft: ElasticSearch

This is new search tool being implemented from Peopletools 8.55 and from 8.56 this is the only search tool that will be available.

This is opensource and PeopleSoft will render rich/robust search experience using this tool.
Especially, with large data sets the search experience will be better than the current one.

Being Opensource, customers are encouraged to report/get updates from PeopleSoft as the internal team will look into these and deliver updates to customers. Also there will be other PeopleSoft specific plugins that will be added to the search tool which are needed to implement the elastic search functionality.

Customers can download this from the Oracle Support site and configure and implement the elastic search functionality.


Payroll for North America: W-4 ,W-2 , W-2C Forms

W4 Form:
The W-4 is a tax form used to evaluate an employee’s personal tax situation and calculate the correct amount of federal income tax that should be withheld from his/her pay.
Factors used to determine this amount include family situation (number of children, marriage status), home ownership (buying/selling a house), saving contributions (college, retirement), number of dependents, and employment status.
This form must be completed whenever an employee starts a new job or experiences change in his/her personal or financial situation.


W-2 Form:
It is a federal tax form issued by employers and stating how much an employee was paid in a year.

This is a tax form that employers give to their employees each year to be submitted with the 1040.
It includes wages earned, federal and state taxes withheld, and social security tax information.
Employers are required to provide their employees with this information by January 31st of each year and submit a copy to the Social Security Administration by February 29th.

W-2C Form:
Form W2C is used to make corrections on W2s already issued.
The form is used to make any and all corrections on previously issued W2s from current or past years.
W2C form is prepared by entering both the previously erroneous information and the correct information.

Friday, April 14, 2017

BI Publisher: To continue header onto next page

When we use header in the body of the word document and header is part of table.
To repeat the header on page break, we can make use of the Word document Table Layout properties.

Below is the snapshot.


Sunday, January 29, 2017

Recommendation for using Excel to CI

Excel to CI - is not designed to load data for complex transactions that involves huge data set and also many peoplecode events.
- Especially, when you try to load under these circumstances you may end up seeing certain xml message as No response from server. Login cleared etc.
- Try to load with small chunks of data when the load is data intensive.
- You may need to be aware that server handles these as multiple transactions and chances are that you end up errors sometimes.
- If the need is still to load huge volume of data at once, you may need to go for using File Layout and AE to load the data.

Saturday, October 8, 2016

Oralce: SQL to find the BLANK or TAB character in a string.

Below is the SQL that can be used to identify the BLANK characters or TAB characters present at the end of the string.

SELECT UPPER(ADDRESS1),EMPLID FROM PS_ADDRESSES
WHERE regexp_like(ltrim(UPPER(ADDRESS1)), '[[:space:]]$');

Sunday, May 1, 2016

Oracle SQL: Error while Inserting text containing single apostrophe or single quote

When we try to insert data containing single apostrophe we end with error saying ' missing comma' as shown below.




To overcome this error, we need to use Q[string].
This will indicate Oracle that we have a string that contains single quote which needs to be inserted.

Now, let's do a select to view the result.



Thursday, March 31, 2016

SQL to find the Bundle applied on the current version.

SELECT A.UPDATE_ID, A.DESCR, A.DTTM_IMPORTED, A.FIXOPRID, A.APPLYOPRID, A.PRODUCT_LINE, A.RELEASEDTTM, A.RELEASELABEL, A.MAINTLOGTYPE, A.DESCRLONG FROM PS_MAINTENANCE_LOG A WHERE upper(A.DESCRLONG) like '%BUNDLE%' ORDER BY 2 DESC;

Saturday, March 19, 2016

ePerformance: Ability to Control the Display List of Rating Model Description.


In ePerformance rating values are shown in alphabetical order in the dropdown list. This is peopletools default functionality to display the values.

Not always the default rating order matches with the user defined order. Like suppose, users can come up with a rating which is not in alphabetical order.

In such case, we can use below code to display the custom sort order which would match the user defined order.

Below is the code which will help in sorting the rating as per user defined order:

/* Declarations */
Local SQL &SQL;
Local string &type, &descr;
Local string &rating_model;
Local Rowset &Xlat;

/* Field which shows the dropdown list on the page */
&FLD = GetRecord(Record.DERIVED_EP_ADVW).GetField(Field.REVIEW_RATING);
&rating_model = DERIVED_EP_ADVW.RATING_MODEL.Value;

/* Clear the drop down list */
&FLD.ClearDropDownList();

/* Create Rowset that should be filled with Rating values */
&Xlat = CreateRowset(Record.REVW_RATING_TBL);
&Xlat.Flush();

/* Code to fill the rowset */
&Xlat.Fill("WHERE RATING_MODEL = :1 and effdt = (select max(R1.EFFDT) from PS_REVW_RATING_TBL R1 WHERE R1.RATING_MODEL = RATING_MODEL AND R1.EFFDT <= SYSDATE ) order by EP_RATING DESC ", &rating_model);

/* code to fill the dropdown list */
&j = &Xlat.ActiveRowCount + 1;
For &i = 1 To &Xlat.ActiveRowCount
   &Value = &Xlat.GetRow(&i).REVW_RATING_TBL.REVIEW_RATING.Value;
   &descr = &Xlat.GetRow(&i).REVW_RATING_TBL.DESCR.Value;
   DERIVED_EP_ADVW.REVIEW_RATING.AddDropDownItem(&Value, Rept(Char(9), &j - &i) | &descr);
End-For;

Wednesday, March 9, 2016

File Layout : How to edit the field starting position for csv file

During development, we may come across requirements where we need to add fields to the file layout.
For file layouts of type CSV, we might have faced issues adding the length attribute for each field in the file layout.

Say , File Layout, accepts maximum 1000 characters in length and as of now there are 10 fields which take upto 950 characters.
If you want to add two new fields 10 char each , then the last field should start at position (950 + length of prior field).
At this stage, the starting position is shown as 1 and is Read Only. Thus we end up unsuccessful in editing the field.

To overcome this, we can change the type of file to TXT and then enter the start position. After that go back to File Type and revert back as CSV and save.

This should now show the new fields with new starting position.

Friday, February 12, 2016

Benefits Tables

Benefit Tables:

PS_DEPENDENT_VW -- Contains information related to Dependent Beneficiaries.
PS_BAS_ACTIVITY    -- Lists all events triggered for an Employee.



Thursday, January 7, 2016

Application Engine: Dynamic Message Catalog

Usually , we use Message Catalog to display Warning/Error Messages. Sometimes, due to requirements we are tend to show dynamic messages.

For example, if an Employee applies for a leave, we can show a soft message saying ' Leave approval request sent to Ram,K' assuming 'Ram,K' is the supervisor of the Employee. For other Employee, it could be different supervisor name.

To make use of dynamic message, we use %bind variables in the Message Catalog.

Now in our current post, we will see how to invoke Dynamic messages from with in Application Engine program.

We may come across a requirement, where we need SQL trace only on certain important SQLs.
In general, we set the SQL trace setting in AE process definition which generates trace for all SQLs.

To cater the requirement, we can make use of dynamic messages.
 %bind from Message Catalog is replaced with the data from Parameters section.

Below is the snapshot.

From AE , the Message Catalog uses the Parameters


Message Catalog Entry:

 So the End message could look something like " A total of 1200 rows were inserted from PS_JOB into table PS_REC1_STG


Tuesday, August 25, 2015

Time And Labor: Some useful Info -- Part 1

Time And Labor:
As the name itself suggests, it captures the time consumed for each of the efforts. Based on hourly rate, the employee is paid through payroll.

There are two types of noting time in PS.
1. Punch time -- Captures Time IN and Time OUT. say Lunch 12:30 pm to 1:30 pm
2. Elapse time -- Captures time in periods. say 8 hours etc.

Base Benefits: Some Useful Info -- Part 1

Where do we set Age limit for Dependents in Benefits Module?

Let's consider a scenario where an Employee enrolls dependents into a plan ,say Health Care Plan.
And as per the insurance plan, only dependents upto 25 years are covered.


Setup HRMS --> Product Related --> Base Benefits --> Rates and Rules --> Dependent Rules Table.

Where do we setup to exclude disabled from Age limit for Dependents in Benefits Module?
Setup HRMS --> Product Related --> Base Benefits --> Rates and Rules --> Dependent Rules Table.

Saturday, August 8, 2015

Core HR : Some useful info -- Part 1

Action Stat Table:
 We have come across tables such as ACTION_TBL (Action Setup Table) and ACTN_REASON_TBL (Action/Action Reason Combinations). There is one another table, ACTION_STAT_TBL where we can see the list of all possible Action that can be applied on a Job row.

Though it contains both the delivered/custom actions, we can distinguish them using the value stored in the SYSTEM_DATA_FLG.
Application Version: 9.1

Payroll Status field on Job Data:
As we know the importance of the payroll status filed, which is used by Payroll. The field behind the scenes used is JOB.EMPL_STATUS !!

Some known values for EMPL_STATUS
A - Active
L - Leave
P - Leave with Pay
S - Suspended
R - Retired
T - Terminated
etc..

Next question is what is the field used for HR Status? .....
It's nothing but HR_STATUS !!


Thursday, July 16, 2015

Time and Labor Tables


TL_EMPL_DATA
Contains high level data of an employee like Workgroup, Taskgroup, Time Reporter Status.

TL_RPTD_TIME
Extracts employee time reported data.
Both the elapsed and punch type data is stored in this table.
TL_QUANTITY is field which stores the reported hours data.
DUR field contains Date value.

Thursday, July 9, 2015

File Layout: Previewing Input Data

Some useful information related to previewing data in File Layouts.

1. Preview file data is available only for FIXED and CSV file layouts.
2. With an XML file, you cannot preview the data

The preview data appears only if you selected an import file, if the file format matches the format specified for the file layout definition, and if it contains a file record ID that matches the file record ID of the selected segment.

Source referred from PeopleTools 8.52