public InfoInvoiceSum calcSlipSum(DataSet pDataSet) { DataTable pTabSTLINE = pDataSet.Tables[TableSTLINE.TABLE]; DataTable pTabINVOICE = pDataSet.Tables[TableINVOICE.TABLE]; InfoInvoiceSum infoSum = new InfoInvoiceSum(); for (int i = 0; i < pTabSTLINE.Rows.Count; ++i) { DataRow row = pTabSTLINE.Rows[i]; if (isUsedRow(row) && !ToolRow.isDeleted(row)) { if (ToolStockLine.isLineMaterial(row)) { double tot = getLineRealTotal(row); double totNet = getLineNetTotal(row); infoSum.sumOfTotal += tot; infoSum.sumOfLocDisc += (tot - totNet); } if (ToolStockLine.isLinePromotion(row)) { double tot = getLineRealTotal(row); infoSum.sumOfLocPromo += tot; } } } double gDisc = (double)ToolColumn.getColumnLastValue(pTabINVOICE, TableINVOICE.DISCPER, 0.0); infoSum.sumOfGlobDisc = (infoSum.sumOfTotal - infoSum.sumOfLocDisc) * (gDisc / 100); return(infoSum); }
protected virtual void distributeDocumentBalance(InfoInvoiceSum infoSum, DataTable tab) { ToolColumn.setColumnValue(tab, TableINVOICE.ADDDISCOUNTS, infoSum.sumOfGlobDisc); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALDISCOUNTS, infoSum.sumOfLocDisc + infoSum.sumOfGlobDisc + infoSum.sumOfLocPromo + infoSum.sumOfGlobPromo); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALDISCOUNTED, infoSum.sumOfTotal - infoSum.sumOfLocDisc); ToolColumn.setColumnValue(tab, TableINVOICE.ADDEXPENSES, infoSum.sumOfGlobSurch); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALEXPENSES, infoSum.sumOfLocSurch + infoSum.sumOfGlobSurch); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALDEPOZITO, 0); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALPROMOTIONS, infoSum.sumOfLocPromo + infoSum.sumOfGlobPromo); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALVAT, infoSum.sumOfLocVAT + infoSum.sumOfGlobVAT); ToolColumn.setColumnValue(tab, TableINVOICE.GROSSTOTAL, infoSum.sumOfTotal + infoSum.sumOfLocPromo + infoSum.sumOfGlobPromo); ToolColumn.setColumnValue(tab, TableINVOICE.NETTOTAL, infoSum.sumOfTotal - (infoSum.sumOfGlobDisc + infoSum.sumOfLocDisc) + (infoSum.sumOfGlobSurch + infoSum.sumOfLocSurch) + (infoSum.sumOfLocVAT + infoSum.sumOfGlobVAT) + (infoSum.sumOfLocTax + infoSum.sumOfGlobTax)); ToolColumn.setColumnValue(tab, TableINVOICE.TOTALADDTAX, infoSum.sumOfLocTax + infoSum.sumOfGlobTax); }
protected virtual void distributeDocumentBalance() { InfoInvoiceSum infoSum = calcSlipSum(getDataSet()); distributeDocumentBalance(infoSum, getDataSet().Tables[TableINVOICE.TABLE]); }