示例#1
0
        /// <summary>
        /// F10:Excel出力
        /// </summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "得意先別売上管理表_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            try
            {
                // データ検索用
                List <string> lstSearchItem = new List <string>();

                // データチェック
                if (!blnDataCheack())
                {
                    return;
                }

                //待機状態
                Cursor.Current = Cursors.WaitCursor;

                // 検索するデータをリストに格納
                lstSearchItem.Add(txtYmdFrom.Text);
                lstSearchItem.Add(txtYmdTo.Text);

                // グループコード(開始)が空の場合
                if (labelSet_GroupCdFrom.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("0000");
                }
                else
                {
                    lstSearchItem.Add(labelSet_GroupCdFrom.CodeTxtText);
                }
                // グループコード(終了)が空の場合
                if (labelSet_GroupCdTo.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("9999");
                }
                else
                {
                    lstSearchItem.Add(labelSet_GroupCdTo.CodeTxtText);
                }

                // 担当者コード(開始)が空の場合
                if (labelSet_TantoushaCdFrom.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("0000");
                }
                else
                {
                    lstSearchItem.Add(labelSet_TantoushaCdFrom.CodeTxtText);
                }
                // 担当者コード(終了)が空の場合
                if (labelSet_TantoushaCdTo.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("9999");
                }
                else
                {
                    lstSearchItem.Add(labelSet_TantoushaCdTo.CodeTxtText);
                }

                // 得意先コード(開始)が空の場合
                if (labelSet_TokuisakiCdFrom.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("0000");
                }
                else
                {
                    lstSearchItem.Add(labelSet_TokuisakiCdFrom.CodeTxtText);
                }
                // 得意先コード(終了)が空の場合
                if (labelSet_TokuisakiCdTo.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("9999");
                }
                else
                {
                    lstSearchItem.Add(labelSet_TokuisakiCdTo.CodeTxtText);
                }

                // 営業所コード(開始)が空の場合
                if (labelSet_EigyoshoCdFrom.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("0000");
                }
                else
                {
                    lstSearchItem.Add(labelSet_EigyoshoCdFrom.CodeTxtText);
                }
                // 営業所コード(終了)が空の場合
                if (labelSet_EigyoshoCdTo.CodeTxtText.Equals(""))
                {
                    lstSearchItem.Add("9999");
                }
                else
                {
                    lstSearchItem.Add(labelSet_EigyoshoCdTo.CodeTxtText);
                }

                // ビジネス層のインスタンス生成
                C0630_TokuisakiUriageArariPrint_B uriagePrint_B = new C0630_TokuisakiUriageArariPrint_B();

                // 検索実行
                DataTable dtUriage = uriagePrint_B.getUriage(lstSearchItem);

                // カーソルを戻す
                this.Cursor = Cursors.Default;

                // 対象データがある場合
                if (dtUriage != null && dtUriage.Rows.Count > 0)
                {
                    // 並べ替え(グループコード、担当者コード、得意先コード)
                    DataView dvUriage = new DataView(dtUriage);
                    dvUriage.Sort = "グループコード, 担当者コード, 得意先コード";
                    dtUriage      = dvUriage.ToTable();

                    // ダイアログ表示
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "グループ名",
                            "担当者名",
                            "コード",
                            "得意先名",
                            "売上額",
                            "粗利額",
                            "粗利率",
                            "指定期間内受注残金額",
                            "指定期間内受注残粗利",
                            "指定期間以降受注残金額",
                            "指定期間以降受注残粗利",
                            "月末売掛金残",
                            "当月入金額",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtUriage.AsEnumerable()
                                     .Select(dat => new
                        {
                            groupName                 = dat["グループ名"],
                            tantoName                 = dat["担当者名"],
                            tokuiCode                 = dat["得意先コード"],
                            tokuiName                 = dat["得意先名"],
                            uriageKingaku             = dat["売上額"],
                            arariKingaku              = dat["粗利額"],
                            arariritu                 = dat["粗利率"],
                            getumatuJuchuzanKingaku   = dat["月末迄受注残売上"],
                            getumatuJuchuarariKingaku = dat["月末迄受注残粗利"],
                            yokugetuJuchuzankingaku   = dat["翌月以降受注残売上"],
                            yokugetuJuchuarariKingaku = dat["翌月以降受注残粗利"],
                            urikakezanKingaku         = dat["月末売掛金残"],
                            nyuKingaku                = dat["当月入金額"],
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtTokuiArari = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtTokuiArari, "得意先別売上管理表", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    //元に戻す
                    Cursor.Current = Cursors.Default;
                    return;
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;

                // エラーロギング
                new CommonException(ex);

                // Excel出力失敗メッセージ
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excel出力に失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void excelTorihiki()
        {
            //SQL実行時に取り出したデータを入れる用
            DataTable dtSetCd_B = new DataTable();

            //ビジネス層のインスタンス生成
            M1070_Torihikisaki_B daibunB = new M1070_Torihikisaki_B();
            try
            {
                dtSetCd_B = daibunB.getPrintData();

                BaseMessageBox basemessagebox;
                //取得したデータがない場合
                if (dtSetCd_B == null || dtSetCd_B.Rows.Count == 0)
                {
                    //例外発生メッセージ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }

                // SaveFileDialogクラスのインスタンスを作成
                SaveFileDialog sfd = new SaveFileDialog();
                // ファイル名の指定
                sfd.FileName = "取引先マスタ_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
                // デフォルトパス取得(デスクトップ)
                string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                //はじめに表示されるフォルダを指定する
                sfd.InitialDirectory = Init_dir;
                // ファイルフィルタの設定
                sfd.Filter = "すべてのファイル(*.*)|*.*";

                //ダイアログを表示する
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    CreatePdf cpdf = new CreatePdf();
                    string[] header =
                    {
                            "コード",
                            "取引先",
                            "カナ",
                            "郵便番号",
                            "住所1",
                            "住所2",
                            "電話番号",
                            "FAX",
                        };

                    string outFile = sfd.FileName;

                    // Excel作成処理
                    cpdf.DtToXls(dtSetCd_B, "取引先マスタリスト", outFile, 3, 1, header);

                    // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                    basemessagebox.ShowDialog();

                }
            }
            catch (Exception ex)
            {
                //データロギング
                new CommonException(ex);
                //例外発生メッセージ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, CommonTeisu.LABEL_ERROR_MESSAGE, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();
                return;
            }
        }
        /// <summary>
        /// F10:Excel出力
        /// </summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "請求一覧表_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            try
            {
                //待機状態
                Cursor.Current = Cursors.WaitCursor;

                // データチェック処理
                if (!dataCheack())
                {
                    //元に戻す
                    Cursor.Current = Cursors.Default;
                    return;
                }

                // データ検索用
                List <string> lstSearchItem = new List <string>();


                // ビジネス層のインスタンス生成
                B0410_SeikyuItiranPrint_B seikyuitiranprintB = new B0410_SeikyuItiranPrint_B();

                // 検索するデータをリストに格納
                lstSearchItem.Add(txtSimekiriYMD.Text);
                lstSearchItem.Add(txtKaisiYMD.Text);
                lstSearchItem.Add(labelSet_TokuisakiStart.CodeTxtText);
                lstSearchItem.Add(labelSet_TokuisakiEnd.CodeTxtText);
                lstSearchItem.Add(txtSimekiribiCd.Text);
                if (radSetSort.judCheckBtn() == 0 || radSetSort.radbtn0.Checked)
                {
                    lstSearchItem.Add("1");
                }
                else if (radSetSort.judCheckBtn() == 1 || radSetSort.radbtn1.Checked)
                {
                    lstSearchItem.Add("2");
                }
                else
                {
                    lstSearchItem.Add("3");
                }
                lstSearchItem.Add(Environment.UserName);


                // 検索実行
                DataTable dtSeikyuItiran = seikyuitiranprintB.getSeikyuItiran(lstSearchItem);

                // カーソルを戻す
                this.Cursor = Cursors.Default;

                // 検索結果にデータがあった場合
                if (dtSeikyuItiran.Rows.Count > 0)
                {
                    // ダイアログ表示
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "コード",
                            "得意先名",
                            "前月売掛残",
                            "入金現金",
                            "入金小切手",
                            "入金振込",
                            "入金手形",
                            "入金相殺",
                            "入金手数料",
                            "入金その他",
                            "繰越残高",
                            "当月売上高",
                            "当月消費税",
                            "当月残高",
                            "税区分",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtSeikyuItiran.AsEnumerable()
                                     .Select(dat => new
                        {
                            code              = dat["得意先コード"],
                            tokuisakiName     = dat["得意先名"],
                            zenurizanKingaku  = dat["前月売掛残"],
                            genKingaku        = dat["入金現金"],
                            kogiteKingaku     = dat["入金小切手"],
                            furikomiKingaku   = dat["入金振込"],
                            teagataKingaku    = dat["入金手形"],
                            sosaiKingaku      = dat["入金相殺"],
                            tesuryoKingaku    = dat["入金手数料"],
                            sonotakingaku     = dat["入金その他"],
                            kurizanKingaku    = dat["繰越残高"],
                            uriagedataKingaku = dat["当月売上高"],
                            zeiKingaku        = dat["当月消費税"],
                            tougetuzanKingaku = dat["当月残高"],
                            zeiku             = dat["税区"],
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtSiireChk = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtSiireChk, "請求一覧表", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    //元に戻す
                    Cursor.Current = Cursors.Default;
                    return;
                }
            }
            catch (Exception ex)
            {
                // エラーロギング
                new CommonException(ex);

                // メッセージボックスの処理、PDF作成失敗の場合のウィンドウ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "印刷が失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }
示例#4
0
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void excelTanaorosiKinyuuhyo()
        {
            // データ検索用
            List <string> lstSearchItem = new List <string>();

            // データ検索用(プロシージャ用)
            List <string> lstSearchItemProc = new List <string>();

            // データチェック
            if (!blnDataCheack())
            {
                return;
            }

            // 検索するデータをリストに格納
            lstSearchItem.Add(txtYmd.Text);
            lstSearchItem.Add(labelSet_Eigyosho.CodeTxtText);
            lstSearchItem.Add(labelSet_Daibunrui.CodeTxtText);
            lstSearchItem.Add(labelSet_Chubunrui.CodeTxtText);
            lstSearchItem.Add(labelSet_Maker.CodeTxtText);
            lstSearchItem.Add(txtTanabanFrom.Text);
            lstSearchItem.Add(txtTanabanTo.Text);

            // 検索するデータをリストに格納(プロシージャ用)
            lstSearchItemProc.Add(txtYmd.Text);
            lstSearchItemProc.Add(labelSet_Eigyosho.CodeTxtText);
            lstSearchItemProc.Add(labelSet_Daibunrui.CodeTxtText);
            lstSearchItemProc.Add((radSort.judCheckBtn() + 1).ToString());

            // ビジネス層のインスタンス生成
            F0570_TanaorosiKinyuhyoPrint_B tanaorosiPrint_B = new F0570_TanaorosiKinyuhyoPrint_B();

            try
            {
                BaseMessageBox basemessagebox;

                // 印刷するにチェックが入っていない場合
                if (chkPrintOnly.Checked == false)
                {
                    //待機状態
                    Cursor.Current = Cursors.WaitCursor;

                    // 棚卸記入表の件数を取得
                    DataTable dtTanaorosiCount = tanaorosiPrint_B.getTanaorosiCount(lstSearchItem);

                    //元に戻す
                    Cursor.Current = Cursors.Default;

                    // 対象データがある場合
                    if (dtTanaorosiCount != null && dtTanaorosiCount.Rows.Count > 0)
                    {
                        // 件数が1件以上の場合
                        if (int.Parse(dtTanaorosiCount.Rows[0][0].ToString()) > 0)
                        {
                            // メッセージボックスの処理(YES,NO)
                            basemessagebox = new BaseMessageBox(this, "棚卸記入表", "既にデータが作成されています。書き換えますか?", CommonTeisu.BTN_YESNO, CommonTeisu.DIAG_QUESTION);

                            // Noが押された場合
                            if (basemessagebox.ShowDialog() == DialogResult.No)
                            {
                                return;
                            }
                        }
                    }

                    try
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        // 棚卸記入表テーブルに追加
                        tanaorosiPrint_B.addTanaorosi(lstSearchItem);

                        //元に戻す
                        Cursor.Current = Cursors.Default;
                    }
                    catch (Exception ex)
                    {
                        //元に戻す
                        Cursor.Current = Cursors.Default;

                        // エラーロギング
                        new CommonException(ex);

                        // メッセージボックスの処理、追加失敗の場合のウィンドウ(OK)
                        basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_TOUROKU, CommonTeisu.LABEL_TOUROKU_MISS, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                        basemessagebox.ShowDialog();

                        return;
                    }
                }

                //待機状態
                Cursor.Current = Cursors.WaitCursor;

                // 検索実行
                DataTable dtTanaorosi = tanaorosiPrint_B.getTanaorosi(lstSearchItemProc);

                //元に戻す
                Cursor.Current = Cursors.Default;

                // 対象データがある場合
                if (dtTanaorosi != null && dtTanaorosi.Rows.Count > 0)
                {
                    string strFilter = "";

                    // 中分類コードがある場合
                    if (!lstSearchItem[3].Equals(""))
                    {
                        strFilter += "中分類コード = '" + lstSearchItem[3] + "'";
                    }

                    // メーカーコードがある場合
                    if (!lstSearchItem[4].Equals(""))
                    {
                        if (!strFilter.Equals(""))
                        {
                            strFilter += " AND ";
                        }
                        strFilter += "メーカーコード = '" + lstSearchItem[4] + "'";
                    }

                    // 棚番がある場合
                    if (!lstSearchItem[5].Equals("") && !lstSearchItem[6].Equals(""))
                    {
                        if (!strFilter.Equals(""))
                        {
                            strFilter += " AND ";
                        }
                        strFilter += "棚番 >= '" + lstSearchItem[5] + "' AND 棚番 <= '" + lstSearchItem[6] + "'";
                    }

                    // 対象データから更に絞り込み(中分類コード、メーカーコード、棚番)
                    if (!strFilter.Equals(""))
                    {
                        DataView dvTanaorosi = new DataView(dtTanaorosi);
                        dvTanaorosi.RowFilter = strFilter;
                        dtTanaorosi           = dvTanaorosi.ToTable();

                        // 対象データがない場合
                        if (dtTanaorosi == null || dtTanaorosi.Rows.Count == 0)
                        {
                            // メッセージボックスの処理、対象データがない場合のウィンドウ(OK)
                            basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "対象のデータはありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                            basemessagebox.ShowDialog();

                            return;
                        }
                    }

                    // SaveFileDialogクラスのインスタンスを作成
                    SaveFileDialog sfd = new SaveFileDialog();
                    // ファイル名の指定
                    sfd.FileName = "棚卸プレシート_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
                    // デフォルトパス取得(デスクトップ)
                    string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                    //はじめに表示されるフォルダを指定する
                    sfd.InitialDirectory = Init_dir;
                    // ファイルフィルタの設定
                    sfd.Filter = "すべてのファイル(*.*)|*.*";

                    //ダイアログを表示する
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定

                        //Linqで必要なデータをselect
                        var outDataAll = dtTanaorosi.AsEnumerable()
                                         .Select(dat => new
                        {
                            eigyo         = dat["営業所名"],
                            daibunruiName = dat["大分類名"],
                            chubunruiName = dat["中分類名"],
                            tanaban       = dat["棚番"],
                            maker         = dat["メーカー名"],
                            kataban       = dat["品名型番"],
                            zsuryo        = (decimal)dat["指定日在庫"],
                            suryo         = (decimal)dat["棚卸数量"]
                        }).ToList();

                        //リストをデータテーブルに変換
                        DataTable dtChkList = cpdf.ConvertToDataTable(outDataAll);

                        string[] header =
                        {
                            "営業所名",
                            "大分類名",
                            "中分類名",
                            "棚番",
                            "メーカー名",
                            "品名型番",
                            "指定日在庫",
                            "棚卸数量",
                        };

                        string outFile = sfd.FileName;

                        // Excel作成処理
                        cpdf.DtToXls(dtChkList, "業種マスタリスト", outFile, 3, 1, header);

                        //元に戻す
                        Cursor.Current = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
            }
            catch (Exception ex)
            {
                //データロギング
                new CommonException(ex);
                //例外発生メッセージ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, CommonTeisu.LABEL_ERROR_MESSAGE, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();
                return;
            }
        }
示例#5
0
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void excelGyoshu()
        {
            //SQL実行時に取り出したデータを入れる用
            DataTable dtSetCd_B = new DataTable();

            //ビジネス層のインスタンス生成
            M1060_Gyoshu_B daibunB = new M1060_Gyoshu_B();

            try
            {
                dtSetCd_B = daibunB.getPrintData();

                BaseMessageBox basemessagebox;
                //取得したデータがない場合
                if (dtSetCd_B == null || dtSetCd_B.Rows.Count == 0)
                {
                    //例外発生メッセージ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }

                // SaveFileDialogクラスのインスタンスを作成
                SaveFileDialog sfd = new SaveFileDialog();
                // ファイル名の指定
                sfd.FileName = "業種マスタ_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
                // デフォルトパス取得(デスクトップ)
                string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                //はじめに表示されるフォルダを指定する
                sfd.InitialDirectory = Init_dir;
                // ファイルフィルタの設定
                sfd.Filter = "すべてのファイル(*.*)|*.*";

                //ダイアログを表示する
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    CreatePdf cpdf = new CreatePdf();

                    // 出力するヘッダを設定
                    //Linqで必要なデータをselect
                    var outDataAll = dtSetCd_B.AsEnumerable()
                                     .Select(dat => new
                    {
                        gyoshuCd   = (String)dat["業種コード"],
                        gyoshuName = dat["業種名"],
                    }).ToList();

                    //リストをデータテーブルに変換
                    DataTable dtChkList = cpdf.ConvertToDataTable(outDataAll);

                    string[] header =
                    {
                        "コード",
                        "業種名",
                    };

                    string outFile = sfd.FileName;

                    // Excel作成処理
                    cpdf.DtToXls(dtChkList, "業種マスタリスト", outFile, 3, 1, header);

                    // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                    basemessagebox.ShowDialog();
                }
            }
            catch (Exception ex)
            {
                //データロギング
                new CommonException(ex);
                //例外発生メッセージ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, CommonTeisu.LABEL_ERROR_MESSAGE, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();
                return;
            }
        }
示例#6
0
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "得意先売上検収入力_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";


            //年月日の日付フォーマット後を入れる用
            string strYMDformat = "";

            //待機状態
            Cursor.Current = Cursors.WaitCursor;

            //得意先が空の場合
            if (labelSet_Tokuisaki.codeTxt.blIsEmpty() == false)
            {
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "得意先を指定してください ", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                labelSet_Tokuisaki.Focus();

                return;
            }

            //検索開始年月日に記入がある場合
            if (txtDenpyoYMDStart.blIsEmpty())
            {
                //日付フォーマット生成、およびチェック
                strYMDformat = txtDenpyoYMDStart.chkDateDataFormat(txtDenpyoYMDStart.Text);

                //検索開始年月日の日付チェック
                if (strYMDformat == "")
                {
                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtDenpyoYMDStart.Focus();

                    return;
                }
                else
                {
                    txtDenpyoYMDStart.Text = strYMDformat;
                }
            }

            //検索終了年月日に記入がある場合
            if (txtDenpyoYMDEnd.blIsEmpty())
            {
                //初期化
                strYMDformat = "";

                //日付フォーマット生成、およびチェック
                strYMDformat = txtDenpyoYMDEnd.chkDateDataFormat(txtDenpyoYMDEnd.Text);

                //検索終了年月日の日付チェック
                if (strYMDformat == "")
                {
                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtDenpyoYMDEnd.Focus();

                    return;
                }
                else
                {
                    txtDenpyoYMDEnd.Text = strYMDformat;
                }
            }

            //大分類チェック
            if (labelSet_Daibunrui.chkTxtDaibunrui())
            {
                labelSet_Daibunrui.Focus();
                return;
            }

            //中分類チェック
            if (labelSet_Chubunrui.chkTxtChubunrui(labelSet_Daibunrui.CodeTxtText))
            {
                labelSet_Chubunrui.Focus();
                return;
            }

            try
            {
                A0660_TokuisakiUriageKakunin_B siirekakuninB = new A0660_TokuisakiUriageKakunin_B();

                // 検索文字列格納用
                string[] arrSerach = new string[7];
                // 出力順条件取得用
                string[] arrOrder = new string[2];
                // 表示条件取得用
                string[] arrDisplay = new string[3];

                arrSerach[0] = labelSet_Tokuisaki.CodeTxtText;                   // 得意先コード
                arrSerach[1] = txtDenpyoYMDStart.Text;                           // 伝票年月日start
                arrSerach[2] = txtDenpyoYMDEnd.Text;                             // 伝票年月日end
                arrSerach[3] = labelSet_Daibunrui.CodeTxtText;                   // 大分類コード
                arrSerach[4] = labelSet_Chubunrui.CodeTxtText;                   // 中分類コード
                arrSerach[5] = txtKataban.Text;                                  // 品名・型番
                arrSerach[6] = txtBiko.Text;                                     // 備考

                arrOrder[0] = radOutOrder.radbtn0.Checked.ToString().ToUpper();  // 出力順 日付・伝票番号順
                arrOrder[1] = radOutOrder.radbtn1.Checked.ToString().ToUpper();  // 出力順 型番・日付順

                arrDisplay[0] = radDisplay.radbtn0.Checked.ToString().ToUpper(); // 表示 すべて
                arrDisplay[1] = radDisplay.radbtn1.Checked.ToString().ToUpper(); // 表示 未検収
                arrDisplay[2] = radDisplay.radbtn2.Checked.ToString().ToUpper(); // 表示 検収済

                // 検索実行
                DataTable dtUriagekensyu = siirekakuninB.getSiireData(arrSerach, arrOrder, arrDisplay);

                // カーソルをデフォルトに戻す
                this.Cursor = Cursors.Default;

                if (dtUriagekensyu.Rows.Count > 0)
                {
                    //ダイアログを表示する
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "日付",
                            "伝No.",
                            "メーカー",
                            "品名・型式",
                            "数量",
                            "売上単価",
                            "売上金額",
                            "備考",
                            "検収",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtUriagekensyu.AsEnumerable()
                                     .Select(dat => new
                        {
                            denYmd        = dat["伝票年月日"],
                            denNo         = dat["伝票番号"],
                            maker         = dat["メーカー"],
                            hinmei        = dat["品名型式"],
                            suryo         = dat["数量"],
                            uriagetanka   = dat["売上単価"],
                            uriagekingaku = dat["売上金額"],
                            biko          = dat["備考"],
                            kensyu        = dat["検収状態"]
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtUriKensyuList = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtUriKensyuList, "得意先売上検収入力", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;

                // エラーロギング
                new CommonException(ex);

                // Excel出力失敗メッセージ
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excel出力に失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void excelTokuteimukesakiTanka()
        {
            //SQL実行時に取り出したデータを入れる用
            DataTable dtSetCd_B = new DataTable();

            try
            {
                dtSetCd_B = (DataTable)gridTokuteimukesakiTanka.DataSource;

                BaseMessageBox basemessagebox;
                //取得したデータがない場合
                if (dtSetCd_B == null || dtSetCd_B.Rows.Count == 0)
                {
                    //例外発生メッセージ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }

                // SaveFileDialogクラスのインスタンスを作成
                SaveFileDialog sfd = new SaveFileDialog();
                // ファイル名の指定
                sfd.FileName = "CBC単価マスタ_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
                // デフォルトパス取得(デスクトップ)
                string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                //はじめに表示されるフォルダを指定する
                sfd.InitialDirectory = Init_dir;
                // ファイルフィルタの設定
                sfd.Filter = "すべてのファイル(*.*)|*.*";

                //ダイアログを表示する
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    CreatePdf cpdf = new CreatePdf();

                    //Linqで必要なデータをselect
                    var outDataAll = dtSetCd_B.AsEnumerable()
                                     .Select(dat => new
                    {
                        kataban        = dat["型番"],
                        tanka          = dat["単価"],
                        simukesaki     = dat["仕向先"],
                        saisyuSiireYMD = dat["最終仕入日"],
                    }).ToList();

                    //リストをデータテーブルに変換
                    DataTable dtChkList = cpdf.ConvertToDataTable(outDataAll);

                    string[] header =
                    {
                        "型 番",
                        "単 価",
                        "仕向先",
                        "最終仕入日",
                    };

                    string outFile = sfd.FileName;

                    // Excel作成処理
                    cpdf.DtToXls(dtChkList, "特定向け先単価一覧表", outFile, 3, 1, header);

                    // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                    basemessagebox.ShowDialog();
                }
            }
            catch (Exception ex)
            {
                //データロギング
                new CommonException(ex);
                //例外発生メッセージ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, CommonTeisu.LABEL_ERROR_MESSAGE, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();
                return;
            }
        }
        /// <summary>
        /// F10:Excel出力
        /// </summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "仕入実績確認_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            try
            {
                // 検索条件格納用
                List <string> lstSearchItem  = new List <string>();
                List <Array>  lstSearchItem2 = new List <Array>();

                DataTable dtSiireJisseki = new DataTable();

                // データチェック
                if (!blnDataCheck())
                {
                    return;
                }

                // ヘッダーに条件を出力する値
                lstSearchItem.Add(labelSet_Siiresaki.ValueLabelText);   //仕入先名
                lstSearchItem.Add(labelSet_Daibunrui.ValueLabelText);   //大分類名
                lstSearchItem.Add(labelSet_Chubunrui.ValueLabelText);   //中分類名

                // ビジネス層のインスタンス生成
                D0320_SiireJissekiKakunin_B siireB = new D0320_SiireJissekiKakunin_B();

                // 検索データをリストに格納
                lstSearchItem  = setSearchList();
                lstSearchItem2 = getRadioBtn();

                // 検索実行
                dtSiireJisseki = siireB.getSiireJissekiList(lstSearchItem, lstSearchItem2);

                if (dtSiireJisseki != null && dtSiireJisseki.Rows.Count > 0)
                {
                    // ダイアログ表示
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "仕入日",
                            "伝票番号",
                            "メーカー",
                            "品名・型式",
                            "数量",
                            "仕入単価",
                            "仕入金額",
                            "備考",
                            "出荷先",
                            "仕入先",
                            "発注番号",
                            "発注担当",
                            "仕入担当",
                            "受注番号",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtSiireJisseki.AsEnumerable()
                                     .Select(dat => new
                        {
                            denYmd       = dat["伝票年月日"],
                            denNo        = dat["伝票番号"],
                            maker        = dat["メーカー"],
                            hinkata      = dat["品名型式"],
                            suryo        = dat["数量"],
                            siireTanka   = dat["仕入単価"],
                            siireKingaku = dat["仕入金額"],
                            biko         = dat["備考"],
                            shukaName    = dat["出荷先名"],
                            siireName    = dat["仕入先名"],
                            hachuNo      = dat["発注番号"],
                            hachuName    = dat["発注担当"],
                            siireTanto   = dat["仕入担当"],
                            juchuNo      = dat["受注番号"],
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtSiireJiseki = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtSiireJiseki, "仕入実績確認", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;

                // エラーロギング
                new CommonException(ex);

                // Excel出力失敗メッセージ
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excel出力に失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }
        /// <summary>
        /// F10:Excel出力
        /// </summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "商品群別売上仕入管理表_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            try
            {
                // データチェック処理
                if (!dataCheack())
                {
                    return;
                }

                // データ検索用
                List <string> lstSearchItem = new List <string>();

                this.Cursor = Cursors.WaitCursor;

                // ビジネス層のインスタンス生成
                C0650_SyohingunUriageSiirePrint_B syohingunuriagesiireprintB = new C0650_SyohingunUriageSiirePrint_B();

                // 検索するデータをリストに格納
                lstSearchItem.Add(txtKamikiYMDopen.Text);               //[0]
                lstSearchItem.Add(txtKamikiYMDclose.Text);              //[1]
                lstSearchItem.Add(txtSimokiYMDopen.Text);               //[2]
                lstSearchItem.Add(txtSimokiYMDclose.Text);              //[3]
                lstSearchItem.Add(labelSet_Torihikisaki.CodeTxtText);   //[4]
                lstSearchItem.Add(labelSet_Tantousha.CodeTxtText);      //[5]
                lstSearchItem.Add(labelSet_Daibunrui.CodeTxtText);      //[6]
                lstSearchItem.Add(labelSet_Chubunrui.CodeTxtText);      //[7]
                lstSearchItem.Add(labelSet_Maker.CodeTxtText);          //[8]

                // 検索実行
                DataTable dtSyohingunUriageSiire = syohingunuriagesiireprintB.getSyohingunUriageSiireItiran(lstSearchItem);

                this.Cursor = Cursors.Default;

                if (dtSyohingunUriageSiire.Rows.Count > 0)
                {
                    // ダイアログ表示
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "大分類名",
                            "中分類名",
                            "上期売上高",
                            "上期仕入高",
                            "下期売上高",
                            "下期仕入高",
                            "合計売上高",
                            "合計仕入高",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtSyohingunUriageSiire.AsEnumerable()
                                     .Select(dat => new
                        {
                            daiName          = dat["大分類名"],
                            chuName          = dat["中分類名"],
                            kamiUriKingaku   = dat["上期売上額"],
                            kamiSiireKingaku = dat["上期仕入額"],
                            simoUriKingaku   = dat["下期売上額"],
                            simoSiireKingaku = dat["下期仕入額"],
                            uriKeiKingaku    = dat["合計売上額"],
                            siireKeiKingaku  = dat["合計仕入額"],
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtShohin = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtShohin, "商品群別売上仕入管理表", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;

                // エラーロギング
                new CommonException(ex);

                // Excel出力失敗メッセージ
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excel出力に失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }
示例#10
0
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "仕入チェックリスト_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            try
            {
                // データ検索用
                List <string> lstSearchItem = new List <string>();

                //年月日の日付フォーマット後を入れる用
                string strYMDformat = "";

                //待機状態
                Cursor.Current = Cursors.WaitCursor;

                // 空文字判定(入力年月日(開始))
                if (txtInputYMDStart.blIsEmpty() == false)
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。日付を入力してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtInputYMDStart.Focus();

                    return;
                }

                // 空文字判定(入力年月日(終了))
                if (txtInputYMDEnd.blIsEmpty() == false)
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。日付を入力してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtInputYMDEnd.Focus();

                    return;
                }

                // 空文字判定(伝票年月日(開始))
                if (txtDenpyoYMDStart.blIsEmpty() == false)
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。日付を入力してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtDenpyoYMDStart.Focus();

                    return;
                }

                // 空文字判定(伝票年月日(終了))
                if (txtDenpyoYMDEnd.blIsEmpty() == false)
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。日付を入力してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtDenpyoYMDEnd.Focus();

                    return;
                }

                //日付フォーマット生成、およびチェック
                strYMDformat = txtInputYMDStart.chkDateDataFormat(txtInputYMDStart.Text);

                //開始入力年月日の日付チェック
                if (strYMDformat == "")
                {
                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtInputYMDStart.Focus();

                    return;
                }
                else
                {
                    txtInputYMDStart.Text = strYMDformat;
                }

                //初期化
                strYMDformat = "";

                //日付フォーマット生成、およびチェック
                strYMDformat = txtInputYMDEnd.chkDateDataFormat(txtInputYMDEnd.Text);

                //終了入力年月日の日付チェック
                if (strYMDformat == "")
                {
                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtInputYMDEnd.Focus();

                    return;
                }
                else
                {
                    txtInputYMDEnd.Text = strYMDformat;
                }

                //初期化
                strYMDformat = "";

                //日付フォーマット生成、およびチェック
                strYMDformat = txtDenpyoYMDStart.chkDateDataFormat(txtDenpyoYMDStart.Text);

                //開始伝票年月日の日付チェック
                if (strYMDformat == "")
                {
                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtDenpyoYMDStart.Focus();

                    return;
                }
                else
                {
                    txtDenpyoYMDStart.Text = strYMDformat;
                }

                //初期化
                strYMDformat = "";

                //日付フォーマット生成、およびチェック
                strYMDformat = txtDenpyoYMDEnd.chkDateDataFormat(txtDenpyoYMDEnd.Text);

                //終了伝票年月日の日付チェック
                if (strYMDformat == "")
                {
                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtDenpyoYMDEnd.Focus();

                    return;
                }
                else
                {
                    txtDenpyoYMDEnd.Text = strYMDformat;
                }

                // ビジネス層のインスタンス生成
                A0090_SiireCheckPrint_B checkPrintB = new A0090_SiireCheckPrint_B();

                // 検索するデータをリストに格納
                lstSearchItem.Add(txtInputYMDStart.Text);
                lstSearchItem.Add(txtInputYMDEnd.Text);
                lstSearchItem.Add(txtDenpyoYMDStart.Text);
                lstSearchItem.Add(txtDenpyoYMDEnd.Text);
                lstSearchItem.Add(txtUserId.Text);
                lstSearchItem.Add(labelSet_SiiresakiCdFrom.CodeTxtText);
                lstSearchItem.Add(labelSet_SiiresakiCdTo.CodeTxtText);

                // 検索実行
                DataTable dtSiireCheckList = checkPrintB.getSiireCheckList(lstSearchItem);
                // カーソルをデフォルトに戻す
                this.Cursor = Cursors.Default;

                if (dtSiireCheckList.Rows.Count > 0)
                {
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "コード",
                            "仕入先名",
                            "年月日",
                            "伝票番号",
                            "取引区分",
                            "品名・型番",
                            "数量",
                            "単価",
                            "金額",
                            "備考",
                            "伝票合計",
                            "消費税",
                            "税込み計",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtSiireCheckList.AsEnumerable()
                                     .Select(dat => new
                        {
                            code                = dat["仕入先コード"],
                            siiresakiName       = dat["仕入先名"],
                            denYmd              = dat["伝票年月日"],
                            denNo               = dat["伝票番号"],
                            torihikiKbn         = dat["取引区分名"],
                            hinmei              = dat["品名"],
                            suryo               = dat["数量"],
                            siireTanka          = dat["仕入単価"],
                            siireKingaku        = dat["仕入金額"],
                            biko                = dat["備考"],
                            zeinukiGokeiKingaku = dat["税抜合計金額"],
                            zeiKingaku          = dat["消費税"],
                            zeikomiGokeiKingaku = dat["税込合計金額"],
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtSiireChk = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtSiireChk, "仕入チェックリスト", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;

                // エラーロギング
                new CommonException(ex);

                // Excel出力失敗メッセージ
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excel出力に失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void excelShireMotocyoKakunin()
        {
            //SQL実行時に取り出したデータを入れる用
            DataTable dtPrintData = new DataTable();

            //印刷対象の選択用
            string strInsatsuSelect = "";

            //営業所の選択用
            string strEigyosho = "";

            //年月日の日付フォーマット後を入れる用
            string strYMDformat = "";

            //得意先コードの検索開始項目のチェック
            if (labelSet_SiiresakiStart.codeTxt.blIsEmpty() == false ||
                StringUtl.blIsEmpty(labelSet_SiiresakiStart.ValueLabelText) == false ||
                labelSet_SiiresakiStart.chkTxtTorihikisaki() == true)
            {
                labelSet_SiiresakiStart.Focus();
                return;
            }

            //得意先コードの終了開始項目のチェック
            if (labelSet_SiiresakiEnd.codeTxt.blIsEmpty() == false ||
                StringUtl.blIsEmpty(labelSet_SiiresakiEnd.ValueLabelText) == false ||
                labelSet_SiiresakiEnd.chkTxtTorihikisaki() == true)
            {
                //例外発生メッセージ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, "仕入先コードを範囲で指定してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                labelSet_SiiresakiEnd.Focus();
                return;
            }

            //空文字判定(検索開始年月)
            if (txtYmStart.blIsEmpty() == false)
            {
                // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。\r\n条件を指定してください。 ", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                txtYmStart.Focus();

                return;
            }

            //空文字判定(検索終了年月)
            if (txtYmEnd.blIsEmpty() == false)
            {
                // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。\r\n条件を指定してください。 ", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                txtYmEnd.Focus();

                return;
            }

            //得意先開始チェック
            if (labelSet_SiiresakiStart.chkTxtTorihikisaki())
            {
                labelSet_SiiresakiStart.Focus();

                return;
            }

            //得意先終了チェック
            if (labelSet_SiiresakiEnd.chkTxtTorihikisaki())
            {
                labelSet_SiiresakiEnd.Focus();

                return;
            }

            //日付フォーマット生成、およびチェック
            strYMDformat = txtYmStart.chkDateYMDataFormat(txtYmStart.Text);

            //開始年月日の日付チェック
            if (strYMDformat == "")
            {
                // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                txtYmStart.Focus();

                return;
            }
            else
            {
                txtYmStart.Text = strYMDformat;
            }

            //初期化
            strYMDformat = "";

            //日付フォーマット生成、およびチェック
            strYMDformat = txtYmEnd.chkDateYMDataFormat(txtYmEnd.Text);

            //終了年月日の日付チェック
            if (strYMDformat == "")
            {
                // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                txtYmEnd.Focus();

                return;
            }
            else
            {
                txtYmEnd.Text = strYMDformat;
            }

            //印刷対象の範囲指定をする場合
            if (radSet_Insatsu.radbtn1.Checked == true)
            {
                strInsatsuSelect = "0";
            }
            else
            {
                strInsatsuSelect = "1";
            }

            //営業所の指定をする場合
            if (radSet_Eigyo.radbtn0.Checked == true)
            {
                strEigyosho = "0";
            }
            else if (radSet_Eigyo.radbtn1.Checked == true)
            {
                strEigyosho = "1";
            }
            else if (radSet_Eigyo.radbtn2.Checked == true)
            {
                strEigyosho = "2";
            }

            //その月の最終日を求める(年月日検索終了項目用)
            int intDay = DateTime.DaysInMonth(DateTime.Parse(txtYmEnd.Text).Year, DateTime.Parse(txtYmEnd.Text).Month);

            //印刷用データを入れる用
            List <string> lstPrintData = new List <string>();

            //印刷用データを入れる
            lstPrintData.Add(labelSet_SiiresakiStart.CodeTxtText);
            lstPrintData.Add(labelSet_SiiresakiEnd.CodeTxtText);
            lstPrintData.Add(DateTime.Parse(txtYmStart.Text).ToString("yyyy/MM/dd"));
            lstPrintData.Add(DateTime.Parse(txtYmEnd.Text).ToString("yyyy/MM/") + intDay.ToString());
            lstPrintData.Add(strInsatsuSelect);
            lstPrintData.Add(strEigyosho);

            //仕入先コード範囲内の取引先を取得
            E0340_SiiresakiMotochouKakunin_B siireB = new E0340_SiiresakiMotochouKakunin_B();

            try
            {
                //待機状態
                Cursor.Current = Cursors.WaitCursor;

                dtPrintData = siireB.getPrintData(lstPrintData);

                //元に戻す
                Cursor.Current = Cursors.Default;

                BaseMessageBox basemessagebox;
                //取得したデータがない場合
                if (dtPrintData == null || dtPrintData.Rows.Count == 0)
                {
                    //例外発生メッセージ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }

                // SaveFileDialogクラスのインスタンスを作成
                SaveFileDialog sfd = new SaveFileDialog();
                // ファイル名の指定
                sfd.FileName = "仕入先元帳_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
                // デフォルトパス取得(デスクトップ)
                string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
                //はじめに表示されるフォルダを指定する
                sfd.InitialDirectory = Init_dir;
                // ファイルフィルタの設定
                sfd.Filter = "すべてのファイル(*.*)|*.*";

                //ダイアログを表示する
                if (sfd.ShowDialog() == DialogResult.OK)
                {
                    CreatePdf cpdf = new CreatePdf();

                    // 出力するヘッダを設定
                    // Linqで必要なデータをselect
                    var outDataAll = dtPrintData.AsEnumerable()
                                     .Select(dat => new
                    {
                        TokuiCd              = dat["仕入先コード"],        //[0]ヘッダー表示のみ使用
                        TokuiName            = dat["仕入先名"],          //[1]ヘッダー表示のみ使用
                        TokuiYMD             = dat["年月日"],           //[2]
                        Tokuikbn             = dat["取引区分名"],         //[3]
                        TokuiShohinName      = dat["商品名"],           //[4]
                        TokuiSu              = dat["数量"],            //[5]
                        TokuiTan             = dat["仕入単価"],          //[6]
                        TokuiUrikingaku      = (decimal)dat["仕入金額"], //[7]
                        TokuiNyukingaku      = (decimal)dat["支払金額"], //[8]
                        TokuiSashiZankingaku = (decimal)dat["差引残高"], //[9]
                        TokuiBiko            = dat["備考"]             //[10]
                    }).ToList();

                    // リストをデータテーブルに変換
                    DataTable dtChkList = cpdf.ConvertToDataTable(outDataAll);

                    string[] header =
                    {
                        "コード",
                        "仕入先名",
                        "年月日",
                        "取引区分名",
                        "商品名",
                        "数量",
                        "仕入単価",
                        "仕入金額",
                        "支払金額",
                        "差引残高",
                        "備考",
                    };

                    string outFile = sfd.FileName;

                    // Excel作成処理
                    cpdf.DtToXls(dtChkList, "仕 入 先 元 帳", outFile, 3, 1, header);

                    // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                    basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                    basemessagebox.ShowDialog();
                }
            }
            catch (Exception ex)
            {
                //データロギング
                new CommonException(ex);
                //例外発生メッセージ(OK)
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, CommonTeisu.LABEL_ERROR_MESSAGE, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();
                return;
            }
        }
示例#12
0
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "買掛金残高一覧確認_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            if (sfd.ShowDialog() == DialogResult.OK)
            {
                // グリッドに表示されていない場合
                if (gridTokuisaki.Rows.Count == 0)
                {
                    return;
                }

                //データの取り出し用
                DataTable dtPrintData = new DataTable();

                //列情報を取得
                DataGridViewColumnCollection cols = gridTokuisaki.Columns;

                //行情報を取得
                DataGridViewRowCollection rows = gridTokuisaki.Rows;

                //取引先経理情報登録時の情報
                List <string> lstTorihiki = new List <string>();

                //年月日の日付フォーマット後を入れる用
                string strYMDformat = "";

                this.Cursor = Cursors.WaitCursor;

                //空チェック(開始得意先コード)
                if (StringUtl.blIsEmpty(lblsetTokuisakiCdopen.CodeTxtText) == false)
                {
                    this.Cursor = Cursors.Default;

                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。\r\n日付を入力してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    lblsetTokuisakiCdopen.Focus();
                    return;
                }

                //空チェック(終了得意先コード)
                if (StringUtl.blIsEmpty(lblsetTokuisakiCdclose.CodeTxtText) == false)
                {
                    this.Cursor = Cursors.Default;

                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。\r\n日付を入力してください。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    lblsetTokuisakiCdclose.Focus();
                    return;
                }

                //日付フォーマット生成、およびチェック
                strYMDformat = txtYMopen.chkDateYMDataFormat(txtYMopen.Text);

                //開始年月日の日付チェック
                if (strYMDformat == "")
                {
                    this.Cursor = Cursors.Default;

                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtYMopen.Focus();

                    return;
                }
                else
                {
                    txtYMopen.Text = strYMDformat;
                }

                //初期化
                strYMDformat = "";

                //日付フォーマット生成、およびチェック
                strYMDformat = txtYMclose.chkDateYMDataFormat(txtYMclose.Text);

                //終了年月日の日付チェック
                if (strYMDformat == "")
                {
                    this.Cursor = Cursors.Default;

                    // メッセージボックスの処理、項目が日付でない場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "入力された日付が正しくありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();

                    txtYMclose.Focus();

                    return;
                }
                else
                {
                    txtYMclose.Text = strYMDformat;
                }

                this.Cursor = Cursors.Default;

                //年月日が空の場合
                if (txtYMopen.blIsEmpty() == false)
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。\r\n日付を入力してください。 ", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    txtYMopen.Focus();
                    return;
                }

                //年月日が空の場合
                if (txtYMclose.blIsEmpty() == false)
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "項目が空です。\r\n日付を入力してください。 ", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    txtYMclose.Focus();
                    return;
                }

                //検索開始得意先コードのチェック
                if (lblsetTokuisakiCdopen.chkTxtTorihikisaki() == true)
                {
                    lblsetTokuisakiCdopen.Focus();

                    return;
                }

                //検索終了得意先コードのチェック
                if (lblsetTokuisakiCdclose.chkTxtTorihikisaki() == true)
                {
                    lblsetTokuisakiCdclose.Focus();

                    return;
                }

                this.Cursor = Cursors.WaitCursor;

                DataTable dtGridViewTokusaki = new DataTable();

                List <string> lstStringViewData = new List <string>();

                lstStringViewData.Add(lblsetTokuisakiCdopen.CodeTxtText);

                lstStringViewData.Add(lblsetTokuisakiCdclose.CodeTxtText);

                string strShuturyoku = "";

                //出力順のラジオボタン判定
                if (radShuturyoku.radbtn0.Checked == true)
                {
                    strShuturyoku = "Tokuisaki";
                }
                else
                {
                    strShuturyoku = "Hurigana";
                }

                lstStringViewData.Add(DateTime.Parse(txtYMopen.Text).ToString("yyyy/MM/dd"));
                lstStringViewData.Add(DateTime.Parse(txtYMclose.Text).ToString("yyyy/MM/dd"));
                lstStringViewData.Add(strShuturyoku);

                C0520_KaikakekinZandakaIchiranKakunin_B kaikakekakuninB = new C0520_KaikakekinZandakaIchiranKakunin_B();

                try
                {
                    DataTable dtXlsData = kaikakekakuninB.getPrintData(lstStringViewData);

                    if (dtXlsData.Rows.Count > 0)
                    {
                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "コード",
                            "得意先名",
                            "年月",
                            "前月買掛残",
                            "支払現金",
                            "支払小切手",
                            "支払振込",
                            "支払手形",
                            "支払相殺",
                            "支払手数料",
                            "支払その他",
                            "繰越残高",
                            "当月仕入高",
                            "当月消費税",
                            "当月残高",
                            "税区",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtXlsData.AsEnumerable()
                                     .Select(dat => new
                        {
                            code                   = dat["コード"],
                            tokuisakiName          = dat["得意先名"],
                            YM                     = dat["年月"],
                            zenkaikakezanKingaku   = dat["前月買掛残"],
                            siharaiGenkinKingaku   = dat["支払現金"],
                            siharaiKogiteKingaku   = dat["支払小切手"],
                            siharaiFurikomiKingaku = dat["支払振込"],
                            siharaiTegataKingaku   = dat["支払手形"],
                            siharaiSosaiKingaku    = dat["支払相殺"],
                            siharaiTesuryoKingaku  = dat["支払手数料"],
                            siharaiSonotaKingaku   = dat["支払その他"],
                            kurikosizanKingaku     = dat["繰越残高"],
                            togetuUriageKingaku    = dat["当月仕入高"],
                            togetuZeiKingaku       = dat["当月消費税"],
                            togetuZanKingaku       = dat["当月残高"],
                            zeiku                  = dat["税区"]
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtKaikakeZan = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtKaikakeZan, "買掛金残高一覧確認", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                catch (Exception ex)
                {
                    this.Cursor = Cursors.Default;

                    //データロギング
                    new CommonException(ex);
                    //例外発生メッセージ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_ERROR, CommonTeisu.LABEL_ERROR_MESSAGE, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }
            }
        }
        ///<summary>
        ///     F10:Excel出力
        ///</summary>
        private void exportXls()
        {
            // SaveFileDialogクラスのインスタンスを作成
            SaveFileDialog sfd = new SaveFileDialog();

            // ファイル名の指定
            sfd.FileName = "売上チェックリスト_" + DateTime.Now.ToString("yyyy_MM_dd_HH_mm_ss") + ".xlsx";
            // デフォルトパス取得(デスクトップ)
            string Init_dir = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);

            //はじめに表示されるフォルダを指定する
            sfd.InitialDirectory = Init_dir;
            // ファイルフィルタの設定
            sfd.Filter = "すべてのファイル(*.*)|*.*";

            try
            {
                // データチェック処理
                if (!dataCheack())
                {
                    return;
                }

                // データ検索用
                List <string> lstSearchItem = new List <string>();

                //待機状態
                Cursor.Current = Cursors.WaitCursor;

                // ビジネス層のインスタンス生成
                A0150_UriageCheckPrint_B uriagecheckprintB = new A0150_UriageCheckPrint_B();

                // 検索するデータをリストに格納
                lstSearchItem.Add(txtNyuryokuYMDstart.Text);
                lstSearchItem.Add(txtNyuryokuYMDend.Text);
                lstSearchItem.Add(txtDenpyoYMDstart.Text);
                lstSearchItem.Add(txtDenpyoYMDend.Text);
                lstSearchItem.Add(txtUserID.Text);
                lstSearchItem.Add(labelSet_TokuisakiCdFrom.CodeTxtText);
                lstSearchItem.Add(labelSet_TokuisakiCdTo.CodeTxtText);

                // 検索実行(印刷用)
                DataTable dtUriageChk = uriagecheckprintB.getUriageCheckList(lstSearchItem);

                // カーソルをデフォルトに戻す
                this.Cursor = Cursors.Default;

                if (dtUriageChk.Rows.Count > 0)
                {
                    if (sfd.ShowDialog() == DialogResult.OK)
                    {
                        //待機状態
                        Cursor.Current = Cursors.WaitCursor;

                        CreatePdf cpdf = new CreatePdf();

                        // 出力するヘッダを設定
                        string[] header =
                        {
                            "コード",
                            "得意先名",
                            "年月日",
                            "伝票番号",
                            "取引区分",
                            "品名・型番",
                            "数量",
                            "単価",
                            "金額",
                            "備考",
                            "伝票合計",
                            "消費税",
                            "税込み計",
                        };

                        // Linqで出力対象の項目をSelect
                        // カラム名は以下のようにつける(カラム名でフォーマットを判断するため)
                        // 金額関係:***kingaku
                        // 単価関係:***tanka
                        // 原価:***genka
                        // 数量:***suryo
                        var outDat = dtUriageChk.AsEnumerable()
                                     .Select(dat => new
                        {
                            code                = dat["得意先コード"],
                            siiresakiName       = dat["得意先名"],
                            denYmd              = dat["伝票年月日"],
                            denNo               = dat["伝票番号"],
                            torihikiKbn         = dat["取引区分名"],
                            hinmei              = dat["品名"],
                            suryo               = dat["数量"],
                            siireTanka          = dat["単価"],
                            siireKingaku        = dat["金額"],
                            biko                = dat["備考"],
                            zeinukiGokeiKingaku = dat["税抜合計金額"],
                            zeiKingaku          = dat["消費税"],
                            zeikomiGokeiKingaku = dat["税込合計金額"],
                        }).ToList();

                        // listをDataTableに変換
                        DataTable dtSiireChk = cpdf.ConvertToDataTable(outDat);

                        string outFile = sfd.FileName;

                        cpdf.DtToXls(dtSiireChk, "売上チェックリスト", outFile, 3, 1, header);

                        this.Cursor = Cursors.Default;

                        // メッセージボックスの処理、Excel作成完了の場合のウィンドウ(OK)
                        BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excelファイルを作成しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_INFOMATION);
                        basemessagebox.ShowDialog();
                    }
                }
                else
                {
                    // メッセージボックスの処理、項目が空の場合のウィンドウ(OK)
                    BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, "対象のデータはありません", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                    basemessagebox.ShowDialog();
                    return;
                }
            }
            catch (Exception ex)
            {
                this.Cursor = Cursors.Default;

                // エラーロギング
                new CommonException(ex);

                // Excel出力失敗メッセージ
                BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "Excel出力に失敗しました。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR);
                basemessagebox.ShowDialog();

                return;
            }
        }