/// <summary> /// M50_RTBLの物理削除 /// </summary> /// <param name="m50RTBL">M50_RTBL_Member</param> public void Delete(int iタリフID) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); DateTime d削除日付 = DateTime.Now; //削除行を特定 var query = (from x in context.M50_RTBL where (x.タリフコード == iタリフID) orderby x.タリフコード select new M50_RTBL_Member { タリフID = x.タリフコード, 距離 = x.距離, 重量 = x.重量, 運賃 = x.運賃, }).ToList(); using (var tran = new TransactionScope()) { foreach (var data in query) { string sql = string.Empty; sql = string.Format("UPDATE M50_RTBL SET M50_RTBL.削除日付 = '{3}' WHERE M50_RTBL.タリフコード = '{0}' AND M50_RTBL.距離 = '{1}' AND M50_RTBL.重量 = '{2}'" , data.タリフID, data.距離, data.重量, d削除日付); int count = context.ExecuteStoreCommand(sql); } tran.Complete(); } } }
/// <summary> /// Spread情報変更 【UPDATE】 /// </summary> /// <param name="p明細番号"></param> /// <param name="p明細行"></param> /// <param name="colname"></param> /// <param name="val"></param> public void Update(int p明細番号, int p明細行, string colname, object val) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { // トランザクションのインスタンス化(開始) using (var tran = new TransactionScope()) { DateTime updtime = DateTime.Now; string sql = string.Empty; sql = string.Format("UPDATE T04_NYUK SET {0} = '{1}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行); context.Connection.Open(); int count = context.ExecuteStoreCommand(sql); // トリガが定義されていると、更新結果は複数行になる if (count > 0) { tran.Complete(); } else { // 更新行なし throw new Framework.Common.DBDataNotFoundException(); } } } }
/// <summary> /// F9(登録ボタン)での登録 /// </summary> /// <param name = "pタリフコード">タリフコード</param> /// <param name = "p距離">距離</param> /// <param name = "p重量">重量</param> public void M90_Insert(DataSet ds) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { // トランザクションのインスタンス化(開始) using (var tran = new TransactionScope()) { try { List <M90_ZEI_Member> retList = new List <M90_ZEI_Member>(); context.Connection.Open(); DataTable dt = ds.Tables["消費税マスタCSV登録"]; int 消費税率; int Cnt = 0; string 適用開始日付 = string.Empty; string 削除日付 = string.Empty; DateTime 登録日時, 更新日時; string sql = string.Empty; foreach (DataRow row in dt.Rows) { 適用開始日付 = dt.Rows[Cnt]["適用開始日付"].ToString().Substring(0, 10); 登録日時 = Convert.ToDateTime(dt.Rows[Cnt]["登録日時"].ToString()); 更新日時 = Convert.ToDateTime(dt.Rows[Cnt]["更新日時"].ToString()); 消費税率 = Convert.ToInt32(dt.Rows[Cnt]["消費税率"].ToString()); 削除日付 = dt.Rows[Cnt]["削除日付"].ToString() == "" ? "NULL" : dt.Rows[Cnt]["削除日付"].ToString(); //新規行登録処理 sql = string.Empty; sql = string.Format("INSERT INTO M73_ZEI (適用開始日付,登録日時,更新日時,消費税率,削除日時)VALUES('{0}','{1}','{2}','{3}',{4})" , 適用開始日付, 登録日時, 更新日時, 消費税率, 削除日付); int count = context.ExecuteStoreCommand(sql); Cnt += 1; } tran.Complete(); return; } catch (Exception ex) { Console.WriteLine("シートの中で重複したデータがあるため、登録できませんでした。"); return; throw ex; } } } }
/// <summary> /// データ削除 /// </summary> /// <param name="p明細番号"></param> /// <param name="p得意先ID"></param> /// <param name="p入金日付"></param> /// <returns></returns> public void DLY08010_DELETE(int i明細番号) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); // トランザクションのインスタンス化(開始) using (var tran = new TransactionScope()) { string sql = string.Empty; //編集モードで明細番号が一致するものを一旦削除 sql = string.Format("DELETE T04_NYUK WHERE T04_NYUK.明細番号 = '" + i明細番号 + "' "); int count = context.ExecuteStoreCommand(sql); tran.Complete(); } } }
/// <summary> /// F9(登録ボタン)での登録 /// </summary> /// <param name = "pタリフコード">タリフコード</param> /// <param name = "p距離">距離</param> /// <param name = "p重量">重量</param> public void Insert(DataSet ds) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); // トランザクションのインスタンス化(開始) using (var tran = new TransactionScope()) { try { DataTable dt = ds.Tables["タリフ登録"]; int タリフID, 距離, 重量, 運賃; int Cnt = 0; DateTime 登録日時, 更新日時, 削除日付; 削除日付 = DateTime.Now; 登録日時 = DateTime.Now; 更新日時 = DateTime.Now; int Val = 0; int iタリフID = Convert.ToInt32(dt.Rows[0]["タリフID"].ToString()); var query = from x in context.M50_RTBL where x.タリフコード == iタリフID select x; //新規登録 if (query.Count() == 0) { foreach (DataRow row in dt.Rows) { タリフID = Convert.ToInt32(dt.Rows[Cnt]["タリフID"].ToString()); 距離 = Convert.ToInt32(dt.Rows[Cnt]["距離"].ToString()); 重量 = Convert.ToInt32(dt.Rows[Cnt]["重量"].ToString()); 運賃 = Convert.ToInt32(dt.Rows[Cnt]["運賃"].ToString()); string sql = string.Empty; sql = string.Format("INSERT INTO M50_RTBL (タリフコード,距離,重量,登録日時,更新日時,運賃,削除日付)VALUES('{0}','{1}','{2}','{3}','{4}','{5}',NULL)" , タリフID, 距離, 重量, 登録日時, 更新日時, 運賃); int count = context.ExecuteStoreCommand(sql); Cnt += 1; } tran.Complete(); return; } else//編集 { foreach (DataRow row in dt.Rows) { if (Val == 0) { string Del = string.Empty; Del = string.Format("DELETE FROM M50_RTBL WHERE M50_RTBL.タリフコード = '" + iタリフID + "'"); int Delete = context.ExecuteStoreCommand(Del); } Val += 1; タリフID = Convert.ToInt32(dt.Rows[Cnt]["タリフID"].ToString()); 距離 = Convert.ToInt32(dt.Rows[Cnt]["距離"].ToString()); 重量 = Convert.ToInt32(dt.Rows[Cnt]["重量"].ToString()); 運賃 = Convert.ToInt32(dt.Rows[Cnt]["運賃"].ToString()); string sql = string.Empty; sql = string.Format("INSERT INTO M50_RTBL (タリフコード,距離,重量,更新日時,運賃)VALUES('{0}','{1}','{2}','{3}','{4}')" , タリフID, 距離, 重量, 更新日時, 運賃); int count = context.ExecuteStoreCommand(sql); Cnt += 1; } tran.Complete(); return; } } catch (Exception ex) { throw ex; } } } }
/// <summary> /// データ登録・変更 /// </summary> /// <param name="pno"></param> /// <param name="入金入力一覧表"></param> public int DLY08010_UPDATE(int pno, List <DLY08010_Member> 入金入力一覧表) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); //Pno(明細番号)がマイナス1では無かったら編集モード if (pno != -1) { // トランザクションのインスタンス化(開始) using (var tran = new TransactionScope()) { int i明細番号 = 入金入力一覧表[0].明細番号; pno = i明細番号; string sql = string.Empty; //編集モードで明細番号が一致するものを一旦削除 sql = string.Format("DELETE T04_NYUK WHERE T04_NYUK.明細番号 = '" + i明細番号 + "' "); int count = context.ExecuteStoreCommand(sql); tran.Complete(); } //編集モードで登録した全データをForeach文で回しながら登録 foreach (DLY08010_Member row in 入金入力一覧表) { DateTime result; //CmbBoxの入金区分が選択されていなければデータとして見ない if (row.入金区分 == 0) { //Continueで処理をせず次のデータを参照 continue; } //CmbBoxの入金区分が選択されていなければデータとして見ない //if (row.入金金額 == 0) //{ // //Continueで処理をせず次のデータを参照 // continue; //} int i取引先ID = 入金入力一覧表[0].得意先ID; var query = from m01 in context.M01_TOK where m01.得意先ID == i取引先ID select m01; var qm01 = query.FirstOrDefault(); T04_NYUK IT04 = new T04_NYUK(); IT04.更新日時 = DateTime.Now; IT04.明細番号 = row.明細番号; IT04.明細行 = row.明細行; IT04.明細区分 = 2; IT04.入出金日付 = row.入出金日付; IT04.取引先KEY = qm01.得意先KEY; IT04.入出金区分 = row.入金区分; IT04.入出金金額 = row.入金金額; IT04.摘要ID = row.摘要ID; IT04.摘要名 = row.摘要; IT04.手形日付 = DateTime.TryParse(row.Str手形期日, out result) == true ? result : (DateTime?)null; IT04.入力者ID = row.入力者ID; context.T04_NYUK.ApplyChanges(IT04); } context.SaveChanges(); } //Pno(明細番号)が-1だった場合は新規登録 else { // 新番号取得 var 明細番号M = (from n in context.M88_SEQ where n.明細番号ID == 1 select n ).FirstOrDefault(); if (明細番号M == null) { return(-1); } pno = 明細番号M.現在明細番号 + 1; 明細番号M.現在明細番号 = pno; 明細番号M.AcceptChanges(); //新規登録なのでデータは削除せずそのまま登録へ foreach (DLY08010_Member row in 入金入力一覧表) { DateTime result; int i取引先ID = 入金入力一覧表[0].得意先ID; //CmbBoxの入金区分が選択されていなければデータとして見ない if (row.入金区分 == 0) { //Continueで処理をせず次のデータを参照 continue; } //var T04 = query.FirstOrDefault(); var query = from m01 in context.M01_TOK where m01.得意先ID == i取引先ID select m01; var qm01 = query.FirstOrDefault(); T04_NYUK IT04 = new T04_NYUK(); IT04.更新日時 = DateTime.Now; IT04.明細番号 = pno; IT04.明細行 = row.明細行; IT04.明細区分 = 2; IT04.入出金日付 = row.入出金日付; IT04.取引先KEY = qm01.得意先KEY; IT04.入出金区分 = row.入金区分; IT04.入出金金額 = row.入金金額; IT04.摘要ID = row.摘要ID; IT04.摘要名 = row.摘要; IT04.手形日付 = DateTime.TryParse(row.Str手形期日, out result) == true ? result : (DateTime?)null; IT04.入力者ID = row.入力者ID; context.T04_NYUK.ApplyChanges(IT04); } context.SaveChanges(); } return(pno); } }
public void UpdateColumn(int p明細番号, int p明細行, string colname, object val, int kingaku, decimal tanka) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { //var query = (from t01 in context.T01_TRN // トランザクションのインスタンス化(開始) using (var tran = new TransactionScope()) { DateTime updtime = DateTime.Now; string sql = string.Empty; if (colname == "売上金額") { sql = string.Format("UPDATE T01_TRN SET {0} = '{1}' , 売上単価 = '{4}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, tanka.ToString()); } if (colname == "売上単価") { sql = string.Format("UPDATE T01_TRN SET {0} = '{1}' , 売上金額 = '{4}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, kingaku.ToString()); } if (colname == "支払金額") { sql = string.Format("UPDATE T01_TRN SET {0} = '{1}' , 支払単価 = '{4}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, tanka.ToString()); } if (colname == "支払単価") { sql = string.Format("UPDATE T01_TRN SET {0} = '{1}' , 支払金額 = '{4}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, kingaku.ToString()); } else if (colname == "Goukei") { sql = string.Format("UPDATE T01_TRN SET 売上金額 = '{4}' , 売上単価 = '{5}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, kingaku.ToString(), tanka.ToString()); } else if (colname == "Total") { sql = string.Format("UPDATE T01_TRN SET 支払金額 = '{4}' , 支払単価 = '{5}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, kingaku.ToString(), tanka.ToString()); } else { sql = string.Format("UPDATE T01_TRN SET {0} = '{1}' , 支払金額 = '{4}' , 支払単価 = '{5}' WHERE 明細番号 = {2} AND 明細行 = {3}" , colname, val.ToString(), p明細番号, p明細行, kingaku.ToString(), tanka.ToString()); } context.Connection.Open(); int count = context.ExecuteStoreCommand(sql); // トリガが定義されていると、更新結果は複数行になる if (count > 0) { tran.Complete(); } else { // 更新行なし throw new Framework.Common.DBDataNotFoundException(); } } } }
/// <summary> /// Spread情報変更 【UPDATE】 /// </summary> /// <param name="p明細番号"></param> /// <param name="p明細行"></param> /// <param name="colname"></param> /// <param name="val"></param> public void INSERT_GetData(object o車輌コード, object s車番, object s車種, string s目標燃費, object val, string s作成年月) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { //*** 変数定義 ***// int i年月 = Convert.ToInt32(s作成年月.Substring(0, 4) + s作成年月.Substring(5, 2)); int i車輌コード = Convert.ToInt32(o車輌コード); decimal d目標燃費 = Convert.ToDecimal(val); DateTime d更新日時 = DateTime.Now; DateTime d登録日時 = DateTime.Now; //*** 終了 ***// using (var tran = new TransactionScope()) { var query = (from m17 in context.M17_CYSN from m05 in context.M05_CAR.Where(c => c.車輌KEY == m17.車輌KEY) from m06 in context.M06_SYA.Where(c => c.車種ID == m05.車種ID) where m05.車輌ID == i車輌コード && m17.年月 == i年月 select new SERCHE_MST32010 { 車輌コード = m05.車輌ID, 車番 = m05.車輌番号, //車種 = m06.車種名, //目標燃費 = m17.目標燃費, }).AsQueryable(); var ret = (from m17 in context.M17_CYSN from m05 in context.M05_CAR.Where(c => c.車輌KEY == m17.車輌KEY) where m05.車輌ID == i車輌コード select new UPDATE_MST32010 { 車輌KEY = m17.車輌KEY, }).AsQueryable(); List <UPDATE_MST32010> retList = ret.ToList(); int 車輌KEY = retList[0].車輌KEY; string sql = string.Empty; if (query.Count() == 0) { //INSERT処理 sql = string.Format("INSERT INTO M17_CYSN (車輌KEY , 年月 , 登録日時 , 更新日時 , 目標燃費 , 削除日付)VALUES('{0}','{1}','{2}','','{3}',NULL)" , 車輌KEY, i年月, d登録日時, d目標燃費); } else { //UPDATE処理 sql = string.Format("UPDATE M17_CYSN SET 目標燃費 = '{3}' , 更新日時 = '{2}' WHERE 車輌KEY = {0} AND 年月 = {1}" , 車輌KEY, i年月, d更新日時, d目標燃費); } context.Connection.Open(); int count = context.ExecuteStoreCommand(sql); // トリガが定義されていると、更新結果は複数行になる if (count > 0) { tran.Complete(); } else { // 更新行なし throw new Framework.Common.DBDataNotFoundException(); } } } }
/// <summary> /// M74_KGRPの新規追加 /// </summary> /// <param name="M74kgrp">M74_KGRP_Member</param> //public void Insert(M74_KGRP_Member M74kgrp) //{ // using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) // { // context.Connection.Open(); // M74_KGRP m74 = new M74_KGRP(); // m74.グループ権限ID = M74kgrp.グループ権限ID; // m74.登録日時 = M74kgrp.登録日時; // m74.更新日時 = M74kgrp.更新日時; // try // { // // newノエンティティニ対シテハAcceptChangesデ新規追加トナル // context.M74_KGRP.ApplyChanges(m74); // context.SaveChanges(); // } // catch (UpdateException ex) // { // // PKey違反等 // Console.WriteLine(ex); // } // } //} /// <summary> /// M74_KGRPの更新 /// </summary> /// <param name="M74kgrp">M74_KGRP_Member</param> //public void Update(M74_KGRP_Member M74kgrp) //{ // using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) // { // context.Connection.Open(); // //更新行ヲ特定 // var m74 = // context.M74_KGRP // .Where(w => w.グループ権限ID == M74kgrp.グループ権限ID) // .FirstOrDefault(); // m74.グループ権限ID = M74kgrp.グループ権限ID; // m74.登録日時 = M74kgrp.登録日時; // m74.更新日時 = DateTime.Now; // m74.AcceptChanges(); // context.SaveChanges(); // } //} /// <summary> /// M74_KGRPの物理削除 /// </summary> /// <param name="M74kgrp">M74_KGRP_Member</param> //public void Delete(M74_KGRP_Member M74kgrp) //{ // using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) // { // context.Connection.Open(); // // 削除行を特定 // var m74 = // context.M74_KGRP // .Where(w => w.グループ権限ID == M74kgrp.グループ権限ID) // .FirstOrDefault(); // context.DeleteObject(m74); // context.SaveChanges(); // } //} /// <summary> /// 権限マスタの更新 /// 削除→追加(Delete→Insert) /// </summary> /// <param name="M74kgrp"></param> public void UPD_Data(List <M74_KGRP_UPD_Menber> pmM74, int pグループ権限ID, string pM74KGRPName) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); // データ削除 using (var tran = new TransactionScope()) { string sql = string.Empty; sql = string.Format("DELETE M74_KGRP WHERE M74_KGRP.グループ権限ID = {0} ", pグループ権限ID); int count = context.ExecuteStoreCommand(sql); tran.Complete(); } #region 権限グループ名マスタ登録・更新 //var M74Name = (from x in context.M74_KGRP_NAME // where x.グループ権限ID == pグループ権限ID // select x).FirstOrDefault(); var M74Name = context.M74_KGRP_NAME .Where(w => w.グループ権限ID == pグループ権限ID) .FirstOrDefault(); if (M74Name != null) { //Update M74Name.グループ権限名 = pM74KGRPName; M74Name.AcceptChanges(); context.SaveChanges(); } else { //Insert M74_KGRP_NAME m74ins = new M74_KGRP_NAME() { グループ権限ID = pグループ権限ID, グループ権限名 = pM74KGRPName, }; try { // newのエンティティに対してはAcceptChangesで新規追加となる context.M74_KGRP_NAME.ApplyChanges(m74ins); context.SaveChanges(); } catch (UpdateException ex) { // PKey違反等 Console.WriteLine(ex); } } #endregion #region 権限マスタ登録・更新 try { // 新規追加 foreach (M74_KGRP_UPD_Menber mM74 in pmM74) { M74_KGRP m74ins = new M74_KGRP() { グループ権限ID = mM74.グループ権限ID, プログラムID = mM74.プログラムID, タブグループ番号 = mM74.TabID, 使用可能FLG = mM74.使用可能FLG == true ? 1 : 0, データ更新FLG = mM74.データ更新FLG == true ? 1 : 0, 登録日時 = DateTime.Today, 更新日時 = DateTime.Today, 削除日付 = null }; // newのエンティティに対してはAcceptChangesで新規追加となる context.M74_KGRP.ApplyChanges(m74ins); } } catch (UpdateException ex) { // PKey違反等 Console.WriteLine(ex); throw ex; } context.SaveChanges(); #endregion } }