Exemplo n.º 1
0
        private void Frm_Invoices_Load(object sender, EventArgs e)
        {
            switch (Type)
            {
            case Master.InvoiceType.Purshases:
                this.LabelName.Text = "فاتورة مشتريات";
                break;

            case Master.InvoiceType.Sales:
                this.LabelName.Text = "فاتورة مبيعات";
                break;

            case Master.InvoiceType.PurchasesReturn:
                this.LabelName.Text = "فاتورة مرتجع مشتريات";
                break;

            case Master.InvoiceType.SalesReturn:
                this.LabelName.Text = "فاتورة مرتجع مبيعات";
                break;

            default:
                break;
            }
            //ColorTranslator.FromHtml("#FF99FFCC");//
            Grid.OptionsView.ShowIndicator = false;
            Lkp_PartType.IntializeData(Master.PartTypesList);
            Grid.OptionsView.NewItemRowPosition = NewItemRowPosition.Top;
            Grid.Columns[nameof(details.total_price)].OptionsColumn.AllowFocus = false;
            Grid.Columns[nameof(details.id)].Visible        = false;
            Grid.Columns[nameof(details.invoiceid)].Visible = false;
            Grid.OptionsView.ShowVerticalLines = DefaultBoolean.False;
            Grid.OptionsView.BestFitMode       = GridBestFitMode.Full;

            Grid.Appearance.EvenRow.BackColor        = Master.color(220, "#FAFAD2"); //Color.FromArgb(220,255, 249, 210);
            Grid.OptionsView.EnableAppearanceEvenRow = true;
            Grid.Appearance.OddRow.BackColor         = Master.color(50, "#D2D2FA");  //Color.FromArgb(50,220, 220, 220);
            Grid.OptionsView.EnableAppearanceOddRow  = true;

            Grid.Columns.Add(new GridColumn()
            {
                Name        = "clmCode",
                FieldName   = "Code",
                Caption     = "باركود",
                UnboundType = UnboundColumnType.String,
            });
            Grid.Columns.Add(new GridColumn()
            {
                Name        = "clmIndex",
                FieldName   = "Index",
                Caption     = "#",
                UnboundType = UnboundColumnType.Integer,
                MaxWidth    = 30,
                //Nulltext
            });
            Grid.Columns["Index"].OptionsColumn.AllowFocus = false;
            Grid.Columns[nameof(details.total_price)].OptionsColumn.AllowFocus = false;

            Grid.Columns[nameof(details.itemid)].Caption           = "إسم الصنف";
            Grid.Columns[nameof(details.itemunit_id)].Caption      = "الوحدة";
            Grid.Columns[nameof(details.item_Qty)].Caption         = "الكمية";
            Grid.Columns[nameof(details.price)].Caption            = "السعر";
            Grid.Columns[nameof(details.total_price)].Caption      = "إجمالي السعر";
            Grid.Columns[nameof(details.cost_value)].Caption       = "التكلفة";
            Grid.Columns[nameof(details.totalcoste_value)].Caption = "إجمالي التكلفة";
            Grid.Columns[nameof(details.discount)].Caption         = "% الخصم";
            Grid.Columns[nameof(details.discount_value)].Caption   = "الخصم";
            Grid.Columns[nameof(details.store_id)].Caption         = "المخزن";

            Grid.Columns["Index"].VisibleIndex = 0;
            Grid.Columns["Code"].VisibleIndex  = 1;
            Grid.Columns[nameof(details.itemid)].VisibleIndex           = 2;
            Grid.Columns[nameof(details.itemunit_id)].VisibleIndex      = 3;
            Grid.Columns[nameof(details.item_Qty)].VisibleIndex         = 4;
            Grid.Columns[nameof(details.price)].VisibleIndex            = 5;
            Grid.Columns[nameof(details.discount)].VisibleIndex         = 6;
            Grid.Columns[nameof(details.discount_value)].VisibleIndex   = 7;
            Grid.Columns[nameof(details.total_price)].VisibleIndex      = 8;
            Grid.Columns[nameof(details.cost_value)].VisibleIndex       = 9;
            Grid.Columns[nameof(details.totalcoste_value)].VisibleIndex = 10;
            Grid.Columns[nameof(details.store_id)].VisibleIndex         = 11;



            /*Create Grid view items in cells itemid*/


            repoItems.IntializeData(Session.ProductView.Where(x => x.status == true), Grid.Columns[nameof(details.itemid)], Grid_Details);
            repoItems.ValidateOnEnterKey = true;
            repoItems.AllowNullInput     = DefaultBoolean.False;
            repoItems.BestFitMode        = BestFitMode.BestFitResizePopup;
            repoItems.ImmediatePopup     = true;

            repoItemsAll.IntializeData(Session.ProductView, Grid.Columns[nameof(details.itemid)], Grid_Details);
            GridView repoview = repoItems.View;

            repoview.FocusRectStyle = DrawFocusRectStyle.RowFullFocus;
            repoview.OptionsSelection.UseIndicatorForSelection = true;
            repoview.OptionsView.ShowAutoFilterRow             = true;

            repoItems.PopulateViewColumns();

            repoview.Columns[nameof(product.status)].Visible   = false;
            repoview.Columns[nameof(product.type)].Visible     = false;
            repoview.Columns[nameof(product.id)].Visible       = false;
            repoview.Columns[nameof(product.code)].Caption     = "الكود ";
            repoview.Columns[nameof(product.name)].Caption     = "الإسم ";
            repoview.Columns[nameof(product.category)].Caption = "الفئة ";
            repoview.Columns[nameof(product.details)].Caption  = "الوصف ";

            repoUOM.IntializeData(Session.units, Grid.Columns[nameof(details.itemunit_id)], Grid_Details);
            repoStores.IntializeData(Session.Stores, Grid.Columns[nameof(details.store_id)], Grid_Details);                                                                                                   //repoItems.ValueMember = "id";
            repoStores.ForceInitialize();
            repoStores.PopulateColumns();
            repoStores.Columns[0].Visible = false;
            repoview.Columns[1].Caption   = "اسم المخزن ";
            repoStores.BestFitMode        = BestFitMode.BestFitResizePopup;

            #region : SpinEdit

            RepositoryItemSpinEdit spinEdit = new RepositoryItemSpinEdit();
            Grid.Columns[nameof(details.total_price)].ColumnEdit    = spinEdit;
            Grid.Columns[nameof(details.price)].ColumnEdit          = spinEdit;
            Grid.Columns[nameof(details.discount_value)].ColumnEdit = spinEdit;
            spinEdit.Mask.EditMask = "N3";
            spinEdit.Mask.UseMaskAsDisplayFormat = true;
            spinEdit.MinValue  = Convert.ToDecimal(0.1);
            spinEdit.MaxValue  = Convert.ToDecimal(1000000000);
            spinEdit.Increment = 1;

            RepositoryItemSpinEdit spinRatioEdit = new RepositoryItemSpinEdit();
            Grid.Columns[nameof(details.discount)].ColumnEdit = spinRatioEdit;
            spinRatioEdit.Increment     = 0.01m;
            spinRatioEdit.Mask.EditMask = "p";
            spinRatioEdit.Mask.UseMaskAsDisplayFormat = true;
            spinRatioEdit.MaxValue = 1;

            RepositoryItemSpinEdit spinspinQteEdit = new RepositoryItemSpinEdit();
            Grid.Columns[nameof(details.item_Qty)].ColumnEdit = spinspinQteEdit;
            spinspinQteEdit.Increment                 = 0.1m;
            spinspinQteEdit.Mask.EditMask             = "n";
            spinRatioEdit.Mask.UseMaskAsDisplayFormat = true;
            spinspinQteEdit.MinValue  = Convert.ToDecimal(0.1);
            spinspinQteEdit.MaxValue  = Convert.ToDecimal(1000000000);
            spinspinQteEdit.Increment = 1;

            Grid_Details.RepositoryItems.Add(spinspinQteEdit);
            Grid_Details.RepositoryItems.Add(spinRatioEdit);
            Grid_Details.RepositoryItems.Add(spinEdit);

            #endregion

            #region : Events

            this.Activated            += Frm_Invoices_Activated;
            GLkp_PartName.ButtonClick += GLkp_PartName_ButtonClick;

            /*احتساب قيم و نسب الضريبة*/
            Sp_DiscValue.Enter            += new EventHandler(Sp_InvDiscValue_Enter);
            Sp_DiscValue.Leave            += Sp_InvDiscValue_Leave;;
            Sp_DiscValue.EditValueChanged += Sp_InvDiscValue_EditValueChanged;
            Sp_DiscRatio.EditValueChanged += Sp_InvDiscValue_EditValueChanged;

            Sp_TaxValue.Enter            += Sp_InvTaxValue_Enter;
            Sp_TaxValue.Leave            += Sp_InvTaxValue_Leave;
            Sp_TaxValue.EditValueChanged += Sp_InvTaxValue_EditValueChanged;
            Sp_TaxRatio.EditValueChanged += Sp_InvTaxValue_EditValueChanged;

            Sp_Total.EditValueChanged    += Spn_EditValueChanged;
            Sp_Expences.EditValueChanged += Spn_EditValueChanged;

            Sp_Expences.EditValueChanged += Sp_InvPaid_EditValueChanged;
            Sp_Paid.EditValueChanged     += Sp_InvPaid_EditValueChanged;

            Sp_Net.DoubleClick       += Sp_Net_DoubleClick;
            Sp_Net.EditValueChanging += Sp_Net_EditValueChanging;
            /* الصنف "ID" جلب الوحدات حسب*/

            Grid.CustomRowCellEditForEditing += GridCustomRowCellEditForEditing;
            /* جلب بيانات وحدة الصنف */
            Grid.CellValueChanged += GridCellValueChanged;
            Grid.RowCountChanged  += GridRowCountChanged;
            Grid.RowUpdated       += GridRowUpdated;

            Lkp_Branch.EditValueChanging += Lkp_Branch_EditValueChanging;

            Grid.CustomUnboundColumnData += GridCustomUnboundColumnData;
            Grid_Details.ProcessGridKey  += Grid_Details_ProcessGridKey;

            Grid.ValidateRow         += GridValidateRow;
            Grid.InvalidRowException += GridInvalidRowException;

            #endregion

            MoveFocusToGrid();
        }