override public void LoadCSV(string filename) { OwnerDB.BeginTransaction(); using (var reader = new System.IO.StreamReader(filename, System.Text.Encoding.GetEncoding("shift_jis"))) { string line; Row row = new Row(this); while ((line = reader.ReadLine()) != null) { string[] token = line.Split('\t'); row.Set("keiri_kubun", CSVParser.ReadInt(token[1])); row.Set("nenndo", CSVParser.ReadDate(token[2])); row.Set("kamoku_id", CSVParser.ReadInt(token[3])); row.Set("zenki_kurikoshi_gaku", CSVParser.ReadAmount(token[4])); row.Set("taisyaku_kubun", CSVParser.ReadString(token[5])); this.Insert(row); } } OwnerDB.CommitTransaction(); }
// 指定月の伝票番号を設定しなおす public void RenumberDenpyouBangou(DateTime targetMonth, bool sortWithKaikeiTanni) { OwnerDB.BeginTransaction(); string kaikeiKubun = sortWithKaikeiTanni ? "kaikei_kubun, " : ""; string select_sql = string.Format("where kihyoubi_gengou='{0}' and kihyoubi_year={1} and kihyoubi_month={2} " + "order by {3} kihyoubi, denpyou_renban, id", helper.Converter.DateTimeToWarekiGengou(targetMonth), helper.Converter.DateTimeToWarekiYear(targetMonth), targetMonth.Month, kaikeiKubun); int renban = 0; string prevOriginalDenpyouBangou = null; foreach (var row in this.Select(select_sql)) { if (row.IsNull("kihyoubi")) { continue; } string originalDenpyouBangou = row.GetStr("denpyou_bangou", ""); if (prevOriginalDenpyouBangou != originalDenpyouBangou) { renban++; } this.SetColumnValue(row, "denpyou_renban", renban); string bangou = this.FormatDenpyouBangou(row.GetDate("kihyoubi").Value, renban); row.Set("denpyou_bangou_cache", bangou); row.Set("denpyou_bangou", bangou); this.Update(row); prevOriginalDenpyouBangou = originalDenpyouBangou; } OwnerDB.CommitTransaction(); }
public override bool SetColumnValue(Row row, string column, object val) { //System.Diagnostics.Debug.WriteLine("set column value:" + column + " value:" + val.ToString()); if (!base.SetColumnValue(row, column, val)) { return(false); } // 他のカラムを連動して変更 if (column == "kihyoubi_gengou" || column == "kihyoubi_year" || column == "kihyoubi_month" || column == "kihyoubi_day") { DateTime?date = helper.Converter.ObjToDateTime(row.Get("kihyoubi_gengou"), row.Get("kihyoubi_year"), row.Get("kihyoubi_month"), row.Get("kihyoubi_day")); SetColumnValue(row, "kihyoubi", date); } else if (column == "kihyoubi") { if (!row.IsNull(column)) { DateTime date = row.GetDate(column).Value; string denpyou_bangou = row.GetStr("denpyou_bangou_cache"); if (denpyou_bangou.Length >= 5 && denpyou_bangou.Substring(0, 5) == helper.Converter.DateTimeToWarekiStr(date).Replace("/", "").Substring(0, 5)) { } else { int renban = this.GetNextDenpyouRenban(date.Year, date.Month); row.Set("denpyou_renban", renban); SetColumnValue(row, "denpyou_bangou_cache", this.FormatDenpyouBangou(date, renban)); } } } else if (column == "denpyou_bangou_cache") { row.Set("editing", true); } else if (column == "karikata_hojo_seiri") { Row kamoku = (OwnerDB.Table(MTKanjouKamoku.TABLE_NAME) as MTKanjouKamoku).GetRowFromCodeCacheByTopParent( (int)row.GetLong("karikata_kamoku_id", -2), //科目IDが設定されていないときは補助IDも設定しない helper.Converter.ObjToString(val)); if (kamoku != null && !kamoku.IsNull("id")) { row.Set("karikata_hojo_id", kamoku.GetLong("id", -1)); } else { row.Set("karikata_hojo_id", null); } } else if (column == "kashikata_hojo_seiri") { Row kamoku = (OwnerDB.Table(MTKanjouKamoku.TABLE_NAME) as MTKanjouKamoku).GetRowFromCodeCacheByTopParent( (int)row.GetLong("kashikata_kamoku_id", -2), //科目IDが設定されていないときは補助IDも設定しない helper.Converter.ObjToString(val)); if (kamoku != null && !kamoku.IsNull("id")) { row.Set("kashikata_hojo_id", kamoku.GetLong("id", -1)); } else { row.Set("kashikata_hojo_id", null); } } else if (column == "tekiyou_id") /* 摘要を入力したときのみコメントを更新 * int? key = helper.Converter.ObjToIntObj(val); * if (key != null && (db_.Table(models.db.MTTekiyou.TABLE_NAME) as models.db.MTTekiyou).RowCache.ContainsKey(key.Value)) { * var tekiyou = (db_.Table(models.db.MTTekiyou.TABLE_NAME) as models.db.MTTekiyou).RowCache[key.Value]; * if (tekiyou != null) { * row.Set("comment", tekiyou.GetStr("tekiyou_mei")); * } * }*/ { } else if (column == "karikata_kamoku_code") { if (val == null) { row.Set("karikata_kamoku_id", null); row.Set("karikata_hojo_id", null); row.Set("karikata_hojo_seiri", null); } else { Row kamoku = (OwnerDB.Table(MTKanjouKamoku.TABLE_NAME) as MTKanjouKamoku).GetRowFromCodeCache( -1, helper.Converter.ObjToString(val)); if (kamoku != null) { row.Set("karikata_kamoku_id", kamoku.Get("id")); this.SetColumnValue(row, "karikata_hojo_seiri", row.GetStr("karikata_hojo_seiri")); } else { row.Set("karikata_kamoku_id", null); row.Set("karikata_hojo_id", null); } } } else if (column == "kashikata_kamoku_code") { if (val == null) { row.Set("kashikata_kamoku_id", null); row.Set("kashikata_hojo_id", null); row.Set("kashikata_hojo_seiri", null); } else { Row kamoku = (OwnerDB.Table(MTKanjouKamoku.TABLE_NAME) as MTKanjouKamoku).GetRowFromCodeCache( -1, helper.Converter.ObjToString(val)); if (kamoku != null) { row.Set("kashikata_kamoku_id", kamoku.Get("id")); this.SetColumnValue(row, "kashikata_hojo_seiri", row.GetStr("kashikata_hojo_seiri")); } else { row.Set("kashikata_kamoku_id", null); row.Set("kashikata_hojo_id", null); } } } return(true); }
public void UpdateEditingRows() { OwnerDB.ExecuteNonQuery("update " + TableName + " set denpyou_bangou = denpyou_bangou_cache, editing=0 where editing <> 0"); }
public static void updateOwner(int ownNum, string fName, string lName, string _street, string _city, string _province, string _postalCode, string _phone, string _email, string _emerFName, string _emerLName, string _emerPhone) { OwnerDB ownDB = new OwnerDB(); ownDB.updateOwnerDB(ownNum, fName, lName, _street, _city, _province, _postalCode, _phone, _email, _emerFName, _emerLName, _emerPhone); }
public static void addOwner(string fName, string lName, string _street, string _city, string _province, string _postalCode, string _phone, string _email, string _emerFName, string _emerLName, string _emerPhone) { OwnerDB ownDB = new OwnerDB(); ownDB.addOwnerDB(fName, lName, _street, _city, _province, _postalCode, _phone, _email, _emerFName, _emerLName, _emerPhone); }