public DataRow[] get(DataRow row) { DataRow[] rows = new DataRow[0]; DataTable table = row.Table; // if (row != null) { // if (row.RowState != DataRowState.Deleted) for (int i = 0; i < table.Rows.Count; ++i) { DataRow locRow = table.Rows[i]; if (locRow.RowState != DataRowState.Deleted) { if ((!ToolStockLine.isLineStlineGlobal(locRow)) && ToolStockLine.isLineMonetary(locRow)) { if (rows == null) { rows = new DataRow[] { locRow } } } } ; else { rows = ToolArray.resize <DataRow>(rows, rows.Length + 1); rows[rows.Length - 1] = locRow; } }
public DataRow[] get(DataRow row) { DataRow[] rows = new DataRow[0]; DataTable table = row.Table; // if (row != null && row.RowState != DataRowState.Deleted) { if (!ToolStockLine.isLineStlineGlobal(row)) { if (ToolStockLine.isLinePureMoney(row)) { for (int i = table.Rows.IndexOf(row) - 1; i >= 0; --i) { DataRow locRow = table.Rows[i]; if (locRow.RowState != DataRowState.Deleted) { if (ToolStockLine.isLineMonetary(locRow) && (!ToolStockLine.isLineStlineGlobal(locRow))) { rows = new DataRow[] { locRow }; break; } } } } else if (ToolStockLine.isLineMonetary(row)) { rows = new DataRow[] { row }; } } } return(rows); }
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 tableSTLINEColumnChanged(object sender, DataColumnChangeEventArgs e) { DataTable tab = (DataTable)sender; DataSet dataSet = tab.DataSet; if (e.Row.RowState != DataRowState.Detached) { switch (e.Column.ColumnName) { case TableSTLINE.LINETYPE: ToolCell.set(e.Row, TableSTLINE.DISCPER, (double)(ToolStockLine.isLinePromotion(e.Row) ? 100 : 0)); break; case TableSTLINE.DISCPER: if (ToolStockLine.isLinePromotion(e.Row)) { ToolCell.set(e.Row, TableSTLINE.DISCPER, (double)100); } break; case TableSTLINE.AMOUNT: case TableSTLINE.PRICE: case TableSTLINE.TOTAL: break; } } }
public bool check(DataRow row) { if ( ToolStockLine.isLineStlineGlobal(row) ) { return(true); } return(false); }
public bool check(DataRow row) { if ( ToolStockLine.isLineDeposit(row) || ToolStockLine.isLineMaterial(row) || ToolStockLine.isLineMixed(row) || ToolStockLine.isLinePromotion(row) || ToolStockLine.isLineService(row) ) { return(true); } return(false); }
public DataRow[] get(DataRow row) { DataRow[] rows = new DataRow[0]; DataTable table = row.Table; // if (row != null && row.RowState != DataRowState.Deleted) { if (!ToolStockLine.isLineStlineGlobal(row)) { if (ToolStockLine.isLineMonetary(row)) { for (int i = table.Rows.IndexOf(row) + 1; i < table.Rows.Count; ++i) { DataRow locRow = table.Rows[i]; if (locRow.RowState != DataRowState.Deleted) { if (ToolStockLine.isLineMonetary(locRow)) { break; } if ((!ToolStockLine.isLineStlineGlobal(locRow)) && ToolStockLine.isLinePureMoney(locRow)) { if (rows == null) { rows = new DataRow[] { locRow } } ; else { rows = ToolArray.resize <DataRow>(rows, rows.Length + 1); rows[rows.Length - 1] = locRow; } } } } } else if (ToolStockLine.isLinePureMoney(row)) { rows = new DataRow[] { row }; } } } return(rows); }
protected override void deleteExcessData(DataSet pDataSet) { base.deleteExcessData(pDataSet); DataTable table = pDataSet.Tables[TableSTLINE.TABLE]; for (int i = 0; i < table.Rows.Count; ++i) { if (table.Rows[i].RowState != DataRowState.Deleted) { if (ToolStockLine.isLineMaterialized(table.Rows[i])) { if ((Double)table.Rows[i][TableSTLINE.AMOUNT] < ConstValues.minPositive) { table.Rows[i].Delete(); } } } } }
protected override bool isEmptyData(DataSet pDataSet) { DataTable table = pDataSet.Tables[TableSTLINE.TABLE]; for (int i = 0; i < table.Rows.Count; ++i) { if (table.Rows[i].RowState != DataRowState.Deleted) { if (ToolStockLine.isLineMaterialized(table.Rows[i])) { if ((Double)table.Rows[i][TableSTLINE.AMOUNT] > ConstValues.minPositive) { return(false); } } } } return(true); }
private void fillSchema(DataRow rowDocLine) { _curMatRecord = ToolStockLine.getItemData(environment, rowDocLine[TableSTLINE.STOCKREF]); // //if (_checkLevel) { //object docLRef = rowDocHeader[TableINVOICE.LOGICALREF]; object lref = rowDocLine[TableSTLINE.STOCKREF]; double onhand = (double)ToolCell.isNull(_curMatRecord[TableITEMS.ONHAND], 0.0); onhand += environment.getMatIOAmount(lref); //onhand += ToolStockLine.itemAmountInDoc(lref, rowDocLine.Table); //onhand += ToolStockLine.itemAmountInDB(environment, lref, docLRef); ToolCell.set(_curMatRecord, TableITEMS.ONHAND, onhand); } // if (handler.report != null) { handler.report.setDataSource(_curMatRecord.Table); handler.report.refreshSource(); } // _tableSchema.Clear(); string unit = string.Empty; double amount = (double)ToolCell.isNull(rowDocLine[TableSTLINE.AMOUNT], 0.0); if (ToolDouble.isZero(amount) && CurrentVersion.ENV.getEnvBool("STOCKAMOUNTONE", false)) { amount = 1.0; } double price = (double)ToolCell.isNull(rowDocLine[TableSTLINE.PRICE], 0.0); double total = (double)ToolCell.isNull(rowDocLine[TableSTLINE.TOTAL], 0.0); double disperc = (double)ToolCell.isNull(rowDocLine[TableSTLINE.DISCPER], 0.0); double uinfo1 = 0.0; double uinfo2 = 0.0; DataRow newRow; // newRow = ToolRow.initTableNewRow(_tableSchema.NewRow()); newRow[TableDUMMY.UNIT] = unit = (string)ToolCell.isNull(_curMatRecord[TableITEMS.UNIT1], string.Empty); newRow[TableDUMMY.UNITREF] = (string)ToolCell.isNull(_curMatRecord[TableITEMS.UNITREF1], string.Empty); newRow[TableDUMMY.UNITCF01] = uinfo1 = (double)ToolCell.isNull(_curMatRecord[TableITEMS.UNITCF1], 0.0); newRow[TableDUMMY.UNITCF02] = uinfo2 = (double)ToolCell.isNull(_curMatRecord[TableITEMS.UNITCF1], 0.0); newRow[TableDUMMY.CONVFACT] = (uinfo1 > ConstValues.minPositive ? uinfo2 / uinfo1 : 1.0); newRow[TableDUMMY.AMOUNT] = amount; newRow[TableDUMMY.PRICE] = price; newRow[TableDUMMY.TOTAL] = total; newRow[TableDUMMY.DISCPER] = disperc; _tableSchema.Rows.Add(newRow); // newRow = ToolRow.initTableNewRow(_tableSchema.NewRow()); newRow[TableDUMMY.UNIT] = unit = (string)ToolCell.isNull(_curMatRecord[TableITEMS.UNIT2], string.Empty); newRow[TableDUMMY.UNITREF] = (string)ToolCell.isNull(_curMatRecord[TableITEMS.UNITREF2], string.Empty); newRow[TableDUMMY.UNITCF01] = uinfo1 = (double)ToolCell.isNull(_curMatRecord[TableITEMS.UNITCF1], 0.0); newRow[TableDUMMY.UNITCF02] = uinfo2 = (double)ToolCell.isNull(_curMatRecord[TableITEMS.UNITCF2], 0.0); newRow[TableDUMMY.CONVFACT] = (uinfo1 > ConstValues.minPositive ? uinfo2 / uinfo1 : 1.0); if ((unit != string.Empty)) { _tableSchema.Rows.Add(newRow); } // newRow = ToolRow.initTableNewRow(_tableSchema.NewRow()); newRow[TableDUMMY.UNIT] = unit = (string)ToolCell.isNull(_curMatRecord[TableITEMS.UNIT3], string.Empty); newRow[TableDUMMY.UNITREF] = (string)ToolCell.isNull(_curMatRecord[TableITEMS.UNITREF3], string.Empty); newRow[TableDUMMY.UNITCF01] = uinfo1 = (double)ToolCell.isNull(_curMatRecord[TableITEMS.UNITCF1], 0.0); newRow[TableDUMMY.UNITCF02] = uinfo2 = (double)ToolCell.isNull(_curMatRecord[TableITEMS.UNITCF3], 0.0); newRow[TableDUMMY.CONVFACT] = (uinfo1 > ConstValues.minPositive ? uinfo2 / uinfo1 : 1.0); if ((unit != string.Empty)) { _tableSchema.Rows.Add(newRow); } // refreshVal(); // //check //string userUnitRef = (string)ToolCell.isNull(rowDocLine[TableSTLINE.UNITREF], string.Empty); //for (int i = 0; i < _tableSchema.Rows.Count; ++i) //{ // DataRow row = _tableSchema.Rows[i]; // string unitRef = (string)row[TableDUMMY.UNITREF]; // if (userUnitRef == unitRef) // cBoxUnits.SelectedIndex = i; //} }