private static void RegenerateStatements(PrintParameters pars, List <DetailsResult> statements) { var process = PXGraph.CreateInstance <StatementCycleProcessBO>(); var cycle = process.CyclesList.SelectSingle(pars.StatementCycleId); var customerSelect = new PXSelect <Customer, Where <Customer.bAccountID, Equal <Required <DetailsResult.customerID> > > >(process); int i = 0; List <Customer> customers = new List <Customer>(); foreach (DetailsResult res in statements) { if (ARStatementProcess.CheckForUnprocessedPPD(process, pars.StatementCycleId, pars.StatementDate, res.CustomerID)) { PXFilteredProcessing <DetailsResult, PrintParameters> .SetError(i, new PXSetPropertyException(Messages.UnprocessedPPDExists, PXErrorLevel.RowError)); } else { Customer customer = customerSelect.SelectSingle(res.CustomerID); if (customer != null) { customers.Add(customer); } } i++; } if (cycle == null || customers.Any() == false) { return; } StatementCycleProcessBO.RegenerateStatements(process, cycle, customers); }
public virtual IEnumerable recreateLast(PXAdapter adapter) { ARStatementCycle row = ARStatementCycleRecord.Current; if (row.LastStmtDate != null) { PXLongOperation.StartOperation(this, delegate() { StatementCycleProcessBO.RegenerateLastStatement(new StatementCycleProcessBO(), row); }); } return(adapter.Get()); }
private static void RegenerateStatements(PrintParameters pars, List <DetailsResult> statements) { var process = PXGraph.CreateInstance <StatementCycleProcessBO>(); var cycle = process.CyclesList.SelectSingle(pars.StatementCycleId); var customerSelect = new PXSelect <Customer, Where <Customer.bAccountID, Equal <Required <DetailsResult.customerID> > > >(process); var customers = statements.Select(s => customerSelect.SelectSingle(s.CustomerID)).Where(c => c != null); if (cycle == null || customers == null || customers.Any() == false) { return; } StatementCycleProcessBO.RegenerateStatements(process, cycle, customers); }
public virtual IEnumerable recreateLast(PXAdapter adapter) { ARStatementCycle row = ARStatementCycleRecord.Current; if (row != null) { if (ARStatementProcess.CheckForUnprocessedPPD(this, row.StatementCycleId, row.LastStmtDate, null)) { throw new PXSetPropertyException(Messages.UnprocessedPPDExists); } if (row.LastStmtDate != null) { PXLongOperation.StartOperation(this, delegate() { StatementCycleProcessBO.RegenerateLastStatement(CreateInstance <StatementCycleProcessBO>(), row); }); } } return(adapter.Get()); }