public static String LayMaNghiepVu(String loaict) { String sql = "Select * from dm_ct where loaict = @loaict"; DataTable dt = BllLib.ExecuteDataTable(sql, CommandType.Text, "@loaict", SqlDbType.NChar, loaict); if (dt.Rows.Count > 0) { return(dt.Rows[0]["ma_nv"] == null ? "" : dt.Rows[0]["ma_nv"].ToString()); } return(""); }
/// <summary> /// Tạo khoá tự động /// Trần Văn Tài /// </summary> /// <param name="loaict"></param> /// <param name="ngayct">Ngày chứng từ</param> /// <param name="tuNgay"></param> /// <param name="denNgay"></param> /// <param name="master"></param> /// <returns>Khóa mới</returns> public static String KeyGenerator(String maNV, String loaict, DateTime ngayct, DateTime tuNgay, DateTime denNgay, String master, string n_loaict) { string ret = ""; const int len = 3; int stt = 0; //ko sử dụng tham số này cho 2/9 maNV = ""; //---- if (ngayct.CompareTo(tuNgay) < 0 || ngayct.CompareTo(denNgay) > 0) { return(""); } String sql; if (String.IsNullOrEmpty(maNV)) { sql = "SELECT soct FROM " + master + " WHERE MONTH(ngayct) = @thang AND YEAR(ngayct) = @nam and loaict = @loaict" + " ORDER BY soct DESC"; } else { sql = "SELECT soct FROM " + master + " WHERE MONTH(ngayct) = @thang AND YEAR(ngayct) = @nam and loaict = @loaict and left(soct,len(@maNV)) = @maNV " + " ORDER BY soct DESC"; } DataTable dt = BllLib.ExecuteDataTable(sql, CommandType.Text, "@thang", SqlDbType.Int, ngayct.Month, "@nam", SqlDbType.Int, ngayct.Year, "@maNV", SqlDbType.NChar, maNV, "@loaict", SqlDbType.NChar, loaict); if (dt.Rows.Count > 0)//Đã tồn tại phiếu { try { int i = 0; while (stt <= 0) { String soct = dt.Rows[i++]["soct"].ToString().Trim(); //Int32.TryParse(soct.Substring(String.IsNullOrEmpty(maNV) ? 0 : maNV.Length, len), out stt); Int32.TryParse(soct.Substring(soct.Length - len, len), out stt); } stt++; } catch { stt = 1; } } else //Khởi tạo phiếu đầu tiên { stt = 1; } for (int i = 0; i < len - stt.ToString().Length; i++) { ret += "0"; } //return maNV + ret + stt + "/" + ngayct.ToString("yyMM"); return(string.Format("{0}/{1}", ngayct.ToString("yyMM"), stt.ToString().PadLeft(3, '0'))); }