class PurchaseOrderLinesDP extends SRSReportDataProviderBase
{
AEIPurchaseOrderLinesTmp
purchaseOrderLinesTmp;
TmpSysQuery tmpSysQuery;
}
[SRSReportDataSetAttribute(tableStr(AEIPurchaseOrderLinesTmp))]
public PurchaseOrderLinesTmp
getPurchaseOrderLinesTmp()
{
select purchaseOrderLinesTmp;
return purchaseOrderLinesTmp;
}
[SysEntryPointAttribute]
public void processReport()
{
Query
query;
QueryRun
queryRun;
PurchTable
purchTable;
PurchLine
purchLine;
EcoResCategory
ecoResCategory;
VendPackingSlipTrans
vendPackingSlipTrans;
VendPackingSlipJour
vendPackingSlipJour;
AEGAnalysisCodeView analysisView;
AEGOlapDefaultDimensionFramework
defaultDimensionView;
query =
this.parmQuery();
queryRun = new QueryRun(query);
tmpSysQuery =
AEISRSDynamicQuery::rangesToTmpSysQuery(this.parmQuery());
while(queryRun.next())
{
purchTable =
queryRun.get(tableNum(PurchTable));
purchLine =
queryRun.get(tableNum(PurchLine));
ecoResCategory = queryRun.get(tableNum(EcoResCategory));
purchaseOrderLinesTmp.clear();
select
firstOnly maxOf(AnalysisCodeKey) from
defaultDimensionView
where defaultDimensionView.defaultDimension == purchLine.DefaultDimension;
if(defaultDimensionView.AnalysisCodeKey
!= 0)
{
select
firstOnly CodeNumber from analysisView
where
analysisView.RecId == defaultDimensionView.AnalysisCodeKey;
}
purchaseOrderLinesTmp.PurchaseOrder = purchTable.PurchId;
purchaseOrderLinesTmp.SupplierAccount = purchTable.OrderAccount;
purchaseOrderLinesTmp.SupplierName = purchTable.PurchName;
purchaseOrderLinesTmp.LineNumber = purchLine.LineNumber;
purchaseOrderLinesTmp.ProcurementCategory = ecoResCategory.Name;
purchaseOrderLinesTmp.Description = purchLine.Name;
purchaseOrderLinesTmp.Currency = purchLine.CurrencyCode;
purchaseOrderLinesTmp.LineStatus = purchLine.PurchStatus;
purchaseOrderLinesTmp.UnitPrice = purchLine.PurchPrice;
purchaseOrderLinesTmp.Quantity = purchLine.PurchQty;
purchaseOrderLinesTmp.LineAmount = purchLine.LineAmount;
purchaseOrderLinesTmp.ProjId = purchLine.ProjId;
purchaseOrderLinesTmp.A_Costcentre =
AEGFunctions::getFinancialDimensionDepartment(purchLine.DefaultDimension).Value;
purchaseOrderLinesTmp. AAAA =
AEGFunctions::getFinancialDimensionProfitCentreId(purchLine.DefaultDimension);
purchaseOrderLinesTmp. BBBB = AEGFunctions::getFinancialDimensionClientId(purchLine.DefaultDimension);
purchaseOrderLinesTmp.CCCC =
AEGFunctions::getFinancialDimensionProjectId(purchLine.DefaultDimension);
purchaseOrderLinesTmp.DDDD =
AEGFunctions::getFinancialDimensionServiceSegmentId(purchLine.DefaultDimension);
purchaseOrderLinesTmp.DDDDD =
AEGFunctions::getFinancialDimensionChannelId(purchLine.DefaultDimension);
purchaseOrderLinesTmp.EEEEEEEE =
AEGFunctions::getFinancialDimensionVendorId(purchLine.DefaultDimension);
purchaseOrderLinesTmp.FFFFFFF = analysisView.CodeNumber;
purchaseOrderLinesTmp.SalesTaxGroup = purchLine.TaxGroup;
purchaseOrderLinesTmp.ItemSalesTaxGroup = purchLine.TaxItemGroup;
select
sum(ValueMST) from vendPackingSlipTrans
where purchTable.PurchId == vendPackingSlipTrans.OrigPurchid
&& purchLine.LineNumber ==
vendPackingSlipTrans.PurchaseLineLineNumber;
purchaseOrderLinesTmp.InvoiceRemainder
= vendPackingSlipTrans.ValueMST;
select
firstonly Remain from vendPackingSlipTrans
where purchTable.PurchId == vendPackingSlipTrans.OrigPurchid
&& purchLine.LineNumber ==
vendPackingSlipTrans.PurchaseLineLineNumber
join
RecId from vendPackingSlipJour
order
by vendPackingSlipJour.DeliveryDate Desc
where vendPackingSlipTrans.VendPackingSlipJour ==
vendPackingSlipJour.RecId;
purchaseOrderLinesTmp.DeliveryRemainder
= vendPackingSlipTrans.Remain;
purchaseOrderLinesTmp.insert();
}
}
No comments:
Post a Comment