/// <summary> /// setSiire /// データをグリッドビューに追加 /// </summary> private void setSiire() { //記入項目の空白削除 labelSet_SiiresakiStart.CodeTxtText.Trim(); labelSet_SiiresakiEnd.CodeTxtText.Trim(); txtYmStart.Text.Trim(); txtYmStart.Text.Trim(); txtZeigaku.Text.Trim(); txtShiharaiKingaku.Text.Trim(); txtSiireKingaku.Text.Trim(); txtZeigaku.Text.Trim(); txtTougetsuZandaka.Text.Trim(); //検索時に必須条件を満たさない場合 if (labelSet_SiiresakiStart.codeTxt.blIsEmpty() == false || txtYmStart.blIsEmpty() == false || txtYmEnd.blIsEmpty() == false) { labelSet_SiiresakiStart.Focus(); return; } // 入力チェック(仕入先コード(取引先)) if (labelSet_SiiresakiStart.chkTxtTorihikisaki()) { return; } // 日付フォーマットチェック(検索年月Start) string sDatedata = txtYmStart.chkDateYMDataFormat(txtYmStart.Text); if ("".Equals(sDatedata)) { // メッセージボックスの処理 BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, CommonTeisu.LABEL_DATE_ALERT, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR); basemessagebox.ShowDialog(); return; } else { txtYmStart.Text = sDatedata; } // 日付フォーマットチェック(検索年月End) string eDatedata = txtYmEnd.chkDateYMDataFormat(txtYmEnd.Text); if ("".Equals(eDatedata)) { // メッセージボックスの処理 BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_INPUT, CommonTeisu.LABEL_DATE_ALERT, CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR); basemessagebox.ShowDialog(); return; } else { txtYmEnd.Text = eDatedata; } //仕入先コードの終了開始項目 if (labelSet_SiiresakiEnd.codeTxt.blIsEmpty() == true) { //得意先コードの範囲指定は出来ないメッセージ(OK) BaseMessageBox basemessagebox = new BaseMessageBox(this, CommonTeisu.TEXT_VIEW, "複数の仕入先コードは指定できません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR); basemessagebox.ShowDialog(); labelSet_SiiresakiEnd.Focus(); return; } // データ検索用 List <string> lstSearchItem = new List <string>(); // 得意先情報取得用 DataTable dtSiiresakiInfo; // 消費税区分 string kbnZei = ""; // 消費税計算区分 string kbnZeiKeisan = ""; string strYmStart = txtYmStart.Text + "/01"; DateTime dateYmEnd = DateTime.Parse(txtYmEnd.Text + "/01"); string strYmEnd = dateYmEnd.AddMonths(1).AddDays(-1).ToString().Substring(0, 10); // 検索データをリストに格納 lstSearchItem.Add(labelSet_SiiresakiStart.CodeTxtText); // 仕入先コード lstSearchItem.Add(strYmStart); // 検索開始年月日 lstSearchItem.Add(strYmEnd); // 検索終了年月日 lstSearchItem.Add(""); // 仕入金額 // 金額 decimal[] decKingku = new decimal[7]; // ビジネス層のインスタンス生成 E0340_SiiresakiMotochouKakunin_B siireB = new E0340_SiiresakiMotochouKakunin_B(); try { // 仕入先情報取得 dtSiiresakiInfo = siireB.getSiiresakiInfo(this.labelSet_SiiresakiStart.CodeTxtText); if (dtSiiresakiInfo.Rows.Count > 0) { kbnZei = dtSiiresakiInfo.Rows[0]["消費税区分"].ToString(); kbnZeiKeisan = dtSiiresakiInfo.Rows[0]["消費税計算区分"].ToString(); } decimal decGoukei = 0; decimal decZengetsuZandaka = 0; decimal decSiireKingaku = 0; decimal decShiharaiKingaku = 0; DataTable dtSiireList; // 買掛残高一覧表_繰越残高FROM取引先経理情報 dtSiireList = siireB.getSiireList(lstSearchItem, 1); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { txtZengetsuZandaka.Text = string.Format("{0:#,0}", decimal.Parse(dtSiireList.Rows[0][0].ToString())); } else { txtZengetsuZandaka.Text = "0"; } // 買掛残高一覧表_仕入ヘッダ_仕入高 dtSiireList = siireB.getSiireList(lstSearchItem, 2); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { txtSiireKingaku.Text = string.Format("{0:#,0}", decimal.Parse(dtSiireList.Rows[0][0].ToString())); } else { txtSiireKingaku.Text = "0"; } lstSearchItem[3] = decimal.Parse(txtSiireKingaku.Text).ToString(); // 買掛残高一覧表_仕入ヘッダ_消費税 dtSiireList = siireB.getSiireList(lstSearchItem, 3); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { txtZeigaku.Text = string.Format("{0:#,0}", decimal.Parse(dtSiireList.Rows[0][0].ToString())); } else { txtZeigaku.Text = "0"; } // 外税の場合 if (kbnZei.Equals("0") && kbnZeiKeisan.Equals("2")) { // 売掛残高一覧表_月間消費税 dtSiireList = siireB.getSiireList(lstSearchItem, 4); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { txtZeigaku.Text = string.Format("{0:#,0}", decimal.Parse(dtSiireList.Rows[0][0].ToString())); } else { txtZeigaku.Text = "0"; } } // 内税の場合 if (kbnZei.Equals("1")) { // 売掛残高一覧表_月間消費税 dtSiireList = siireB.getSiireList(lstSearchItem, 4); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { txtZeigaku.Text = string.Format("{0:#,0}", decimal.Parse(dtSiireList.Rows[0][0].ToString())); } else { txtZeigaku.Text = "0"; } // 仕入金額に値をセット decimal decSiire = decimal.Parse(txtSiireKingaku.Text) - decimal.Parse(txtZeigaku.Text); txtSiireKingaku.Text = decSiire.ToString("#,0"); } // 買掛残高一覧表_支払_現金 dtSiireList = siireB.getSiireList(lstSearchItem, 5); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[0] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[0] = 0; } // 買掛残高一覧表_支払_小切手 dtSiireList = siireB.getSiireList(lstSearchItem, 6); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[1] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[1] = 0; } // 買掛残高一覧表_支払_振込 dtSiireList = siireB.getSiireList(lstSearchItem, 7); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[2] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[2] = 0; } // 買掛残高一覧表_支払_手形 dtSiireList = siireB.getSiireList(lstSearchItem, 8); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[3] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[3] = 0; } // 買掛残高一覧表_支払_相殺 dtSiireList = siireB.getSiireList(lstSearchItem, 9); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[4] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[4] = 0; } // 買掛残高一覧表_支払_手数料 dtSiireList = siireB.getSiireList(lstSearchItem, 10); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[5] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[5] = 0; } // 買掛残高一覧表_支払_その他 dtSiireList = siireB.getSiireList(lstSearchItem, 11); if (dtSiireList != null && dtSiireList.Rows.Count > 0) { decKingku[6] = decimal.Parse(dtSiireList.Rows[0][0].ToString()); } else { decKingku[6] = 0; } // 支払金額 for (int cnt = 0; cnt < decKingku.Length; cnt++) { decGoukei += decKingku[cnt]; } txtShiharaiKingaku.Text = decGoukei.ToString("#,0"); // 当月残高 decimal decTougetsuZandaka = decimal.Parse(txtZengetsuZandaka.Text) - decimal.Parse(txtShiharaiKingaku.Text) + decimal.Parse(txtSiireKingaku.Text) + decimal.Parse(txtZeigaku.Text); txtTougetsuZandaka.Text = decTougetsuZandaka.ToString("#,0"); // 検索実行 dtSiireList = siireB.getSiireList(lstSearchItem, 12); // データテーブルからデータグリッドへセット gridSiire.DataSource = dtSiireList; if (dtSiireList != null && dtSiireList.Rows.Count > 0) { string strDate = ""; string strDenpyoNo = ""; for (int cnt = 0; cnt < gridSiire.RowCount; cnt++) { // 伝票年月日と伝票番号が同じ場合、伝票年月日と伝票番号を表示しない if (gridSiire.Rows[cnt].Cells["伝票年月日"].Value.ToString().Equals(strDate) && gridSiire.Rows[cnt].Cells["伝票番号"].Value.ToString().Equals(strDenpyoNo)) { // 仕入の場合、区分を表示しない if (gridSiire.Rows[cnt].Cells["取引区分"].Value.ToString().Equals("21")) { gridSiire.Rows[cnt].Cells["取引区分名"].Value = DBNull.Value; } gridSiire.Rows[cnt].Cells["伝票年月日"].Value = DBNull.Value; gridSiire.Rows[cnt].Cells["伝票番号"].Value = DBNull.Value; } else { strDate = gridSiire.Rows[cnt].Cells["伝票年月日"].Value.ToString(); strDenpyoNo = gridSiire.Rows[cnt].Cells["伝票番号"].Value.ToString(); } // 入金の場合はフォントカラーを変更 int intKubun = int.Parse(gridSiire.Rows[cnt].Cells["取引区分"].Value.ToString()); if (intKubun >= 31 && intKubun <= 37) { gridSiire.Rows[cnt].DefaultCellStyle.ForeColor = Color.Blue; } // 数量又は金額の空白チェック用フラグ bool blnBlankFlg = false; // 数量 decimal decSuuryo = 0; if (!decimal.TryParse(gridSiire.Rows[cnt].Cells["数量"].Value.ToString(), out decSuuryo)) { blnBlankFlg = true; } // 金額 decimal decKingaku = 0; if (!decimal.TryParse(gridSiire.Rows[cnt].Cells["仕入金額"].Value.ToString(), out decKingaku)) { blnBlankFlg = true; } // 数量又は金額が空白ではなく、かつ、マイナスの場合はフォントカラーを変更 if (!blnBlankFlg && (decSuuryo < 0 || decKingaku < 0)) { gridSiire.Rows[cnt].DefaultCellStyle.ForeColor = Color.Red; } // 1行目の場合 if (cnt == 0) { decZengetsuZandaka = decimal.Parse(txtZengetsuZandaka.Text); } else { decZengetsuZandaka = decimal.Parse(gridSiire.Rows[cnt - 1].Cells["差引残高"].Value.ToString()); } // 仕入金額がなかった場合 if (!decimal.TryParse(gridSiire.Rows[cnt].Cells["仕入金額"].Value.ToString(), out decSiireKingaku)) { decSiireKingaku = 0; } // 支払金額がなかった場合 if (!decimal.TryParse(gridSiire.Rows[cnt].Cells["支払額"].Value.ToString(), out decShiharaiKingaku)) { decShiharaiKingaku = 0; } // 差引残高 decimal decSashihikiZandaka = decZengetsuZandaka + decSiireKingaku - decShiharaiKingaku; gridSiire.Rows[cnt].Cells["差引残高"].Value = decSashihikiZandaka.ToString("#,0"); } Control cNow = this.ActiveControl; cNow.Focus(); } // DataTableのレコード数取得 int dtCnt = dtSiireList.Rows.Count; if (dtCnt > 0) { // ステータスバーに検索結果表示 this.lblStatusMessage.Text = "検索終了(該当件数" + dtCnt + "件)"; } else { // ステータスバーに検索結果表示 this.lblStatusMessage.Text = "検索終了(該当なし)"; } } 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; } 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; } }
///<summary> ///printShireMotocyoKakunin ///印刷ダイアログ ///</summary> private void printShireMotocyoKakunin() { //SQL実行時に取り出したデータを入れる用 DataTable dtPrintData = new DataTable(); //PDF作成後の入れ物 string strFile = ""; //印刷対象の選択用 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; //データが無ければ if (dtPrintData.Rows.Count < 1) { //例外発生メッセージ(OK) BaseMessageBox basemessagebox = new BaseMessageBox(this, "印刷", "対象のデータがありません。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR); basemessagebox.ShowDialog(); return; } //初期値 Common.Form.PrintForm pf = new Common.Form.PrintForm(this, "", CommonTeisu.SIZE_A4, YOKO); pf.ShowDialog(this); //プレビューの場合 if (this.printFlg == CommonTeisu.ACTION_PREVIEW) { //待機状態 Cursor.Current = Cursors.WaitCursor; //結果セットをレコードセットに strFile = siireB.dbToPdf(dtPrintData, lstPrintData); //元に戻す Cursor.Current = Cursors.Default; //印刷できなかった場合 if (strFile == "") { //印刷時エラーメッセージ(OK) BaseMessageBox basemessagebox = new BaseMessageBox(this, "印刷", "印刷時エラーです。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR); basemessagebox.ShowDialog(); return; } // プレビュー pf.execPreview(strFile); } // 一括印刷の場合 else if (this.printFlg == CommonTeisu.ACTION_PRINT) { // PDF作成 strFile = siireB.dbToPdf(dtPrintData, lstPrintData); //印刷できなかった場合 if (strFile == "") { //印刷時エラーメッセージ(OK) BaseMessageBox basemessagebox = new BaseMessageBox(this, "印刷", "印刷時エラーです。", CommonTeisu.BTN_OK, CommonTeisu.DIAG_ERROR); basemessagebox.ShowDialog(); return; } // 一括印刷 pf.execPrint(null, strFile, CommonTeisu.SIZE_A4, CommonTeisu.YOKO, true); } } 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; } }