protected virtual IEnumerable GetRecords() { bool ar = true; PXCache cache = this._Graph.Caches[BqlCommand.GetItemType(moduleField)]; string docType = ARDocType.Invoice; if (cache.Current != null) { docType = (string)cache.GetValue(cache.Current, docTypeField.Name); string module = (string)cache.GetValue(cache.Current, moduleField.Name); if (module == BatchModule.AP) { ar = false; } } if (ar) { PXSelectBase <ARInvoice> select = new PXSelectJoin <ARInvoice, InnerJoin <BAccount, On <BAccount.bAccountID, Equal <ARInvoice.customerID> > >, Where <ARInvoice.docType, Equal <Required <ARInvoice.docType> > > >(this._Graph); foreach (PXResult <ARInvoice, BAccount> res in select.Select(docType)) { ARInvoice doc = (ARInvoice)res; BAccount customer = (BAccount)res; string status = null; ARDocStatus.ListAttribute x = new ARDocStatus.ListAttribute(); if (x.ValueLabelDic.ContainsKey(doc.Status)) { status = x.ValueLabelDic[doc.Status]; } DRDocumentRecord record = new DRDocumentRecord(); record.BAccountCD = customer.AcctCD; record.RefNbr = doc.RefNbr; record.Status = status; record.FinPeriodID = doc.FinPeriodID; record.DocType = doc.DocType; record.DocDate = doc.DocDate; record.LocationID = doc.CustomerLocationID; record.CuryOrigDocAmt = doc.CuryOrigDocAmt; record.CuryID = doc.CuryID; yield return(record); } } else { PXSelectBase <APInvoice> select = new PXSelectJoin <APInvoice, InnerJoin <BAccount, On <BAccount.bAccountID, Equal <APInvoice.vendorID> > >, Where <APInvoice.docType, Equal <Required <APInvoice.docType> > > >(this._Graph); foreach (PXResult <APInvoice, BAccount> res in select.Select(docType)) { APInvoice doc = (APInvoice)res; BAccount customer = (BAccount)res; string status = null; APDocStatus.ListAttribute x = new APDocStatus.ListAttribute(); if (x.ValueLabelDic.ContainsKey(doc.Status)) { status = x.ValueLabelDic[doc.Status]; } DRDocumentRecord record = new DRDocumentRecord(); record.BAccountCD = customer.AcctCD; record.RefNbr = doc.RefNbr; record.Status = status; record.FinPeriodID = doc.FinPeriodID; record.DocType = doc.DocType; record.DocDate = doc.DocDate; record.LocationID = doc.VendorLocationID; record.CuryOrigDocAmt = doc.CuryOrigDocAmt; record.CuryID = doc.CuryID; yield return(record); } } }
protected virtual IEnumerable GetRecords() { bool ar = true; PXCache cache = this._Graph.Caches[BqlCommand.GetItemType(moduleField)]; string docType = ARDocType.Invoice; if (cache.Current != null ) { docType = (string)cache.GetValue(cache.Current, docTypeField.Name); string module = (string)cache.GetValue(cache.Current, moduleField.Name); if (module == BatchModule.AP) ar = false; } if (ar) { PXSelectBase<ARInvoice> select = new PXSelectJoin<ARInvoice, InnerJoin<BAccount, On<BAccount.bAccountID, Equal<ARInvoice.customerID>>>, Where<ARInvoice.docType, Equal<Required<ARInvoice.docType>>>>(this._Graph); foreach (PXResult<ARInvoice, BAccount> res in select.Select(docType)) { ARInvoice doc = (ARInvoice)res; BAccount customer = (BAccount)res; string status = null; ARDocStatus.ListAttribute x = new ARDocStatus.ListAttribute(); if (x.ValueLabelDic.ContainsKey(doc.Status)) { status = x.ValueLabelDic[doc.Status]; } DRDocumentRecord record = new DRDocumentRecord(); record.BAccountCD = customer.AcctCD; record.RefNbr = doc.RefNbr; record.Status = status; record.FinPeriodID = doc.FinPeriodID; record.DocType = doc.DocType; record.DocDate = doc.DocDate; record.LocationID = doc.CustomerLocationID; record.CuryOrigDocAmt = doc.CuryOrigDocAmt; record.CuryID = doc.CuryID; yield return record; } } else { PXSelectBase<APInvoice> select = new PXSelectJoin<APInvoice, InnerJoin<BAccount, On<BAccount.bAccountID, Equal<APInvoice.vendorID>>>, Where<APInvoice.docType, Equal<Required<APInvoice.docType>>>>(this._Graph); foreach (PXResult<APInvoice, BAccount> res in select.Select(docType)) { APInvoice doc = (APInvoice)res; BAccount customer = (BAccount)res; string status = null; APDocStatus.ListAttribute x = new APDocStatus.ListAttribute(); if (x.ValueLabelDic.ContainsKey(doc.Status)) { status = x.ValueLabelDic[doc.Status]; } DRDocumentRecord record = new DRDocumentRecord(); record.BAccountCD = customer.AcctCD; record.RefNbr = doc.RefNbr; record.Status = status; record.FinPeriodID = doc.FinPeriodID; record.DocType = doc.DocType; record.DocDate = doc.DocDate; record.LocationID = doc.VendorLocationID; record.CuryOrigDocAmt = doc.CuryOrigDocAmt; record.CuryID = doc.CuryID; yield return record; } } }