获得1-12的最大编号,即下一个编号为1-13!

Max(Convert(int,SubString(" + arrType[iType - 1] + ",CharIndex('-'," + arrType[iType - 1] + ")+1,CharIndex('-'," + arrType[iType - 1] + ")))) as No 为核心代码,获得编号为3-13,接下来获得的编号为3-14
 1  /// <summary>
 2         /// 获得最大的任务、督办单号
 3         /// </summary>
 4         /// <param name="sProjectCode"></param>
 5         /// <returns></returns>
 6         public static string FindLastNo(string sProjectID, int iType)
 7         {
 8             string[] arrType = { "TaskNo""SupervisoryNo" };
 9             Model.ProjectInfo model = new BLL.ProjectInfo().GetModel(Convert.ToInt32(sProjectID));
10             DataTable dt = Maticsoft.DBUtility.DbHelperSQL.Query("select Max(Convert(int,SubString(" + arrType[iType - 1] + ",CharIndex('-'," + arrType[iType - 1] + ")+1,CharIndex('-'," + arrType[iType - 1] + ")))) as No from ProjectTaskInfo where  ProjectID=" + sProjectID).Tables[0];
11             if (dt.Rows.Count > 0&&model != null)
12             {
13                 if (!string.IsNullOrEmpty(dt.Rows[0]["No"].ToString()))
14                 {
15                     return model.ProjectCode + "-" + (Convert.ToInt32(dt.Rows[0]["No"].ToString()) + 1).ToString ();
16                 }
17                 else
18                 {
19                    return  model.ProjectCode + "-" + 1;
20                 }
21             }
22             else
23             {
24                 return model.ProjectCode + "-" + 1;
25             }
26 
27         }
posted @ 2012-04-29 19:57  做最好の自己  阅读(200)  评论(0编辑  收藏  举报