private void gridViewInvRem_DoubleClick(object sender, EventArgs e) { MDataSet.RemainsRow _rem = this.gridViewInvRem.GetDataRow(this.gridViewInvRem.FocusedRowHandle) as MDataSet.RemainsRow; if (_rem != null) { MDataSet.InvoiceDetailRow _newRow = (this.invoiceDetailBindingSource.AddNew() as DataRowView).Row as MDataSet.InvoiceDetailRow; InvoiceDetailAdd _invoceDetailAdd = new InvoiceDetailAdd(_newRow, _rem, _mainForm); FormDialog formDialog = new FormDialog(); formDialog.Text = "Добавить строку"; formDialog.AcceptButton = null; formDialog.panel.Controls.Add(_invoceDetailAdd); if (DialogResult.OK == formDialog.ShowDialog(this)) { this.invoiceDetailBindingSource.EndEdit(); this.SaleInvoiceDetail(_newRow); } else { this.invoiceDetailBindingSource.CancelEdit(); this.mDataSet.ReceiptRemains.RejectChanges(); } } }
private void btDelete_Click(object sender, EventArgs e) { try { MDataSet.InvoiceDetailRow _detRow = this.gridViewInvDet.GetDataRow(this.gridViewInvDet.FocusedRowHandle) as MDataSet.InvoiceDetailRow; if (_detRow != null) { MDataSet.RemainsRow rem = _detRow.RemainsRow; this._mainForm.SaveToBase(_invmasterRow); this.invoiceDetailBindingSource.RemoveCurrent(); _mainForm.invoiceDetailTableAdapter.Update(_detRow); _mainForm.RefreshData(_invmasterRow); this._mainForm.RefreshData(rem); } } catch (Exception err) { MessageBox.Show(err.Message); MainForm.Log("btDelete_Click " + err.Message); } }
private void gridViewInvRem_KeyDown(object sender, KeyEventArgs e) { if (e.KeyData == Keys.Enter) { MDataSet.RemainsRow rem = this.gridViewInvRem.GetDataRow(this.gridViewInvRem.FocusedRowHandle) as MDataSet.RemainsRow; if (rem != null) { this.gridViewInvRem_DoubleClick(sender, e); } } }
private void gridViewRemainsInvDetEdt_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) { MDataSet.RemainsRow _rems = this.gridViewRemainsInvDetEdt.GetDataRow(this.gridViewRemainsInvDetEdt.FocusedRowHandle) as MDataSet.RemainsRow; if (_rems != null) { this.btAdd_Click(sender, e); } } }
private void gridControl1_DoubleClick(object sender, EventArgs e) { try { int focused = this.gridViewInvRem.FocusedRowHandle; MDataSet.RemainsRow _rem = this.gridViewInvRem.GetDataRow(this.gridViewInvRem.FocusedRowHandle) as MDataSet.RemainsRow; _mainForm.RefreshData(_rem); if (_rem != null) { MDataSet.InvoiceDetailRow _newRow = (this.invoiceDetailBindingSource.AddNew() as DataRowView).Row as MDataSet.InvoiceDetailRow; InvoiceDetailAdd _invoceDetailAdd = new InvoiceDetailAdd(_newRow, _rem, _mainForm); FormDialog formDialog = new FormDialog(); formDialog.Text = "Добавить строку"; formDialog.panel.Controls.Add(_invoceDetailAdd); if (DialogResult.OK == formDialog.ShowDialog(this)) { this.invoiceDetailBindingSource.EndEdit(); this.SaleInvoiceDetail(_newRow); _mainForm.RefreshData(_newRow); } else { this.gridViewInvRem.BeginDataUpdate(); this.invoiceDetailBindingSource.CancelEdit(); _rem.RejectChanges(); this.gridViewInvRem.EndDataUpdate(); this.gridRem.Focus(); this.gridViewInvRem.FocusedRowHandle = focused; return; } _invoceDetailAdd.Dispose(); GC.Collect(); } } catch (Exception err) { MessageBox.Show(err.Message); MainForm.Log("gridControl1_DoubleClick " + err.Message); } }
private void gridViewRemMain_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { MDataSet.RemainsRow det = this.gridViewRemMain.GetDataRow(e.RowHandle) as MDataSet.RemainsRow; if (det == null) { return; } if (det.UseByDate.AddMonths(-6) < DateTime.Today) { e.Appearance.ForeColor = Color.Pink; } if (det.UseByDate.AddMonths(-2) < DateTime.Today) { e.Appearance.ForeColor = Color.Red; } }
private void btDelete_Click(object sender, EventArgs e) { if ((this.invoiceDetailBindingSource.Current as DataRowView) == null) { return; } MDataSet.RemainsRow rem = ((this.invoiceDetailBindingSource.Current as DataRowView).Row as MDataSet.InvoiceDetailRow).RemainsRow; if (this.gridViewinvDet.IsValidRowHandle(this.gridViewinvDet.FocusedRowHandle) & this.gridViewinvDet.State == GridState.Normal & !this.gridViewinvDet.IsFilterRow(this.gridViewinvDet.FocusedRowHandle)) { if (DialogResult.OK == MessageBox.Show("”далить стоку?", "»зменение накладной", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)) { this.invoiceDetailBindingSource.RemoveCurrent(); _mainForm.RefreshData(rem); } } }
private void btAdd_Click(object sender, EventArgs e) { /*создать новую строку, указатель на нее в дл¤ редактировани¤*/ MDataSet.RemainsRow _rems = this.gridViewRemainsInvDetEdt.GetDataRow(this.gridViewRemainsInvDetEdt.FocusedRowHandle) as MDataSet.RemainsRow; if (_rems == null) { return; } FormDialog _formDialog = new FormDialog(); _formDialog.AcceptButton = _formDialog.btOk; _formDialog.Text = "ƒобавить строку"; MDataSet.InvoiceDetailRow sourceRow = ((this.invoiceDetailBindingSource.AddNew() as DataRowView).Row as MDataSet.InvoiceDetailRow); MDataSet.RemainsRow remainsRow = ((this.RemainsBindingSource.CurrencyManager.Current as DataRowView).Row as MDataSet.RemainsRow); MDataSet.ProductRow _productRow = (this.productBindingSource.DataSource as MDataSet.ProductDataTable).FindByID(remainsRow.ProductRef); if ((sourceRow != null) & (remainsRow != null)) { InvoiceDetailRowAdd _invoiceDetailRowAdd = new InvoiceDetailRowAdd(sourceRow, remainsRow, _productRow); _formDialog.panel.Controls.Add(_invoiceDetailRowAdd); if (DialogResult.OK == _formDialog.ShowDialog(this)) { remainsRow.AcceptChanges(); this.invoiceDetailBindingSource.EndEdit(); } else { this.invoiceDetailBindingSource.CancelEdit(); remainsRow.RejectChanges(); } } }
//При удалении вызвать public bool RefreshData(MDataSet.RemainsRow sourceRow) { MDataSet.RemainsDataTable _RemainsDataTable = new MDataSet.RemainsDataTable(); try { this.RemainsTableAdapter.FillByReceiptDetailRef(_RemainsDataTable, sourceRow.ReceiptDetailRef); } catch (Exception err) { MessageBox.Show(err.Message); Log("(MDataSet.RemainsRow sourceRow) " + err.Message + " " + err.Source + err.InnerException.Message); return(false); } finally { this.mDataSet.Remains.Merge(_RemainsDataTable); } return(true); }
private void btDelete_Click(object sender, EventArgs e) { MDataSet.InvoiceDetailRow _detRow = this.gridViewInvDet.GetDataRow(this.gridViewInvDet.FocusedRowHandle) as MDataSet.InvoiceDetailRow; if (_detRow != null) { if (DialogResult.OK == MessageBox.Show(this, "Удалить " + _detRow.Quantity.ToString(), "Удаление строки ", MessageBoxButtons.OKCancel, MessageBoxIcon.Question)) { MDataSet.RemainsRow rem = _detRow.RemainsRow; this._mainForm.SaveToBase(_invmasterRow); this.invoiceDetailBindingSource.RemoveCurrent(); _mainForm.invoiceDetailTableAdapter.Update(_detRow); _mainForm.RefreshData(_invmasterRow); this._mainForm.RefreshData(rem); } } }
private void ReceiptDetailColumn_Changing(object sender, DataColumnChangeEventArgs e) { if (e.Column == mDataSet.ReceiptDetail.PricePurchaseColumn) { // MessageBox.Show(e.ProposedValue.ToString()); } if (e.Column == mDataSet.ReceiptDetail.QuantityColumn) { MDataSet.RemainsRow remainsRow = (e.Row as MDataSet.ReceiptDetailRow).RemainsRow; if (((e.Row as MDataSet.ReceiptDetailRow).Quantity - remainsRow.QuantityRemains) > ((decimal)e.ProposedValue)) { MessageBox.Show("Товара уже продано больше!"); e.ProposedValue = (e.Row as MDataSet.ReceiptDetailRow).Quantity; } else { remainsRow.QuantityRemains += (decimal)e.ProposedValue - (e.Row as MDataSet.ReceiptDetailRow).Quantity; } } }
private void gridViewInvRem_CustomDrawCell(object sender, DevExpress.XtraGrid.Views.Base.RowCellCustomDrawEventArgs e) { try { MDataSet.RemainsRow det = this.gridViewInvRem.GetDataRow(e.RowHandle) as MDataSet.RemainsRow; if (det == null) { return; } if (det.UseByDate.AddMonths(-6) < DateTime.Today) { e.Appearance.ForeColor = Color.Pink; } if (det.UseByDate.AddMonths(-2) < DateTime.Today) { e.Appearance.ForeColor = Color.Red; } } catch (Exception err) { MessageBox.Show(err.Message); } }
private bool ReturnInvoiceDetail(MDataSet.InvoiceDetailRow row) { try { string name = row.RemainsRow.ProductRow.SmallName; bool isnds = row.RemainsRow.ProductRow.IsNDS; int Article = row.Article; bool res = _printer.ReturnArticle(Article, isnds, (double)row.Quantity, (double)row.PriceRetailNDS, name); if (res) { MDataSet.RemainsRow rem = row.RemainsRow; this.invoiceDetailBindingSource.RemoveCurrent(); this._mainForm.SaveToBase(_invmasterRow); this._mainForm.RefreshData(rem); } else { MessageBox.Show("Невозможно удалить строку!"); } } catch { MessageBox.Show("Ошибка!!"); return(false); } return(true); }
public InvoiceDetailAdd(MDataSet.InvoiceDetailRow source, MDataSet.RemainsRow remainsRow, MainForm mainForm) { InitializeComponent(); _row = source; _mainForm = mainForm; _remainsRow = remainsRow; _QuantityRemains = remainsRow.QuantityRemains; _prodRow = remainsRow.ProductRow; // _mainForm.RefreshData(_remainsRow); this.productBindingSource.DataSource = _prodRow; this.productBindingSource.ResetBindings(true); _row.LocalReceiptDetailRef = _remainsRow.ReceiptDetailRef; if (QuantityRemains >= 1) { _row.Quantity = 1; } else { _row.Quantity = QuantityRemains; } if (_prodRow.MinDivisor == 1) { this.QuantityEdit.Properties.DisplayFormat.FormatString = "####0"; this.QuantityEdit.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.QuantityEdit.Properties.EditFormat.FormatString = "###0"; this.QuantityEdit.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.QuantityEdit.Properties.Mask.EditMask = "####0"; this.QuantityEdit.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; this.lRemFull.Text = ""; // написать кол-во в блистерах или целых упаковках //количество целых упаковок : if (_prodRow.OldKol != 1) { int rem = Convert.ToInt32(_remainsRow.QuantityRemains + _row.Quantity); int q = (int)rem / _prodRow.OldKol; if (q != 0) { this.lRemFull.Text = q.ToString() + " целых уп."; } //количество едениц int c = (int)(rem - q * _prodRow.OldKol); if (c != 0) { if (this.lRemFull.Text.Length == 0) { this.lRemFull.Text = c.ToString() + _prodRow.UnitName; } else { this.lRemFull.Text += "+ " + c.ToString() + _prodRow.UnitName; } } this.labelRem.Visible = false; this.lRemFull.Visible = true; } } else { this.lComment.Text = "{в упаковке " + _prodRow.MinDivisor.ToString() + " шт}"; this.lComment.Visible = true; } if ((_prodRow.StorageConditionRef > 0)) { this.additionPanel.Visible = true; this.labelPlace.Text = this._prodRow.StorageConditionName; } _row.PriceRetailNDS = _remainsRow.PricePurchase; this.remainsBindingSource.DataSource = _remainsRow; this.invoiceDetailBindingSource.DataSource = source; this.labelRem.DataBindings.Clear(); this.labelRem.DataBindings.Add(new Binding("Text", this, "QuantityRemains")); this.labelSum.Text = this.SumRow.ToString(); }
public InvoiceDetailRowAdd(MDataSet.InvoiceDetailRow source, MDataSet.RemainsRow remain, MDataSet.ProductRow productRow) { InitializeComponent(); _productRow = productRow; _remainsRow = remain; _row = source; if (_productRow.MinDivisor == 1) { this.quantityEdit.Properties.DisplayFormat.FormatString = "####"; this.quantityEdit.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.quantityEdit.Properties.EditFormat.FormatString = "###"; this.quantityEdit.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.quantityEdit.Properties.Mask.EditMask = "####"; this.quantityEdit.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; } this.lnumOst.Text = _remainsRow.QuantityRemains.ToString(); //количество целых упаковок : if (_productRow.OldKol != 1) { int rem = Convert.ToInt32(_remainsRow.QuantityRemains + _row.Quantity); int q = (int)rem / _productRow.OldKol; if (q != 0) { this.labelOst.Text = q.ToString() + " целых уп."; } //количество едениц int c = (int)(rem - q * _productRow.OldKol); if (c != 0) { if (this.labelOst.Text.Length == 0) { this.labelOst.Text = c.ToString() + _productRow.UnitName; } else { this.labelOst.Text += "+ " + c.ToString() + _productRow.UnitName; } } this.labelOst.Visible = true; } else { this.lComment.Text = "{в упаковке " + _productRow.MinDivisor.ToString() + " шт}"; this.lComment.Visible = true; } this.mDataSet = source.Table.DataSet as MDataSet; this.invoiceDetailBindingSource.DataSource = source; this.productBindingSource.DataSource = _productRow; this.productBindingSource.ResetBindings(false); if (source.LocalReceiptDetailRef == 0) { source.LocalReceiptDetailRef = remain.ReceiptDetailRef; } this.remainsBindingSource.DataSource = remain; _quantytiStock = remain.QuantityRemains; this.invoiceDetailBindingSource.ResetBindings(true); this.errorProvider1.DataSource = this.invoiceDetailBindingSource; this.errorProvider1.UpdateBinding(); source.EndEdit(); }
public InvoiceDetailRowAdd(MDataSet.InvoiceDetailRow source, MDataSet.RemainsRow remain, MDataSet.ProductRow productRow) { InitializeComponent(); _productRow = productRow; _remainsRow = remain; _row = source; if (_productRow.MinDivisor == 1) { this.quantityEdit.Properties.DisplayFormat.FormatString = "####"; this.quantityEdit.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.quantityEdit.Properties.EditFormat.FormatString = "###"; this.quantityEdit.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.quantityEdit.Properties.Mask.EditMask = "####"; this.quantityEdit.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; } this.lnumOst.Text = _remainsRow.QuantityRemains.ToString(); //количество целых упаковок : if (_productRow.OldKol != 1) { int rem = Convert.ToInt32(_remainsRow.QuantityRemains + _row.Quantity); int q = (int)rem / _productRow.OldKol; if (q != 0) { this.labelOst.Text = q.ToString() + " целых уп."; } //количество едениц int c = (int)(rem - q * _productRow.OldKol); if (c != 0) { if (this.labelOst.Text.Length == 0) { this.labelOst.Text = c.ToString() + _productRow.UnitName; } else { this.labelOst.Text += "+ " + c.ToString() + _productRow.UnitName; } } this.labelOst.Visible = true; } else { this.lComment.Text = "{в упаковке " + _productRow.MinDivisor.ToString() + " шт}"; this.lComment.Visible = true; } this.mDataSet = source.Table.DataSet as MDataSet; this.invoiceDetailBindingSource.DataSource = source; this.productBindingSource.DataSource = _productRow; this.productBindingSource.ResetBindings(false); if (source.LocalReceiptDetailRef==0 ) source.LocalReceiptDetailRef = remain.ReceiptDetailRef; this.remainsBindingSource.DataSource = remain; _quantytiStock = remain.QuantityRemains; this.invoiceDetailBindingSource.ResetBindings(true); this.errorProvider1.DataSource = this.invoiceDetailBindingSource; this.errorProvider1.UpdateBinding(); source.EndEdit(); }
public InvoiceDetailAdd(MDataSet.InvoiceDetailRow source, MDataSet.RemainsRow remainsRow, MainForm mainForm) { InitializeComponent(); _row = source; _mainForm = mainForm; _remainsRow = remainsRow; _QuantityRemains = remainsRow.QuantityRemains; _prodRow = remainsRow.ProductRow; // _mainForm.RefreshData(_remainsRow); this.productBindingSource.DataSource = _prodRow; this.productBindingSource.ResetBindings(true); _row.LocalReceiptDetailRef = _remainsRow.ReceiptDetailRef; if (QuantityRemains >= 1) _row.Quantity = 1; else _row.Quantity = QuantityRemains; if (_prodRow.MinDivisor == 1) { this.QuantityEdit.Properties.DisplayFormat.FormatString = "####0"; this.QuantityEdit.Properties.DisplayFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.QuantityEdit.Properties.EditFormat.FormatString = "###0"; this.QuantityEdit.Properties.EditFormat.FormatType = DevExpress.Utils.FormatType.Numeric; this.QuantityEdit.Properties.Mask.EditMask = "####0"; this.QuantityEdit.Properties.Mask.MaskType = DevExpress.XtraEditors.Mask.MaskType.Numeric; this.lRemFull.Text = ""; // написать кол-во в блистерах или целых упаковках //количество целых упаковок : if (_prodRow.OldKol != 1) { int rem = Convert.ToInt32(_remainsRow.QuantityRemains + _row.Quantity); int q =(int) rem / _prodRow.OldKol; if (q != 0) { this.lRemFull.Text = q.ToString() + " целых уп."; } //количество едениц int c = (int)(rem - q * _prodRow.OldKol); if (c != 0) { if (this.lRemFull.Text.Length == 0) { this.lRemFull.Text = c.ToString() + _prodRow.UnitName; } else { this.lRemFull.Text += "+ " + c.ToString() + _prodRow.UnitName; } } this.labelRem.Visible = false; this.lRemFull.Visible = true; } } else { this.lComment.Text = "{в упаковке " + _prodRow.MinDivisor.ToString() +" шт}"; this.lComment.Visible = true; } if ((_prodRow.StorageConditionRef > 0)) { this.additionPanel.Visible = true; this.labelPlace.Text = this._prodRow.StorageConditionName; } _row.PriceRetailNDS = _remainsRow.PricePurchase; this.remainsBindingSource.DataSource = _remainsRow; this.invoiceDetailBindingSource.DataSource = source; this.labelRem.DataBindings.Clear(); this.labelRem.DataBindings.Add(new Binding("Text",this,"QuantityRemains")); this.labelSum.Text = this.SumRow.ToString(); }