/// <summary> /// 商品群データの登録・更新をおこなう /// </summary> /// <param name="updData"></param> /// <param name="pLoginUserCode"></param> /// <returns></returns> public int Update(DataSet ds, int pLoginUserCode) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { try { context.Connection.Open(); DataTable dt = ds.Tables["MST01011_GetData"]; foreach (DataRow rw in dt.Rows) { // 変更なしデータは処理対象外とする if (rw.RowState == DataRowState.Unchanged) { continue; } MST01011_spread row = getRowData(rw); // 対象データ取得 var data = context.M01_TOK .Where(w => w.取引先コード == row.取引先コード && w.枝番 == row.枝番) .FirstOrDefault(); if (data != null) { // 担当者コードが担当者マスタになければnullを代入 data.T担当者コード = context.M72_TNT.Any(c => c.担当者ID == row.請求担当者コード) ? row.請求担当者コード : (int?)null; data.S担当者コード = context.M72_TNT.Any(c => c.担当者ID == row.支払担当者コード) ? row.支払担当者コード : (int?)null; data.T消費税区分 = row.請求消費税区分; data.T消費税区分 = row.請求税区分ID; data.T締日 = row.請求締日; data.Tサイト1 = row.請求サイト; data.T入金日1 = row.請求入金日; data.T請求条件 = row.請求手形条件; data.T請求区分 = row.請求手形区分; data.Tサイト2 = row.請求手形サイト; data.T入金日2 = row.請求手形入金日; data.最終更新者 = pLoginUserCode; data.最終更新日時 = DateTime.Now; data.AcceptChanges(); } } context.SaveChanges(); } catch (Exception ex) { throw ex; } } return(1); }
/// <summary> /// 更新データ /// </summary> /// <param name="rw">DataRow</param> /// <returns></returns> private MST01011_spread getRowData(DataRow rw) { MST01011_spread data = new MST01011_spread(); int intWork; data.取引先コード = int.Parse(rw["取引先コード"].ToString()); data.枝番 = int.Parse(rw["枝番"].ToString()); data.請求担当者コード = int.TryParse(rw["請求担当者コード"].ToString(), out intWork) ? intWork : (int?)null; data.支払担当者コード = int.TryParse(rw["支払担当者コード"].ToString(), out intWork) ? intWork : (int?)null; data.請求消費税区分 = int.TryParse(rw["請求消費税区分"].ToString(), out intWork) ? intWork : 1; data.請求税区分ID = int.TryParse(rw["請求税区分ID"].ToString(), out intWork) ? intWork : 1; data.請求締日 = int.TryParse(rw["請求締日"].ToString(), out intWork) ? intWork : (int?)null; data.請求サイト = int.TryParse(rw["請求サイト"].ToString(), out intWork) ? intWork : (int?)null; data.請求入金日 = int.TryParse(rw["請求入金日"].ToString(), out intWork) ? intWork : (int?)null; data.請求手形条件 = int.TryParse(rw["請求手形条件"].ToString(), out intWork) ? intWork : 0; data.請求手形区分 = int.TryParse(rw["請求手形区分"].ToString(), out intWork) ? intWork : 2; data.請求手形サイト = int.TryParse(rw["請求手形サイト"].ToString(), out intWork) ? intWork : (int?)null; data.請求手形入金日 = int.TryParse(rw["請求手形入金日"].ToString(), out intWork) ? intWork : (int?)null; return(data); }