Esempio n. 1
0
        /// <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 = "";
        }