bazar.ExpenseSlip.SlipFill C# (CSharp) Method

SlipFill() public method

public SlipFill ( int SlipId, bool Copy ) : void
SlipId int
Copy bool
return void
        public void SlipFill(int SlipId, bool Copy)
        {
            NewSlip = Copy;

            TreeIter iter;

            logger.Info("Запрос расходного ордера №{0}...", SlipId);
            string sql = "SELECT debit_slips.*, contractors.name as contractor, users.name as user, " +
                    "employees.name as employee, expense_items.name as expense FROM debit_slips " +
                    "LEFT JOIN contractors ON debit_slips.contractor_id = contractors.id " +
                    "LEFT JOIN users ON debit_slips.user_id = users.id " +
                    "LEFT JOIN employees ON debit_slips.employee_id = employees.id " +
                    "LEFT JOIN expense_items ON debit_slips.expense_id = expense_items.id " +
                    "WHERE debit_slips.id = @id";
            try
            {
                MySqlCommand cmd = new MySqlCommand(sql, QSMain.connectionDB);

                cmd.Parameters.AddWithValue("@id", SlipId);

                MySqlDataReader rdr = cmd.ExecuteReader();

                rdr.Read();

                switch (rdr["operation"].ToString())
                {
                case "advance":
                    comboOperation.Active = 1;
                    break;
                default:
                    comboOperation.Active = 0;
                break;
                }
                if(!Copy)
                    entryNumber.Text = rdr["id"].ToString();
                if(rdr["contractor_id"] != DBNull.Value)
                {
                    Contractor_id = Convert.ToInt32(rdr["contractor_id"].ToString());
                    entryContractor.Text = rdr["contractor"].ToString();
                    entryContractor.TooltipText = rdr["contractor"].ToString();
                    ContractorNull = false;
                }
                if(rdr["employee_id"] != DBNull.Value)
                {
                    Accountable_id = Convert.ToInt32(rdr["employee_id"].ToString());
                    entryAccountable.Text = rdr["employee"].ToString();
                    entryAccountable.TooltipText = rdr["employee"].ToString();
                    AccountableNull = false;
                }
                if(rdr["date"] != DBNull.Value && !Copy)
                    dateSlip.Date = DateTime.Parse( rdr["date"].ToString());
                if(rdr["org_id"] != DBNull.Value)
                    ListStoreWorks.SearchListStore((ListStore)comboOrg.Model, int.Parse(rdr["org_id"].ToString()), out iter);
                else
                    ListStoreWorks.SearchListStore((ListStore)comboOrg.Model, -1, out iter);
                comboOrg.SetActiveIter (iter);
                if(rdr["cash_id"] != DBNull.Value)
                    ListStoreWorks.SearchListStore((ListStore)comboCash.Model, int.Parse(rdr["cash_id"].ToString()), out iter);
                else
                    ListStoreWorks.SearchListStore((ListStore)comboCash.Model, -1, out iter);
                comboCash.SetActiveIter (iter);
                if(rdr["expense_id"] != DBNull.Value)
                {
                    Expense_id = Convert.ToInt32(rdr["expense_id"].ToString());
                    entryExpense.Text = rdr["expense"].ToString();
                    entryExpense.TooltipText = rdr["expense"].ToString();
                    ExpenseNull = false;
                }
                spinSum.Value = double.Parse (rdr["sum"].ToString());
                if(rdr["user"] != DBNull.Value && !Copy)
                    entryUser.Text = rdr["user"].ToString ();
                textviewDetails.Buffer.Text = rdr["details"].ToString();

                rdr.Close();
                if(!NewSlip)
                {
                    this.Title = "Расходный ордер №" + entryNumber.Text;
                    buttonPrint.Sensitive = true;
                }
                // Проверяем права на редактирование
                if(!QSMain.User.Permissions["edit_slips"] && dateSlip.Date != DateTime.Now.Date && !Copy)
                {
                    comboOperation.Sensitive = false;
                    comboOrg.Sensitive = false;
                    comboCash.Sensitive = false;
                    buttonContractorEdit.Sensitive = false;
                    buttonAccountableEdit.Sensitive = false;
                    spinSum.Sensitive = false;
                    textviewDetails.Sensitive = false;
                }
                logger.Info("Ok");
            }
            catch (Exception ex)
            {
                QSMain.ErrorMessageWithLog(this, "Ошибка получения информации о расходном ордере!", logger, ex);
            }
            TestCanSave();
        }

