Assuming that one has to read all the values from a MainAccount '20151026' where the Employee dimension 'D6_Employee' = 'E0028'
Below is a sample job for the same
static void Job10(Args _args)
{
GeneralJournalAccountEntry GJAE;
GeneralJournalEntry GJE;
FiscalCalendarPeriod FCP;
SubledgerVoucherGeneralJournalEntry SLVGJE;
DimensionAttributeValueGroupCombination DAVGC;
DimensionAttributeLevelValue DALV;
DimensionAttributeValue DAV;
DimensionAttribute DA;
SPYAmount claimAmount;
HcmPersonnelNumberId personnelNumber = HcmWorker::find(5637146086).PersonnelNumber;
while select *
from GJAE
join GJE
where GJE.RecId == GJAE.GeneralJournalEntry
&& GJE.AccountingDate >= mkDate(1,1,2017)
&& GJE.AccountingDate <= mkDate(31,1,2017)
&& GJAE.MainAccount == MainAccount::findByMainAccountId('20151026').RecId
join SLVGJE
where SLVGJE.GeneralJournalEntry == GJE.RecId
&& SLVGJE.VoucherDataAreaId == curext()
//reading the individual segments of the entry
join DAVGC
where DAVGC.DimensionAttributeValueCombination == GJAE.ledgerDimension
join DALV
where DALV.DimensionAttributeValueGroup == DAVGC.DimensionAttributeValueGroup
&& DALV.DisplayValue == personnelNumber
join DAV
where DAV.RECID == DALV.DimensionAttributeValue
join DA
where DA.RecID == DAV.DimensionAttribute
&& DA.Name == 'D6_Employee'
{
claimAmount += GJAE.AccountingCurrencyAmount;
}
}
Below is a sample job for the same
static void Job10(Args _args)
{
GeneralJournalAccountEntry GJAE;
GeneralJournalEntry GJE;
FiscalCalendarPeriod FCP;
SubledgerVoucherGeneralJournalEntry SLVGJE;
DimensionAttributeValueGroupCombination DAVGC;
DimensionAttributeLevelValue DALV;
DimensionAttributeValue DAV;
DimensionAttribute DA;
SPYAmount claimAmount;
HcmPersonnelNumberId personnelNumber = HcmWorker::find(5637146086).PersonnelNumber;
while select *
from GJAE
join GJE
where GJE.RecId == GJAE.GeneralJournalEntry
&& GJE.AccountingDate >= mkDate(1,1,2017)
&& GJE.AccountingDate <= mkDate(31,1,2017)
&& GJAE.MainAccount == MainAccount::findByMainAccountId('20151026').RecId
join SLVGJE
where SLVGJE.GeneralJournalEntry == GJE.RecId
&& SLVGJE.VoucherDataAreaId == curext()
//reading the individual segments of the entry
join DAVGC
where DAVGC.DimensionAttributeValueCombination == GJAE.ledgerDimension
join DALV
where DALV.DimensionAttributeValueGroup == DAVGC.DimensionAttributeValueGroup
&& DALV.DisplayValue == personnelNumber
join DAV
where DAV.RECID == DALV.DimensionAttributeValue
join DA
where DA.RecID == DAV.DimensionAttribute
&& DA.Name == 'D6_Employee'
{
claimAmount += GJAE.AccountingCurrencyAmount;
}
}