| | |
| | | } |
| | | |
| | | |
| | | //得到最大基础资料的流水号 HNumber |
| | | public static string CreateHNumber(string BillCode,string HName,string TableName, ref string sReturn, bool Add) |
| | | { |
| | | |
| | | Int64 Glida; |
| | | Int32 CodeLen; |
| | | string sBillNumber = ""; |
| | | char c = Convert.ToChar("0"); |
| | | string sKjYear = DateTime.Today.Year.ToString(); |
| | | string sPeriod = DateTime.Today.Month.ToString(); |
| | | string sDay = DateTime.Today.Day.ToString(); |
| | | //得到单据号表 信息 |
| | | ClsSqlHelper oCn = new ClsSqlHelper(); |
| | | DataSet Ds = new DataSet(); |
| | | DataSet Dss = new DataSet(); |
| | | //第一次查询数据是否存在 不存在就添加 |
| | | Ds = oCn.RunProcReturn("Select * from Gy_MaxNumber where BillName='" + HName.Trim() + "'", "Gy_MaxNumber"); |
| | | //插入新记录 表名,表名称,当前id |
| | | if (Ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | |
| | | oCn.RunProc("insert into Gy_MaxNumber(BillType,BillName,IDNow) values('" + TableName.Trim() + "','" + HName.Trim() + "',1)"); |
| | | } |
| | | |
| | | //第二次查询 是查询插入的新数据 |
| | | Dss = oCn.RunProcReturn("Select * from Gy_MaxNumber where BillName='" + HName.Trim() + "'", "Gy_MaxNumber"); |
| | | if (Dss.Tables[0].Rows.Count != 0) |
| | | { |
| | | |
| | | Glida = ClsPub.isLong(Dss.Tables[0].Rows[0]["Glida"].ToString()); |
| | | CodeLen = ClsPub.isInt(Dss.Tables[0].Rows[0]["CodeLen"].ToString()); |
| | | } |
| | | else |
| | | { |
| | | return ""; |
| | | } |
| | | string sStr; |
| | | switch (Glida) |
| | | { |
| | | case 0://纯流水号 |
| | | Ds = oCn.RunProcReturn("Select * from Gy_MaxNumber where BillName='" + HName.Trim() + "'", "Gy_MaxNumber"); |
| | | if (Ds.Tables[0].Rows.Count != 0) |
| | | { |
| | | sStr = new string(c, CodeLen - (Ds.Tables[0].Rows[0]["IDNow"].ToString()).Length); |
| | | sBillNumber = BillCode.Trim() + sStr + Ds.Tables[0].Rows[0]["IDNow"].ToString().Trim(); |
| | | } |
| | | |
| | | if (Add == true) |
| | | { |
| | | oCn.RunProc("update Gy_MaxNumber set IDNow=IDNow+1 where BillName='" + HName.Trim() + "'"); |
| | | } |
| | | return sBillNumber; |
| | | |
| | | case 1://根据 YY年+MM月 日 + 流水号 生成单据号 (日 采用了 仓库的字段) |
| | | return sBillNumber; |
| | | case 2: //根据年+月+日 生成单据号 |
| | | return sBillNumber; |
| | | case 3: //根据 乔一 (S + 年(23)+五位流水号)实例:S2300001 |
| | | return sBillNumber; |
| | | case 4: //根据 乔一 工序流转卡号改成年+月+四位流水号(23050001) |
| | | return sBillNumber; |
| | | default: |
| | | return sBillNumber; |
| | | |
| | | } |
| | | oCn.CnClose(); |
| | | oCn.CnDispose(); |
| | | oCn = null; |
| | | } |
| | | |
| | | //判断是否存在权限,并写入日志 |
| | | public static bool Security_Log(string gnsy, int LogTF, bool Msg,string CurUserName) |
| | | { |