Dayforce Employee Election Model
Model employee elections, limits, and deductions to fit the Ceridian Dayforce Employee Election Import xml specification 55.
Screenshots
TODO
Specifics
Available in Flatmap 20.4 Release
Samples
Path and Instructions
./Model DayforceEmployeeElection55/
./Model DayforceEmployeeElection55/SetValue Filename.scala
./Model DayforceEmployeeElection55/RunModel ElectionImport.scala
./Model DayforceEmployeeElection55/RowModel EmployeeElection.scala
./Model DayforceEmployeeElection55/RowModel EmployeeDeductionBalanceAndArrear.scala
Sample Recipe
git@albert-20.albertlogin.us:ExploreX/explorex-examples-2020.git data-dayforceelection
Specifics
Supported Model Instructions
Set Filename.(txt | scala) |
Row/Run ElectionImport.scala
Row EmployeeElection.scala
Row EmployeeDeductionBalanceAndArrear.scala
Case Classes
case class EmployeeElectionImport ( ElectionImport: ElectionImport )
case class ElectionImport ( SourceIdentifier: Option[String] = None,
ClientXrefCode: String,
_employeeElection: Seq[EmployeeElection] = Seq.empty,
_employeeDeductionBalanceAndArrear: Seq[EmployeeDeductionBalanceAndArrear] = Seq.empty )
case class EmployeeElection ( Employee : Employee )
case class Employee ( EmployeeXrefCode : String,
Election : Election )
case class Election ( EarnDeductType: String, //Deduction, Earning
EarnDeductXrefCode: String,
EffectiveStartDate : DateTime,
EffectiveEndDate: Option[DateTime] = None,
PayeeXrefCode: Option[String] = None,
OrgUnitXrefCode: Option[String] = None,
DeptJobXrefCode: Option[String] = None,
Amount: Option[Double] = None,
PercentValue: Option[Double] = None,
ExpressionCodeName: Option[String] = None,
// The expression parameter code name for the election – if the earning/deduction is configured for expression then this may be provided. If ExpressionValue is provided then this must be provided.
ExpressionValue: Option[Double] = None,
// The expression parameter value for the election – if the earning/deduction is configured for expression then this may be provided. If ExpressionCodeName is provided then this must be provided.
EarnDeductScheduleXrefCode: Option[String] = None,
_limit : Seq[Limit] = Seq.empty,
_payeeParameter : Seq[PayeeParameter] = Seq.empty )
case class Limit ( AccumTypeXrefCode: String,
LimitAmount : Option[Double],
LimitPercent : Option[Double] )
case class PayeeParameter (PayeeParameterXrefCode: String,
ParameterValue : String )
case class EmployeeDeductionBalanceAndArrear( EmployeeXrefCode: String,
_deductionBalance: Seq[DeductionBalance] = Seq.empty,
DeductionArrear : DeductionArrear )
case class DeductionBalance ( Description: Option[String] = None,
DeductionXrefCode: String,
EffectiveStart: DateTime,
BeginningBalanceAmount: Option[Double] = None,
DateEnded: Option[DateTime] = None,
_deductionBalanceTransaction: Seq[DeductionBalanceTransaction] = Seq.empty )
case class DeductionBalanceTransaction( Delta : Double,
Description : Option[String] = None,
TransactionDate : DateTime )
case class DeductionArrear ( Description: Option[String] = None,
DeductionXrefCode: String,
DateOfFirstArrear: Option[DateTime] = None,
DateEnded: Option[DateTime] = None,
_deductionArrearTransaction: Seq[DeductionArrearTransaction] = Seq.empty )
case class DeductionArrearTransaction( Delta: Double,
Description: Option[String] = None,
TransactionDate: Option[DateTime] = None )