Pay roll Earning Statement Integrations
class AifPayRollFeedsService
{
}
[SysEntryPointAttribute(true), AifCollectionTypeAttribute('_PayRoll',Types::Class)]
public void PayRollFeeds1(AIFPayRollContract _PayRoll)
{
PayrollEarningStatement payrollEarningStatement;
str ErrorMessage;
HcmEmployment HcmEmployment;
Dirpersonname dirpersonname;
HcmWorker hcmWorker;
PayrollPayPeriod payrollPayPeriod;
PayrollPayCycle payrollPayCycle;
DirPerson dirPerson;
DirPartyTable dirPartyTable;
SourceDocumentHeader SourceDocumentHeader;
PayrollEarningStatementLine payrollEarningStatementLine;
PayrollEarningCode payrollEarningCode;
PayrollEarningQuantity Quantity;
HcmWorkerRecId Worker;
TransDate EarningDate;
PayrollEarningCodeRecId EarningcodeRecid;
PayrollEarningCodeId Earningcode;
try
{
changeCompany (_PayRoll.Company())
//ErrorMessage = this.ValidateTimeSheet(_TimeSheets);
if(ErrorMessage != "")
{
throw Error(strFmtLB(ErrorMessage));
}
else
{
ttsBegin;
payrollEarningStatement = payrollEarningStatement::findByDocumentNumber(_PayRoll.DocumentNumber(),true);
if(!payrollEarningStatement.RecId)
{
payrollEarningStatement.Note = _PayRoll.Note();
payrollEarningStatement.Worker = hcmWorker::findByPersonnelNumber(_PayRoll.PersonnelNumber()).RecId;
PayrollPayPeriod.PayCycle = PayrollPayCycle::findByPayCycle(_PayRoll.PayCycleId()).RecId;
PayrollPayPeriod.PeriodStartDate = _PayRoll.PeriodStartDate();
PayrollPayPeriod.PeriodEndDate = _PayRoll.PeriodEndDate();
payrollEarningStatement.PayPeriod = PayrollPayPeriod::find(_PayRoll.PayPeriod()).RecId;
payrollEarningStatement.DocumentNumber = _PayRoll.DocumentNumber();
payrollEarningStatement.insert();
}
if(!payrollEarningStatementLine.RecId)
{
payrollEarningStatementLine.EarningStatement = payrollEarningStatement.RecId;
payrollEarningStatementLine.EarningDate = _PayRoll.EarningDate();
payrollEarningStatementLine.EarningRate = _PayRoll.EarningRate();
payrollEarningStatementLine.Quantity = _PayRoll. Quantity();
payrollEarningStatementLine.AccountingCurrencyAmount = _PayRoll.AccountingCurrencyAmount();
payrollEarningStatementLine.EarningCode = payrollEarningCode::findByEarningCode(_PayRoll.EarningCode()).RecId;
//payrollEarningStatementLine.Position = HcmPosition::findByPosition(_PayRoll.PositionId()).RecId;
payrollEarningStatementLine.Position = HcmPosition::findByPosition(_PayRoll.PositionId()).RecId;
//PayrollWorkerTaxRegion.TaxRegion = PayrollTaxRegion::findByLogisticsLocation(_PayRoll.LogisticsLocation()).RecId;
// payrollEarningStatementLine.WorkerTaxRegion = PayrollWorkerTaxRegion::findByWorkerTaxRegion(_PayRoll.TaxRegion()).RecId;
//payrollEarningStatementLine.WorkerTaxRegion = PayrollWorkerTaxRegion::findByWorkerTaxRegion(_PayRoll.Worker(),_PayRoll.TaxRegion()).RecId;
payrollEarningCode.QuantityUnit = PayrollQuantityUnit::Pieces;
payrollEarningCode.Description = _PayRoll.Description();
payrollEarningStatementLine.PaymentStatus = PayrollPaymentProcessingStatus::Processed;
payrollEarningStatementLine.GenerationSource = PayrollGenerationSource::UserEntry;
payrollEarningStatementLine.insert();
}
}
ttsCommit;
}
//}
catch (Exception::Error)
{
ttsAbort;
throw Exception::Error;
}
}
callling job
static void Job_Payroll(Args _args)
{
AIFPayRollContract _AIFPayRollContract = new AIFPayRollContract();
AifPayRollFeedsService _AifPayRollFeedsService = new AifPayRollFeedsService();
_AIFPayRollContract.DocumentNumber('DRC-00000002');
_AIFPayRollContract.SourceRelationType( 45812341);
_AIFPayRollContract.Note("dfs");
_AIFPayRollContract.TypeEnumName("sdafsf134");
_AIFPayRollContract.TypeEnumValue(45871234);
_AIFPayRollContract.Description('Regular');
_AIFPayRollContract.PayCycleId("m");
// _AIFPayRollContract.QuantityUnit(PayrollQuantityUnit::Each);
_AIFPayRollContract.PersonnelNumber("A0045");
_AIFPayRollContract.PeriodStartDate(5\1\2017);
_AIFPayRollContract.PeriodEndDate(5\3\2017);
// Line
_AIFPayRollContract.EarningDate(5\3\2017);
_AIFPayRollContract.EarningRate (345.00);
_AIFPayRollContract.Quantity(345);
_AIFPayRollContract.EarningCode("Regular");
_AIFPayRollContract.PositionId("000493");
_AIFPayRollContract.WorkerTaxRegion("AK - Fairbanks");
_AIFPayRollContract.AccountingCurrencyAmount(147);
_AIFPayRollContract.Company("DRC");
_AifPayRollFeedsService.PayRollFeeds1(_AIFPayRollContract);
// _AifPayRollFeedsService.PayRollFeeds(_AIFPayRollContract);
info(_AIFPayRollContract.DocumentNumber());
}
class AifPayRollFeedsService
{
}
[SysEntryPointAttribute(true), AifCollectionTypeAttribute('_PayRoll',Types::Class)]
public void PayRollFeeds1(AIFPayRollContract _PayRoll)
{
PayrollEarningStatement payrollEarningStatement;
str ErrorMessage;
HcmEmployment HcmEmployment;
Dirpersonname dirpersonname;
HcmWorker hcmWorker;
PayrollPayPeriod payrollPayPeriod;
PayrollPayCycle payrollPayCycle;
DirPerson dirPerson;
DirPartyTable dirPartyTable;
SourceDocumentHeader SourceDocumentHeader;
PayrollEarningStatementLine payrollEarningStatementLine;
PayrollEarningCode payrollEarningCode;
PayrollEarningQuantity Quantity;
HcmWorkerRecId Worker;
TransDate EarningDate;
PayrollEarningCodeRecId EarningcodeRecid;
PayrollEarningCodeId Earningcode;
try
{
changeCompany (_PayRoll.Company())
//ErrorMessage = this.ValidateTimeSheet(_TimeSheets);
if(ErrorMessage != "")
{
throw Error(strFmtLB(ErrorMessage));
}
else
{
ttsBegin;
payrollEarningStatement = payrollEarningStatement::findByDocumentNumber(_PayRoll.DocumentNumber(),true);
if(!payrollEarningStatement.RecId)
{
payrollEarningStatement.Note = _PayRoll.Note();
payrollEarningStatement.Worker = hcmWorker::findByPersonnelNumber(_PayRoll.PersonnelNumber()).RecId;
PayrollPayPeriod.PayCycle = PayrollPayCycle::findByPayCycle(_PayRoll.PayCycleId()).RecId;
PayrollPayPeriod.PeriodStartDate = _PayRoll.PeriodStartDate();
PayrollPayPeriod.PeriodEndDate = _PayRoll.PeriodEndDate();
payrollEarningStatement.PayPeriod = PayrollPayPeriod::find(_PayRoll.PayPeriod()).RecId;
payrollEarningStatement.DocumentNumber = _PayRoll.DocumentNumber();
payrollEarningStatement.insert();
}
if(!payrollEarningStatementLine.RecId)
{
payrollEarningStatementLine.EarningStatement = payrollEarningStatement.RecId;
payrollEarningStatementLine.EarningDate = _PayRoll.EarningDate();
payrollEarningStatementLine.EarningRate = _PayRoll.EarningRate();
payrollEarningStatementLine.Quantity = _PayRoll. Quantity();
payrollEarningStatementLine.AccountingCurrencyAmount = _PayRoll.AccountingCurrencyAmount();
payrollEarningStatementLine.EarningCode = payrollEarningCode::findByEarningCode(_PayRoll.EarningCode()).RecId;
//payrollEarningStatementLine.Position = HcmPosition::findByPosition(_PayRoll.PositionId()).RecId;
payrollEarningStatementLine.Position = HcmPosition::findByPosition(_PayRoll.PositionId()).RecId;
//PayrollWorkerTaxRegion.TaxRegion = PayrollTaxRegion::findByLogisticsLocation(_PayRoll.LogisticsLocation()).RecId;
// payrollEarningStatementLine.WorkerTaxRegion = PayrollWorkerTaxRegion::findByWorkerTaxRegion(_PayRoll.TaxRegion()).RecId;
//payrollEarningStatementLine.WorkerTaxRegion = PayrollWorkerTaxRegion::findByWorkerTaxRegion(_PayRoll.Worker(),_PayRoll.TaxRegion()).RecId;
payrollEarningCode.QuantityUnit = PayrollQuantityUnit::Pieces;
payrollEarningCode.Description = _PayRoll.Description();
payrollEarningStatementLine.PaymentStatus = PayrollPaymentProcessingStatus::Processed;
payrollEarningStatementLine.GenerationSource = PayrollGenerationSource::UserEntry;
payrollEarningStatementLine.insert();
}
}
ttsCommit;
}
//}
catch (Exception::Error)
{
ttsAbort;
throw Exception::Error;
}
}
callling job
static void Job_Payroll(Args _args)
{
AIFPayRollContract _AIFPayRollContract = new AIFPayRollContract();
AifPayRollFeedsService _AifPayRollFeedsService = new AifPayRollFeedsService();
_AIFPayRollContract.DocumentNumber('DRC-00000002');
_AIFPayRollContract.SourceRelationType( 45812341);
_AIFPayRollContract.Note("dfs");
_AIFPayRollContract.TypeEnumName("sdafsf134");
_AIFPayRollContract.TypeEnumValue(45871234);
_AIFPayRollContract.Description('Regular');
_AIFPayRollContract.PayCycleId("m");
// _AIFPayRollContract.QuantityUnit(PayrollQuantityUnit::Each);
_AIFPayRollContract.PersonnelNumber("A0045");
_AIFPayRollContract.PeriodStartDate(5\1\2017);
_AIFPayRollContract.PeriodEndDate(5\3\2017);
// Line
_AIFPayRollContract.EarningDate(5\3\2017);
_AIFPayRollContract.EarningRate (345.00);
_AIFPayRollContract.Quantity(345);
_AIFPayRollContract.EarningCode("Regular");
_AIFPayRollContract.PositionId("000493");
_AIFPayRollContract.WorkerTaxRegion("AK - Fairbanks");
_AIFPayRollContract.AccountingCurrencyAmount(147);
_AIFPayRollContract.Company("DRC");
_AifPayRollFeedsService.PayRollFeeds1(_AIFPayRollContract);
// _AifPayRollFeedsService.PayRollFeeds(_AIFPayRollContract);
info(_AIFPayRollContract.DocumentNumber());
}
No comments:
Post a Comment