private void PivotGridControl2CellClickInputData(object sender, CellInputDataEventArgs e) { if (e.Type == InputDataTypes.Supplier) { _args = e; var windowSupplier = new WindowSupplier(_db); windowSupplier.SupplierSelected += WindowSupplierSupplierSelected; ((UIElement)Content).IsEnabled = false; Cursor = Cursors.Wait; windowSupplier.ShowDialog(); ((UIElement)Content).IsEnabled = true; Cursor = Cursors.Arrow; } else { var setIL = _db.DataTableGetILByCondition(Table.TableRowSource, e.ConditionValues, e.Filters); if (e.Type == InputDataTypes.SourceWh) { var chainGroup = _db.DataTableGetChainForCondition(setIL, Convert.ToInt32(e.SetValues[0].Value)); if (chainGroup != null) { var windowChain = new WindowChain(_db, chainGroup, setIL,_db.DataTableGetSourceMethodByIL(setIL)==SourceMethods.T); windowChain.Apply += WindowChainApply; windowChain.ShowDialog(); //var windowChainNative = new WindowChainNative(_db, chainGroup); //windowChainNative.ShowDialog(); } return; } var lockedIL = new SortedSet<IL>(); if (_db.DataTableRowSourceUpdateCustom(e.SetValues, setIL, ref lockedIL) == false) { MessageBox.Show("Ошибка при обновлении источника: " + _db.Error, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } else { if (lockedIL.Count > 0) MessageBox.Show("Не удалось выполненить действие для следующих товаров-подразделений: " + string.Join(",", lockedIL)); /* if (e.Type == InputDataTypes.SourceMethod && e.SetValues[0].Value.Equals("S")) { //_db.FillDataTableCustom(DbManagerDynamic.TableSecSource); //_db.DataTableSecSourceUpdateCustomWithoutDb(e.SetValues, e.ConditionValues); _db.LogisticChainClear(); } */ _pivotGridControl2.ReloadData(); } } return; }
private void GridControl1MouseClick(object sender, MouseButtonEventArgs e) { if (gridControl1.View.GetRowHandleByMouseEventArgs(e) < -100) return; if (gridControl1.GetFocusedRow() == null) return; int id = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Id")); var chain = Chain.GetChainById(_chainGroup, id); if (chain == null) return; #region EXPENDMATERIAL var userWhList = _db.UserWhList.Keys.ToList(); /* var whs = _db.DataTableGetWhRowsByItem(chain.Item); foreach (var wh in whs) { if (userWhList.Contains(wh)) userWhList.Remove(wh); } */ #endregion //if (gridControl1.View.FocusedColumn.FieldName.Equals("SourceMethodNew")) if (gridControl1.Columns["SourceMethodNew"].IsFocused) { //int id = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Id")); //var chain = Chain.GetChainById(_chainGroup, id); //if (chain == null) return; var menuItemMethodNew1 = new MenuItem { Header = SourceMethods.S.Description(), Tag = SourceMethods.S }; menuItemMethodNew1.Click += ContextMenuItemMethodNewClick; var menu = new ContextMenu(); menu.Items.Add(menuItemMethodNew1); foreach (var wh in userWhList) //foreach (var wh in _db.UserWhList) { if (chain.WhExists(wh) == false) //wh.Key { var menuItemMethodNew2 = new MenuItem { Header = SourceMethods.W.Description(), Tag = SourceMethods.W }; menuItemMethodNew2.Click += ContextMenuItemMethodNewClick; var menuItemMethodNew3 = new MenuItem { Header = SourceMethods.T.Description(), Tag = SourceMethods.T }; menuItemMethodNew3.Click += ContextMenuItemMethodNewClick; menu.Items.Add(menuItemMethodNew2); menu.Items.Add(menuItemMethodNew3); break; } } menu.IsOpen = true; } else if (gridControl1.Columns["SourceWhNew"].IsFocused) { var value = (ChainValue)gridControl1.GetFocusedRowCellValue("SourceMethodNew"); if (value.State != ValueStates.Valid) return; if (Convert.ToChar(value.Value) == (char)SourceMethods.S) return; var menu = new ContextMenu(); //int id = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Id")); //var chain = Chain.GetChainById(_chainGroup, id); //if (chain == null) return; bool visible = false; foreach (var wh in userWhList) //foreach (var wh in _db.UserWhList) { if (chain.WhExists(wh)) continue; if (chain.Loc == wh) continue; var menuItemWhNew = new MenuItem { Header = wh }; menuItemWhNew.Click += ContextMenuItemWhNewClick; menu.Items.Add(menuItemWhNew); visible = true; } //if (!chain.WhExists(44)) //{ // var menuItemWhNew1 = new MenuItem { Header = "44" }; // menuItemWhNew1.Click += ContextMenuItemWhNew1Click; // menu.Items.Add(menuItemWhNew1); // visible = true; //} //if (!chain.WhExists(121)) //{ // var menuItemWhNew2 = new MenuItem { Header = "121" }; // menuItemWhNew2.Click += ContextMenuItemWhNew2Click; // menu.Items.Add(menuItemWhNew2); // visible = true; //} //if (!chain.WhExists(174)) //{ // var menuItemWhNew3 = new MenuItem { Header = "174" }; // menuItemWhNew3.Click += ContextMenuItemWhNew3Click; // menu.Items.Add(menuItemWhNew3); // visible = true; //} if (visible) menu.IsOpen = true; } else if (gridControl1.Columns["SupplierNew"].IsFocused || gridControl1.Columns["SupplierDescNew"].IsFocused) { #region Check Action State //int id = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Id")); int seq = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Seq")); //var chain = Chain.GetChainById(_chainGroup, id); //if (chain == null) return; #endregion //if ((Actions)chain.Nodes[seq - 1].Action.Value == Actions.Leave || (Actions)chain.Nodes[seq - 1].Action.Value == Actions.Transit) //{ if (chain.Nodes.Count == seq) { var windowSupplier = new WindowSupplier(_db); windowSupplier.SupplierSelected += WindowSupplierSupplierSelected; windowSupplier.ShowDialog(); } if (chain.Nodes.Count > seq) { if ((Actions)chain.Nodes[seq].Action.Value == Actions.Switch) { var windowSupplier = new WindowSupplier(_db); windowSupplier.SupplierSelected += WindowSupplierSupplierSelected; windowSupplier.ShowDialog(); } } //} } else if (gridControl1.Columns["Action"].IsFocused) { #region Check Action State //int id = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Id")); int seq = Convert.ToInt32(gridControl1.GetFocusedRowCellValue("Seq")); //var chain = Chain.GetChainById(_chainGroup, id); //if (chain == null) return; //if ((Actions)chain.Nodes[seq - 1].Action.Value == Actions.Transit) return; #endregion var menu = new ContextMenu(); if (chain.Nodes.Count == seq || (chain.Nodes.Count > seq ? (Actions)chain.Nodes[seq].Action.Value : Actions.Leave) == Actions.Switch) { var menuItemActionNew1 = new MenuItem { Header = Actions.Leave.Description(), Tag = Actions.Leave }; menuItemActionNew1.Click += ContextMenuItemActionNewClick; menu.Items.Add(menuItemActionNew1); var menuItemActionNew2 = new MenuItem { Header = Actions.Switch.Description(), Tag = Actions.Switch }; menuItemActionNew2.Click += ContextMenuItemActionNewClick; menu.Items.Add(menuItemActionNew2); } if (chain.Nodes.Count == seq && !_isSourceTransit) { var menuItemActionNew3 = new MenuItem { Header = Actions.Close.Description(), Tag = Actions.Close }; menuItemActionNew3.Click += ContextMenuItemActionNewClick; menu.Items.Add(menuItemActionNew3); } // transit feature var menuItemActionNew4 = new MenuItem { Header = Actions.Transit.Description(), Tag = Actions.Transit }; menuItemActionNew4.Click += ContextMenuItemActionNewClick; menu.Items.Add(menuItemActionNew4); if (menu.Items.Count > 0) menu.IsOpen = true; } }
private void SupplierNewSelectClick(object sender, RoutedEventArgs e) { var windowSupplier = new WindowSupplier(_db); windowSupplier.SupplierSelected += WindowSupplierSupplierSelected; windowSupplier.ShowDialog(); }