/// <summary> /// 新規伝票番号を取得する /// </summary> /// <param name="slipNumber">明細番号ID</param> /// <param name="userId">ログインユーザID</param> /// <returns></returns> public int getNextNumber(Const.明細番号ID slipNumber, int userId) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); var ret = context.M88_SEQ .Where(w => w.明細番号ID == (int)slipNumber); int num = 0; // 存在しない場合は作成した上で再取得する if (ret.Count() == 0) { createData(userId); num = getNextNumber(slipNumber, userId); } else { // 新規番号取得 M88_SEQ m88 = ret.First(); num = m88.現在明細番号 + 1; // 現在明細番号をカウントアップして更新 m88.現在明細番号++; m88.最終更新者 = userId; m88.最終更新日時 = DateTime.Now; m88.AcceptChanges(); context.SaveChanges(); } return(num); } }
/// <summary> /// 伝票番号を次の番号へ更新する /// </summary> /// <param name="slipNumber"></param> public void setNextNumber(Const.明細番号ID slipNumber) { using (TRAC3Entities context = new TRAC3Entities(CommonData.TRAC3_GetConnectionString())) { context.Connection.Open(); // 指定情報を取得 var ret = context.M88_SEQ .Where(w => w.明細番号ID == (int)slipNumber) .SingleOrDefault(); ret.現在明細番号 = ret.現在明細番号 + 1; ret.最終更新日時 = DateTime.Now; ret.AcceptChanges(); context.SaveChanges(); } }