private void gvLines_repositoryItems_EditValueChanged(object sender, EventArgs e) { gvLines.PostEditor(); gvLines.UpdateCurrentRow(); FicheLineView currenLine = gvLines.GetFocusedRow() as FicheLineView; CheckLine(currenLine); }
private void spinSrvLineQuantity_EditValueChanged(object sender, EventArgs e) { gvServicesOfLine.PostEditor(); gvServicesOfLine.UpdateCurrentRow(); FicheLineView currenLine = gvLines.GetFocusedRow() as FicheLineView; CheckLine(currenLine); }
private void rpLookupItem_EditValueChanged(object sender, EventArgs e) { gvLines.PostEditor(); FicheLineView line = (FicheLineView)gvLines.GetFocusedRow(); CheckLine(line, true); gvLines.RefreshData(); }
private void gvLines_FocusedRowChanged(object sender, FocusedRowChangedEventArgs e) { FicheLineView vw = gvLines.GetFocusedRow() as FicheLineView; if (vw == null) { gcServicesOfLine.DataSource = null; return; } gcServicesOfLine.DataSource = vw.LineServices; }
void CheckLine(FicheLineView line, bool updateLinePrice = false) { if (line == null) { return; } if (line.ItemId == 0) { return; } ItemView item = dataHolder.Items.Where(x => x.Id == line.ItemId).FirstOrDefault(); if (item == null) { return; } line.ItemCode = item.ItemCode; line.ItemTypeId = item.ItemTypeId; line.ItemTypeName = item.ItemTypeName; line.ItemName = item.ItemName; Calculation calculation = new Calculation(); if (isNew) { line.ItemPrice = calculation.GetItemDefaultPriceByDocumentType(item, DocumentType); } if (isNew && updateLinePrice) { line.LinePrice = calculation.CalculateLinePrice(item, DocumentType, itemPrices); } line.LineTotal = calculation.CalculateLineTotal(item.LineCalcTypeId, line.ItemPrice, line.Quantity, line.Width, line.Length); line.LineNetTotal = calculation.CalculateLineTotal(item.LineCalcTypeId, line.LinePrice, line.Quantity, line.Width, line.Length); foreach (var srvLine in line.LineServices) { ItemView srvItem = dataHolder.Items.Where(x => x.Id == srvLine.ServiceItemId).FirstOrDefault(); if (isNew) { srvLine.ItemPrice = calculation.GetItemDefaultPriceByDocumentType(srvItem, DocumentType); } if (isNew && updateLinePrice) { srvLine.LinePrice = calculation.CalculateLinePrice(srvItem, DocumentType, itemPrices); } srvLine.LineTotal = calculation.CalculateLineTotal(srvItem.LineCalcTypeId, srvLine.ItemPrice, srvLine.Quantity, line.Width, line.Length); srvLine.LineNet = calculation.CalculateLineTotal(srvItem.LineCalcTypeId, srvLine.LinePrice, srvLine.Quantity, line.Width, line.Length); } //line. gvLines.RefreshData(); //gcServicesOfLine.DataSource = null; gcServicesOfLine.DataSource = line.LineServices; gcServicesOfLine.RefreshDataSource(); }
private void Manp_FichesNew_KeyUp(object sender, KeyEventArgs e) { FicheLineView currenLine = gvLines.GetFocusedRow() as FicheLineView; // CheckLine(currenLine); // gvLines.RefreshData(); if (e.KeyValue == 107 || e.KeyValue == 187) { FicheLineView newLine = new FicheLineView(); if (currenLine != null) { if (chkStoreItem.Checked) { newLine.ItemId = currenLine.ItemId; } if (chkStoreQuantity.Checked) { newLine.Quantity = currenLine.Quantity; } if (chkStoreSizes.Checked) { newLine.Width = currenLine.Width; newLine.Length = currenLine.Length; } if (chkStoreLinePrice.Checked) { newLine.LinePrice = currenLine.LinePrice; } } newLine.LineServices = new List <FicheLineServiceView>(); foreach (var srvItem in dataHolder.Items.Where(x => x.IsLineService)) { FicheLineServiceView lineServiceView = new FicheLineServiceView(); lineServiceView.ItemCode = srvItem.ItemCode; lineServiceView.ItemName = srvItem.ItemName; lineServiceView.ServiceItemId = srvItem.Id; //lineServiceView. = srvItem.ItemName; newLine.LineServices.Add(lineServiceView); } CheckLine(newLine, !chkStoreLinePrice.Checked); Fiche.Lines.Add(newLine); gcLines.RefreshDataSource(); gvLines.MoveLast(); //gcLines.EmbeddedNavigator.Buttons.Append //gvLines.AddNewRow(); } if (e.KeyCode == Keys.Delete) { if (gvLines.GetFocusedRow() == null) { return; } DialogResult del = XtraMessageBox.Show("Silmək istədiyinizdən əminsinizmi?", "Sətir silinməsi", MessageBoxButtons.YesNo); if (del == DialogResult.Yes) { FicheLineView currentLine = gvLines.GetFocusedRow() as FicheLineView; Fiche.Lines.Remove(currentLine); } foreach (var line in Fiche.Lines) { line.LineNumber = Fiche.Lines.IndexOf(line) + 1; } Fiche.Lines = Fiche.Lines.OrderBy(x => x.LineNumber).ToList(); RefreshLines(); } if (e.KeyCode == Keys.Tab) { gvLines.PostEditor(); gvLines.UpdateCurrentRow(); } }