///----------------------------------------------------------------------------- /// <summary> /// 得意先情報をDataTableからClsCsvData.ClsCsvTokuisakiクラスに取得 : /// 2020/04/09</summary> /// <param name="tID"> /// 得意先コード</param> /// <returns> /// ClsCsvData.ClsCsvTokuisakiクラス</returns> ///----------------------------------------------------------------------------- public static ClsCsvData.ClsCsvTokuisaki GetTokuisakiFromDataTable(string tID, System.Data.DataTable data) { // 返り値クラス初期化 ClsCsvData.ClsCsvTokuisaki cls = new ClsCsvData.ClsCsvTokuisaki { TOKUISAKI_CD = "", YUKO_START_YMD = "", YUKO_END_YMD = "", TOKUISAKI_NM = "", TOKUISAKI_KANA_NM = "", TOKUISAKI_YUBIN_NO = "", TOKUISAKI_ZYUSYO1 = "", TOKUISAKI_ZYUSYO2 = "", TOKUISAKI_TEL = "", TOKUISAKI_FAX = "", DELFLG = global.FLGOFF }; DataRow[] rows = data.AsEnumerable().Where(a => a["TOKUISAKI_CD"].ToString().PadLeft(7, '0') == tID && a["DELFLG"].ToString() == global.FLGOFF).ToArray(); foreach (var t in rows) { // 有効開始日、有効終了日を検証する int cYuko_Start_Date = Utility.StrtoInt(t["YUKO_START_YMD"].ToString()); // 有効開始日付 int cYuko_End_Date = Utility.StrtoInt(t["YUKO_END_YMD"].ToString()); // 有効終了日付 int toDate = Utility.StrtoInt(DateTime.Today.Year.ToString() + DateTime.Today.Month.ToString("D2") + DateTime.Today.Day.ToString("D2")); if (cYuko_Start_Date > toDate) { continue; } if (cYuko_End_Date != global.flgOff) { if (toDate > cYuko_End_Date) { continue; } } cls.TOKUISAKI_CD = t["TOKUISAKI_CD"].ToString(); // 得意先コード cls.YUKO_START_YMD = t["YUKO_START_YMD"].ToString(); // 有効開始日付 cls.YUKO_END_YMD = t["YUKO_END_YMD"].ToString(); // 有効終了日付 cls.TOKUISAKI_NM = t["TOKUISAKI_NM"].ToString(); // 得意先名称 cls.TOKUISAKI_KANA_NM = t["TOKUISAKI_KANA_NM"].ToString(); // 得意先カナ名称 cls.TOKUISAKI_YUBIN_NO = t["TOKUISAKI_YUBIN_NO"].ToString(); // 郵便番号 cls.TOKUISAKI_ZYUSYO1 = t["TOKUISAKI_ZYUSYO1"].ToString(); // 得意先住所 cls.TOKUISAKI_ZYUSYO2 = t["TOKUISAKI_ZYUSYO2"].ToString(); // 得意先住所 cls.TOKUISAKI_TEL = t["TOKUISAKI_TEL"].ToString(); // 得意先TEL cls.TOKUISAKI_FAX = t["TOKUISAKI_FAX"].ToString(); // 得意先FAX cls.DELFLG = t["DELFLG"].ToString(); // 削除フラグ break; } return(cls); }
///---------------------------------------------------------------- /// <summary> /// 発注書パターンデータ表示 </summary> /// <param name="g"> /// DataGridViewオブジェクト</param> ///---------------------------------------------------------------- private void ShowPattern(DataGridView g) { this.Cursor = Cursors.WaitCursor; cn = new SQLiteConnection("DataSource=" + db_file); context = new DataContext(cn); dbPtn = context.GetTable <Common.ClsOrderPattern>(); // 発注書パターンを表示 g.Rows.Clear(); int cnt = 0; //int i = 0; foreach (var s in dbPtn.OrderBy(a => a.TokuisakiCode).ThenBy(a => a.SeqNum).ThenBy(a => a.SecondNum)) { int vI = 0; bool bl = false; ClsCsvData.ClsCsvTokuisaki tokuisaki = Utility.GetTokuisakiFromDataTable(s.TokuisakiCode.ToString("D7"), global.dtTokuisaki); if (tokuisaki.TOKUISAKI_CD == "") { continue; } // 検索得意先コード if (sCode.Text != string.Empty) { if (!tokuisaki.TOKUISAKI_CD.Contains(sCode.Text)) { continue; } } // 検索電話番号 if (sTel.Text != string.Empty) { if (!tokuisaki.TOKUISAKI_TEL.Contains(sTel.Text)) { continue; } } // 検索得意先名称 if (sName.Text != string.Empty) { if (!tokuisaki.TOKUISAKI_NM.Contains(sName.Text)) { continue; } } // 検索住所 if (sAddress.Text != string.Empty) { if (!tokuisaki.TOKUISAKI_ZYUSYO1.Contains(sAddress.Text) && !tokuisaki.TOKUISAKI_ZYUSYO2.Contains(sAddress.Text)) { continue; } } g.Rows.Add(); g[colNouCode, cnt].Value = s.TokuisakiCode; g[colNouName, cnt].Value = tokuisaki.TOKUISAKI_NM; g[colPtnID, cnt].Value = s.SeqNum.ToString().PadLeft(3, '0'); g[colSecondNum, cnt].Value = s.SecondNum.ToString().PadLeft(3, '0'); g[colMemo, cnt].Value = s.Memo; g[colTel, cnt].Value = tokuisaki.TOKUISAKI_TEL; g[colAddress, cnt].Value = tokuisaki.TOKUISAKI_ZYUSYO1 + " " + tokuisaki.TOKUISAKI_ZYUSYO2; g[colDate, cnt].Value = s.YyMmDd; g[colID, cnt].Value = s.ID.ToString(); cnt++; g.CurrentCell = null; } this.Cursor = Cursors.Default; if (cnt == 0) { MessageBox.Show("該当する発注書パターンはありませんでした", "検索結果", MessageBoxButtons.OK, MessageBoxIcon.Information); } }