How to enter Direct Salary for New Hires

I hear that this feature is coming out soon from Oracle. However, I put together this video to show you how you can implement this in your workforce applications today.

It’s fairly simple, and it may trigger ideas for other customizations to your application.

Below is the formula modification to Basic Salary that I discuss in the video.

 

IF(@ismbr(@relative(“YearTotal”,0)))
IF(“OWP_Status”->”No Property” == [OWP_Status.Active] OR “OWP_Status”->”No Property” == [OWP_Status.Maternity])

/*Is there data in the Manual input Current Yearlevel*/
IF(“OWP_Salary Basis”->”BegBalance”->”Salary_Input” <> #MISSING AND “OWP_Value”->”BegBalance”->”Salary_Input” <>#MISSING)

IF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==2 ) /* Weekly */
“OWP_Expense Amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*52)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==3) /* Annual */
“OWP_Expense amount”=((“OWP_Value”->”BegBalance”->”Salary_Input” )* [TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==4 ) /* Bi-Weekly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*26)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF(“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==1) /* Hourly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*52*”Hours per Week”->”No Property”)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF(“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==5) /* Monthly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*12)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==6 ) /* Bi-Monthly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*6)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==7 ) /* Quarterly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*4)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==8 ) /* Semi-Annualy */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*2)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”==9 ) /* Semi-monthly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input” )*24)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSE
“OWP_Expense amount”=#MISSING;
ENDIF;

ELSE
/*Is there data in the Manual input no year level*/

IF(“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year” <> #MISSING AND “OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” <>#MISSING)

IF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==2 ) /* Weekly */
“OWP_Expense Amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*52)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==3) /* Annual */
“OWP_Expense amount”=((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )* [TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==4 ) /* Bi-Weekly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*26)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF(“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==1) /* Hourly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*52*”Hours per Week”->”No Property”)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF(“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==5) /* Monthly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*12)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==6 ) /* Bi-Monthly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*6)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==7 ) /* Quarterly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*4)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==8 ) /* Semi-Annualy */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*2)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”->”Salary_Input”->”No Year”==9 ) /* Semi-monthly */
“OWP_Expense amount”=(((“OWP_Value”->”BegBalance”->”Salary_Input”->”No Year” )*24)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSE
“OWP_Expense amount”=#MISSING;
ENDIF;

ELSE
/*Regular Calc*/
IF (“OWP_Salary Basis”->”BegBalance”==2 ) /* Weekly */
“OWP_Expense Amount”=(((“OWP_Value”)*52)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”==3) /* Annual */
“OWP_Expense amount”=((“OWP_Value”)* [TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”==4 ) /* Bi-Weekly */
“OWP_Expense amount”=(((“OWP_Value”)*26)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF(“OWP_Salary Basis”->”BegBalance”==1) /* Hourly */
“OWP_Expense amount”=(((“OWP_Value”)*52*”Hours per Week”->”No Property”)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF(“OWP_Salary Basis”->”BegBalance”==5) /* Monthly */
“OWP_Expense amount”=(((“OWP_Value”)*12)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”==6 ) /* Bi-Monthly */
“OWP_Expense amount”=(((“OWP_Value”)*6)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”==7 ) /* Quarterly */
“OWP_Expense amount”=(((“OWP_Value”)*4)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”==8 ) /* Semi-Annualy */
“OWP_Expense amount”=(((“OWP_Value”)*2)*[TimeBalanceSpread])*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSEIF (“OWP_Salary Basis”->”BegBalance”==9 ) /* Semi-monthly */
“OWP_Expense amount”=(((“OWP_Value”)*24)/”NumPeriods”)*(“OWP_FTE”->”No Property” – “OWP_Reconciled FTE”->”No Property”)*”OWP_Partial Payment Factor”->”No Property”;
ELSE
“OWP_Expense amount”=#MISSING;
ENDIF;

ENDIF;

ENDIF;

IF(“Yr-Index” > “Yr-Index”->&OEP_PlanStartYr)
“OWP_Expense Amount” = “OWP_Expense Amount” + @SUMRANGE(@MEMBER(@HspNthMbr(@NAME(@CHILDREN(“Q4″)),3))->”OWP_Merit”->”OWP_Expense amount”,@CURRMBRRANGE(Years,LEV,0,,-1)) + @SUMRANGE(“OWP_Transferred Salary”->”BegBalance”->”OWP_Expense amount”,@CURRMBRRANGE(Years,LEV,0,,0));
ENDIF
“OWP_Gross Earnings”=”OWP_Expense amount”;
“OWP_Taxable Compensation”=”OWP_Expense amount”;
ELSE
“OWP_Expense amount”=#MISSING;
ENDIF;
ENDIF;