///------------------------------------------------------------------------------ /// <summary> /// CSVデータを勤怠チェックリストテーブルへ取込 </summary> ///------------------------------------------------------------------------------ public void writeChecklist() { //CSVデータを勤怠チェックリストテーブルへ取込 var s = System.IO.File.ReadAllLines(global.cnfPath + TXTFILE_SHAIN + ".csv", Encoding.Default); foreach (var stBuffer in s) { // カンマ区切りで分割して配列に格納する string[] stCSV = stBuffer.Split(','); // 登録済みなら削除する MTYSDataSet.勤怠チェックリストRow rr = _dts.勤怠チェックリスト.FindBy年月社員番号(global.cnfYear, global.cnfMonth, Utility.StrtoInt(stCSV[0])); if (rr != null) { rr.Delete(); cAdp.Update(_dts.勤怠チェックリスト); } // レコード追加処理 _dts.勤怠チェックリスト.Add勤怠チェックリストRow(setNewListRecRow(stCSV)); } // データベース更新 cAdp.Update(_dts.勤怠チェックリスト); }
/// -------------------------------------------------------------------------- /// <summary> /// 勤怠チェックリストテーブルにレコードを追加する </summary> /// <param name="stCSV"> /// 給与計算用CSVデータ配列</param> /// <returns> /// MTYSDataSet.勤怠チェックリストRow</returns> /// -------------------------------------------------------------------------- private MTYSDataSet.勤怠チェックリストRow setNewListRecRow(string[] stCSV) { MTYSDataSet.勤怠チェックリストRow r = _dts.勤怠チェックリスト.New勤怠チェックリストRow(); r.年 = global.cnfYear; r.月 = global.cnfMonth; r.社員番号 = Utility.StrtoInt(stCSV[0]); r.氏名 = stCSV[1]; r.フリガナ = stCSV[2]; // 社員情報を取得 MTYSDataSet.社員所属Row sr = _dts.社員所属.FindBy社員番号(Utility.StrtoInt(stCSV[0])); if (!sr.IsNull(0)) { r.帳票区分 = sr.帳票区分; r.所属コード = sr.所属コード; r.所属名 = sr.所属名称; } else { r.帳票区分 = 0; r.所属コード = 0; r.所属名 = string.Empty; } r.出勤すべき日数 = stCSV[3]; r.出勤日数 = stCSV[4]; r.勤日数 = stCSV[5]; r.給休暇 = stCSV[6]; r.特別休暇 = stCSV[7]; r.生理分娩休暇 = stCSV[8]; r.遅刻時間 = stCSV[9]; r.早退時間 = stCSV[10]; r.普通残業 = stCSV[11]; r.深夜残業 = stCSV[12]; r.休日勤務 = stCSV[13]; r.宿日直平日 = stCSV[14]; r.宿日直休日 = stCSV[15]; r.保安平日 = stCSV[16]; r.保安休日 = stCSV[17]; r.時差出勤 = stCSV[18]; r._1L勤 = stCSV[19]; r._2勤 = stCSV[20]; r.丸3勤 = stCSV[21]; r._3勤 = stCSV[22]; r.日祝日勤務 = stCSV[23]; r.控除日数 = stCSV[24]; r.残業60H超平日 = stCSV[25]; r.残業60H超休日 = stCSV[26]; r.更新年月日 = DateTime.Now; return(r); }