public override bool RecalcPrice(int parCodeReceipt = 0) { ParametersCollection varParameters = new ParametersCollection();; varParameters.Add("parIdWorkplace", GlobalVar.varIdWorkPlace, DbType.Int32); varParameters.Add("parCodePeriod", Global.GetCodePeriod(), DbType.Int32); varParameters.Add("parDefaultCodeDealer", GlobalVar.varDefaultCodeDealer[0], DbType.Int32); varParameters.Add("parCodeReceipt", parCodeReceipt, DbType.Int32); DataTable varDT = this.db.Execute(this.varSqlListPS, varParameters); for (int i = 0; i < varDT.Rows.Count; i++) { //wr.code_wares, wr.code_unit, w.vat, w.vat_operation, ps.code_ps, ps.priority, psd.type_discount, psd.data, pd.price_dealer, pdd.price_dealer default_price_dealer, int varCodeWares = Convert.ToInt32(varDT.Rows[i]["code_wares"]); int varCodeUnit = Convert.ToInt32(varDT.Rows[i]["code_unit"]); int varCodePS = Convert.ToInt32(varDT.Rows[i]["code_ps"]); varParameters.Clear(); varParameters.Add("parIdWorkplace", GlobalVar.varIdWorkPlace, DbType.Int32); varParameters.Add("parCodePeriod", Global.GetCodePeriod(), DbType.Int32); varParameters.Add("parCodeReceipt", parCodeReceipt, DbType.Int32); varParameters.Add("parCodeWares", varCodeWares, DbType.Int32); varParameters.Add("parCodeUnit", varCodeUnit, DbType.Int32); varParameters.Add("parCodePS", varCodePS, DbType.Int32); //varParameters.Add("parTypeDiscount",varTypeDiscount,DbType.Int32); varWares.SetWares(varDT.Rows[i]); varParameters.Add("parVatOperation", varWares.varTypeVat, DbType.Int32); varParameters.Add("parSum", (varWares.varPrice * varWares.varQuantity) * (1 + varWares.varPercentVat) * varWares.varCoefficient, DbType.Decimal); varParameters.Add("parSumVat", varWares.varPrice * varWares.varQuantity * varWares.varPercentVat * varWares.varCoefficient, DbType.Decimal); this.db.ExecuteNonQuery(this.varSqlUpdatePrice, varParameters); RecalcHeadReceipt(varParameters); } return(true); }
/// <summary> /// Власне шукає товар/клієнта. /// </summary> /// <param name="parStr"></param> void FindData(string parStr) { int varTypeFind = varWDB.FindData(parStr); Global.Log(CodeLog.Find, varTypeFind, 0, parStr); switch (varTypeFind) { case 0: //нічого не знайшли Message("Нічого не знайшли!!!"); Clear(); break; case 1: //Товар ParametersCollection varParameters = new ParametersCollection(); varParameters.Add("parDiscount", varClient.varDiscount, DbType.Int32); varDtWares = varWDB.FindWares(varParameters); int varChoiceRow; if (varDtWares.Rows.Count == 1) { varChoiceRow = 0; } else { varChoiceRow = ChoiceWares(varDtWares); } if (varChoiceRow >= 0) { varWares.SetWares(varDtWares.Rows[varChoiceRow]); NameWares.Text = varWares.varNameWares; //double varPriceDealer= Convert.ToDouble( varDtWares.Rows[varChoiceRow]["price_dealer"]); if (varWares.varPrice > 0) { if (varClient.varDiscount != 0) { GetPrice(); } else { varWares.varTypePrice = 1; } varReceipt.varSort++; if (varWares.varCodeUnit == 0) { varDtUnit = varWDB.UnitWares(varWares.varCodeWares); //DataView dv = new DataView(varDtUnit); NameUnit.DataSource = varDtUnit; NameUnit.DisplayMember = "abr_unit"; NameUnit.ValueMember = "code_unit"; NameUnit.SelectedIndex = Global.GetIndexDefaultUnit(varDtUnit); //NameUnit.DataBind(); } else // Одиниця виміру опреділена { if (varDtUnit == null) { varDtUnit = varWDB.UnitWares(123); } varDtUnit.Clear(); varDtUnit.Rows.Add(new Object[] { varWares.varCodeUnit, varWares.varAbrUnit, varWares.varCoefficient, "Y" }); } NameUnit.Enabled = (varDtUnit.Rows.Count > 1); NameUnit.Refresh(); NameUnitSelectedIndexChanged(null, null); if (Global.IsUnitMustInputQuantity(varWares.varCodeUnit)) { Quantity.DecimalPlaces = 3; Quantity.Value = 0; Quantity.Enabled = true; Quantity.Focus(); } else { Quantity.DecimalPlaces = 1; Quantity.Value = 1; Quantity.Enabled = false; //необхідно обробляти налаштування. this.AddWaresReceipt(); } //this.AddWares(); } else //Незадано продажної ціни { Message("Не задана продажна ціна"); // Clear(); } } ; break; case 2: //Клієнт SetClient(varWDB.FindClient().Rows[0]); break; } Input.Text = ""; }