Ejemplo n.º 1
0
        /// <summary>
        /// 行の追加処理をおこなう
        /// </summary>
        private void addDataGridRow()
        {
            if (SearchResult == null)
            {
                return;
            }

            // グリッドにフォーカスを設定
            SearchGrid.Focus();

            DataRow row = SearchResult.NewRow();

            if (!string.IsNullOrEmpty(this.TOKUISAKI.Text1))
            {
                // 得意先で検索されている場合
                row["得意先コード"] = this.TOKUISAKI.Text1;
                row["枝番"]     = this.TOKUISAKI.Text2;
                row["得意先名1"]  = this.TOKUISAKI.Label2Text;
            }

            row["論理削除"] = false;

            if (SendFormId == (int)SEND_FORM.取引先マスタ || SendFormId == (int)SEND_FORM.メニュー)
            {
                // 品番検索を開く
                if (ShowProductDialogForm(row))
                {
                    SearchResult.Rows.Add(row);

                    // 行追加後は追加行を選択させる
                    int insIdx = SearchResult.Rows.Count - 1;
                    SetCurrentCell(SearchGrid, insIdx, 2);
                }
            }
            else if (SendFormId == (int)SEND_FORM.品番マスタ)
            {
                SCHM01_TOK tokForm = new SCHM01_TOK();
                tokForm.TwinTextBox          = new Framework.Windows.Controls.UcLabelTwinTextBox();
                tokForm.TwinTextBox.LinkItem = "0,3";   // 得意先・相殺

                if (tokForm.ShowDialog(this) ?? false)
                {
                    row["品番コード"]  = ProductNumber;
                    row["品番名称"]   = this.HINBAN.Text2;
                    row["得意先コード"] = tokForm.TwinTextBox.Text1;
                    row["枝番"]     = tokForm.TwinTextBox.Text2;
                    row["得意先名1"]  = tokForm.TwinTextBox.Text3;

                    SearchResult.Rows.Add(row);

                    // 行追加後は追加行を選択させる
                    int insIdx = SearchResult.Rows.Count - 1;
                    SetCurrentCell(SearchGrid, insIdx, 2);
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 品番検索画面を展開し選択値を設定する
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        private bool ShowProductDialogForm(DataRow row)
        {
            SCHM09_HIN diaForm = new SCHM09_HIN();

            diaForm.TwinTextBox      = new Framework.Windows.Controls.UcLabelTwinTextBox();
            diaForm.取引区分             = TARGET_TRADING_KBN;
            diaForm.IsSetItemEnabled = true;

            if (diaForm.ShowDialog(this) ?? false)
            {
                // 選択した品番が既に存在するかチェック
                if (SearchResult.Select(string.Format("品番コード = {0}", diaForm.TwinTextBox.Text1)).Count() == 0)
                {
                    row["品番コード"] = diaForm.TwinTextBox.Text1;
                    row["品番名称"]  = diaForm.TwinTextBox.Text2;
                    if (!string.IsNullOrEmpty(diaForm.TwinTextBox.Text3))
                    {
                        row["単価"] = diaForm.TwinTextBox.Text3;
                    }

                    if (string.IsNullOrEmpty(this.GAITHUSAKI.Text1) || string.IsNullOrEmpty(this.GAITHUSAKI.Text2))
                    {
                        // 得意先が設定されていない場合は得意先を選択させる
                        SCHM01_TOK tokForm = new SCHM01_TOK();
                        tokForm.TwinTextBox          = new Framework.Windows.Controls.UcLabelTwinTextBox();
                        tokForm.TwinTextBox.LinkItem = "2,3";   // 外注先・相殺

                        if (tokForm.ShowDialog(this) ?? false)
                        {
                            row["外注先コード"]   = tokForm.TwinTextBox.Text1;
                            row["外注先コード枝番"] = tokForm.TwinTextBox.Text2;
                        }
                        else
                        {
                            return(false);
                        }
                    }

                    return(true);
                }
                else
                {
                    MessageBox.Show("選択された品番は既に登録されています", "確認", MessageBoxButton.OK, MessageBoxImage.Information);
                }
            }

            return(false);
        }
Ejemplo n.º 3
0
        /// <summary>
        /// F1 リボン マスタ参照
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public override void OnF1Key(object sender, KeyEventArgs e)
        {
            try
            {
                object elmnt  = FocusManager.GetFocusedElement(this);
                var    tokBox = ViewBaseCommon.FindVisualParent <M01_TOK_TextBox>(elmnt as Control);

                if (tokBox != null)
                {
                    // 取引先テキストの場合
                    tokBox.OpenSearchWindow(this);
                }
                else if (isFocusedSupCode)
                {
                    // 取引先の場合、別テキストに枝番設定の為独自処理
                    SCHM01_TOK di = new SCHM01_TOK();
                    di.TwinTextBox = new Framework.Windows.Controls.UcLabelTwinTextBox();

                    if (di.ShowDialog(this) == true)
                    {
                        this.TORI_CODE.Text = di.TwinTextBox.Text1;
                        this.TORI_EDA.Text  = di.TwinTextBox.Text2;

                        SearchSupplierData(int.Parse(取引先コード), int.Parse(枝番));
                    }
                }
                else
                {
                    // 取引先以外はFW標準で開く
                    ViewBaseCommon.CallMasterSearch(this, this.MasterMaintenanceWindowList);
                }
            }
            catch (Exception ex)
            {
                appLog.Error("検索画面起動エラー", ex);
                ErrorMessage = "システムエラーです。サポートへご連絡ください。";
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 品番検索画面を展開し選択値を設定する
        /// </summary>
        /// <param name="row"></param>
        /// <returns></returns>
        private bool ShowProductDialogForm(DataRow row)
        {
            SCHM09_HIN diaForm = new SCHM09_HIN();

            diaForm.TwinTextBox      = new Framework.Windows.Controls.UcLabelTwinTextBox();
            diaForm.取引区分             = TARGET_TRADING_KBN;
            diaForm.IsSetItemEnabled = false;

            if (diaForm.ShowDialog(this) ?? false)
            {
                row["品番コード"] = diaForm.TwinTextBox.Text1;
                row["品番名称"]  = diaForm.TwinTextBox.Text2;

                if (string.IsNullOrEmpty(this.TOKUISAKI.Text1) || string.IsNullOrEmpty(this.TOKUISAKI.Text2))
                {
                    // 得意先が設定されていない場合は得意先を選択させる
                    SCHM01_TOK tokForm = new SCHM01_TOK();
                    tokForm.TwinTextBox          = new Framework.Windows.Controls.UcLabelTwinTextBox();
                    tokForm.TwinTextBox.LinkItem = "0,3";   // 得意先・相殺

                    if (tokForm.ShowDialog(this) ?? false)
                    {
                        row["得意先コード"] = tokForm.TwinTextBox.Text1;
                        row["枝番"]     = tokForm.TwinTextBox.Text2;
                    }
                    else
                    {
                        return(false);
                    }
                }

                return(true);
            }

            return(false);
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 行の追加処理をおこなう
        /// </summary>
        private void addDataGridRow()
        {
            if (SearchResult == null)
            {
                return;
            }

            // グリッドにフォーカスを設定
            SearchGrid.Focus();

            DataRow row = SearchResult.NewRow();

            row["論理削除"] = false;
            if (!string.IsNullOrEmpty(this.GAITHUSAKI.Text1))
            {
                // 外注先で検索されている場合
                row["外注先コード"]   = this.GAITHUSAKI.Text1;
                row["外注先コード枝番"] = this.GAITHUSAKI.Text2;
                row["外注先略称名"]   = this.GAITHUSAKI.Label2Text;      // No-379 Mod


                // 品番検索を開く
                if (ShowProductDialogForm(row))
                {
                    SearchResult.Rows.Add(row);

                    // 行追加後は追加行を選択させる
                    int insIdx = SearchResult.Rows.Count - 1;
                    SetCurrentCell(SearchGrid, insIdx, 2);
                }
            }

            if (!string.IsNullOrEmpty(this.HINBAN.Text1))
            {
                // 品番で検索されている場合
                row["品番コード"] = this.HinbanCode;
                row["品番名称"]  = this.HINBAN.Text2;

                // 仕入先が設定されていない場合は得意先を選択させる
                SCHM01_TOK tokForm = new SCHM01_TOK();
                tokForm.TwinTextBox          = new Framework.Windows.Controls.UcLabelTwinTextBox();
                tokForm.TwinTextBox.LinkItem = "2,3";   // 外注先・相殺

                if (tokForm.ShowDialog(this) ?? false)
                {
                    // 選択した品番が既に存在するかチェック
                    if (SearchResult.Select(string.Format("外注先コード = {0} AND 外注先コード枝番 = {1}", tokForm.TwinTextBox.Text1, tokForm.TwinTextBox.Text2)).Count() == 0)
                    {
                        row["外注先コード"]   = tokForm.TwinTextBox.Text1;
                        row["外注先コード枝番"] = tokForm.TwinTextBox.Text2;
                        row["外注先略称名"]   = tokForm.TwinTextBox.Text3;      // No-379 Mod

                        SearchResult.Rows.Add(row);

                        // 行追加後は追加行を選択させる
                        int insIdx = SearchResult.Rows.Count - 1;
                        SetCurrentCell(SearchGrid, insIdx, 2);
                    }
                    else
                    {
                        MessageBox.Show("選択された外注先は既に登録されています", "確認", MessageBoxButton.OK, MessageBoxImage.Information);
                        return;
                    }
                }
            }
        }
Ejemplo n.º 6
0
        /// <summary>
        /// F1 リボン マスタ検索
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public override void OnF1Key(object sender, KeyEventArgs e)
        {
            try
            {
                object elmnt   = FocusManager.GetFocusedElement(this);
                var    spgrid  = ViewBaseCommon.FindVisualParent <GcSpreadGrid>(elmnt as Control);
                var    m01Text = ViewBaseCommon.FindVisualParent <M01_TOK_TextBox>(elmnt as Control);

                if (spgrid != null)
                {
                    int cIdx = spgrid.ActiveColumnIndex;
                    int rIdx = spgrid.ActiveRowIndex;

                    // 対象セルがロックされている場合は処理しない
                    if (spgrid.Cells[rIdx, cIdx].Locked == true)
                    {
                        return;
                    }

                    #region グリッドファンクションイベント
                    switch (spgrid.ActiveColumnIndex)
                    {
                    case (int)GridColumnsMapping.取引先コード:
                    case (int)GridColumnsMapping.枝番:
                        // 入力値を取得
                        string code = getSpreadGridValue(rIdx, GridColumnsMapping.取引先コード).ToString(),
                               eda  = getSpreadGridValue(rIdx, GridColumnsMapping.枝番).ToString();

                        SCHM01_TOK tok = new SCHM01_TOK();
                        tok.TwinTextBox          = new UcLabelTwinTextBox();
                        tok.TwinTextBox.Text1    = code;
                        tok.TwinTextBox.Text2    = eda;
                        tok.TwinTextBox.LinkItem = "2,3";

                        if (tok.ShowDialog(this) == true)
                        {
                            setSpreadGridValue(rIdx, GridColumnsMapping.取引先コード, tok.TwinTextBox.Text1);
                            setSpreadGridValue(rIdx, GridColumnsMapping.スプリッタ, '-');
                            setSpreadGridValue(rIdx, GridColumnsMapping.枝番, tok.TwinTextBox.Text2);
                            setSpreadGridValue(rIdx, GridColumnsMapping.得意先名, tok.TwinTextBox.Text3);
                            gcSpreadGrid.ActiveCellPosition = new CellPosition(rIdx, (int)GridColumnsMapping.自社品番);
                        }
                        break;

                    case (int)GridColumnsMapping.自社品番:
                        SCHM09_MYHIN myhin = new SCHM09_MYHIN();
                        myhin.chkItemClass_2.IsChecked = false; myhin.chkItemClass_2.cIsEnabled = false;
                        myhin.chkItemClass_3.IsChecked = false; myhin.chkItemClass_3.cIsEnabled = false;
                        myhin.chkItemClass_4.IsChecked = false; myhin.chkItemClass_4.cIsEnabled = false;
                        myhin.TwinTextBox          = new UcLabelTwinTextBox();
                        myhin.TwinTextBox.LinkItem = "1";
                        if (myhin.ShowDialog(this) == true)
                        {
                            setSpreadGridValue(rIdx, GridColumnsMapping.品番コード, myhin.SelectedRowData["品番コード"]);
                            setSpreadGridValue(rIdx, GridColumnsMapping.自社品番, myhin.SelectedRowData["自社品番"]);
                            setSpreadGridValue(rIdx, GridColumnsMapping.自社品名, myhin.SelectedRowData["自社品名"]);
                            gcSpreadGrid.ActiveCellPosition = new CellPosition(rIdx, (int)GridColumnsMapping.依頼数);
                        }

                        break;

                    default:
                        break;
                    }

                    SearchResult.Rows[rIdx].EndEdit();

                    #endregion
                }
                else if (m01Text != null)
                {
                    m01Text.OpenSearchWindow(this);
                }
                else
                {
                    //ViewBaseCommon.CallMasterSearch(this, this.MasterMaintenanceWindowList);
                    int[]        disabledItemTypes = new[] { 2, 4 };       // No.362 Mod
                    SCHM09_MYHIN myhin             = new SCHM09_MYHIN(disabledItemTypes);
                    myhin.TwinTextBox          = new UcLabelTwinTextBox();
                    myhin.TwinTextBox.Text1    = ProductCode.Text1;
                    myhin.TwinTextBox.LinkItem = ProductCode.LinkItem;

                    if (myhin.ShowDialog(this) == true)
                    {
                        ProductCode.Text1 = myhin.TwinTextBox.Text1;
                        ProductCode.Text2 = myhin.TwinTextBox.Text2;
                    }
                }
            }
            catch (Exception ex)
            {
                appLog.Error("検索画面起動エラー", ex);
                this.ErrorMessage = "システムエラーです。サポートへご連絡ください。";
            }
        }