Usage Example

Example #1
0
    protected virtual void OnButtonViewClicked(object sender, System.EventArgs e)
    {
        TreeIter iter;
        int type, itemid;
        string place;
        ResponseType result;

        switch (notebookMain.CurrentPage) {
        case 0:
            treeviewPlaces.Selection.GetSelected (out iter);
            place = PlaceSort.GetValue (iter, (int)PlaceCol.place_no).ToString ();
            type = Convert.ToInt32 (PlaceSort.GetValue (iter, (int)PlaceCol.type_place_id));
            Place winPlace = new Place (false);
            winPlace.PlaceFill (type, place);
            winPlace.Show ();
            result = (ResponseType)winPlace.Run ();
            winPlace.Destroy ();
            if (result == ResponseType.Ok)
                UpdatePlaces ();
            break;
        case 1:
            treeviewLessees.Selection.GetSelected (out iter);
            itemid = Convert.ToInt32 (LesseesSort.GetValue (iter, (int)LesseesCol.id));
            lessee winLessee = new lessee ();
            winLessee.LesseeFill (itemid);
            winLessee.Show ();
            result = (ResponseType)winLessee.Run ();
            winLessee.Destroy ();
            if (result == ResponseType.Ok)
                UpdateLessees ();
            break;
        case 2:
            treeviewContract.Selection.GetSelected (out iter);
            itemid = (int)ContractSort.GetValue (iter, (int)ContractCol.id);
            Contract winContract = new Contract ();
            winContract.ContractFill (itemid);
            winContract.Show ();
            result = (ResponseType)winContract.Run ();
            winContract.Destroy ();
            if (result == ResponseType.Ok)
                UpdateContract ();
            break;
        case 3:
            itemid = Convert.ToInt32 (treeviewAccrual.GetSelectedObject<AccrualListEntryDTO>().Id);
            Accrual winAccrual = new Accrual ();
            winAccrual.AccrualFill (itemid);
            winAccrual.Show ();
            result = (ResponseType)winAccrual.Run ();
            winAccrual.Destroy ();
            if (result == ResponseType.Ok)
                UpdateAccrual ();
            break;
        case 4:
            switch (notebookCash.CurrentPage) {
            case 0:
                treeviewIncome.Selection.GetSelected (out iter);
                itemid = Convert.ToInt32 (CashIncomeSort.GetValue (iter, (int)CashIncomeCol.id));
                IncomeSlip winIncome = new IncomeSlip ();
                winIncome.SlipFill (itemid, false);
                winIncome.Show ();
                result = (ResponseType)winIncome.Run ();
                winIncome.Destroy ();
                if (result == ResponseType.Ok) {
                    UpdateCashIncome ();
                    CalculateTotalCash ();
                }
                break;
            case 1:
                treeviewExpense.Selection.GetSelected (out iter);
                itemid = Convert.ToInt32 (CashExpenseSort.GetValue (iter, (int)CashExpenseCol.id));
                ExpenseSlip winExpense = new  ExpenseSlip ();
                winExpense.SlipFill (itemid, false);
                winExpense.Show ();
                result = (ResponseType)winExpense.Run ();
                winExpense.Destroy ();
                if (result == ResponseType.Ok) {
                    UpdateCashExpense ();
                    CalculateTotalCash ();
                }
                break;
            case 2:
                treeviewAdvance.Selection.GetSelected (out iter);
                itemid = Convert.ToInt32 (CashAdvanceSort.GetValue (iter, (int)CashAdvanceCol.id));
                AdvanceStatement winAdvance = new AdvanceStatement ();
                winAdvance.StatementFill (itemid, false);
                winAdvance.Show ();
                result = (ResponseType)winAdvance.Run ();
                winAdvance.Destroy ();
                if (result == ResponseType.Ok)
                    UpdateCashAdvance ();
                break;
            }
            break;
        case 5:
            treeviewEvents.Selection.GetSelected (out iter);
            itemid = Convert.ToInt32 (EventsListStore.GetValue (iter, 0));
            Event winEvent = new Event ();
            winEvent.EventFill (itemid);
            winEvent.Show ();
            result = (ResponseType)winEvent.Run ();
            winEvent.Destroy ();
            if (result == ResponseType.Ok)
                UpdateEvents ();
            break;
        default:
            break;
        }
    }
All Usage Examples Of bazar.ExpenseSlip::SlipFill