|  |  | 
 |  |  | using Newtonsoft.Json.Linq; | 
 |  |  | using Newtonsoft.Json; | 
 |  |  | using Newtonsoft.Json.Linq; | 
 |  |  | using System; | 
 |  |  | using System.Collections.Generic; | 
 |  |  | using System.Data; | 
 |  |  | 
 |  |  |         { | 
 |  |  |             try | 
 |  |  |             { | 
 |  |  |                 List<object> columnNameList = new List<object>(); | 
 |  |  |                 //æ¥çæé | 
 |  |  |                 if (!DBUtility.ClsPub.Security_Log("Sc_WorkBillSortBill_Query", 1, false, user)) | 
 |  |  |                 { | 
 |  |  | 
 |  |  |                     return objJsonResult; | 
 |  |  |                 } | 
 |  |  |  | 
 |  |  |                 ds = oCN.RunProcReturn("select * from  h_v_JIT_Sc_WorkBillSortBillList where 1=1" + sWhere + " order by åæ®å· desc ", "h_v_JIT_Sc_WorkBillSortBillList"); | 
 |  |  |  | 
 |  |  |                 ds = oCN.RunProcReturn("select * from  h_v_JIT_Sc_WorkBillSortBillList_Left where 1=1" + sWhere + " order by åæ®å· desc ", "h_v_JIT_Sc_WorkBillSortBillList"); | 
 |  |  |            | 
 |  |  |                     foreach (DataColumn col in ds.Tables[0].Columns)//éådsä¸ç¬¬ä¸ä¸ªè¡¨ï¼Tables[0]ï¼çææåï¼Columnsï¼æ¯æ¬¡å¾ªç¯ä¸ï¼colåé伿æå½ååçå¼ç¨ | 
 |  |  |                     { | 
 |  |  |                         Type dataType = col.DataType; //è·åå½åæ°æ®ç±»åä¼ å
¥ èªå®ä¹åédatadataType | 
 |  |  |                         string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //åç¬¦ä¸²æ¼æ¥         // å°åååæ°æ®ç±»åä¿¡æ¯æ¼æ¥æä¸ä¸ªJSONæ ¼å¼çå符串 | 
 |  |  |                         columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//è·åå°DataColumnå对象çåå | 
 |  |  |                     | 
 |  |  |                 } | 
 |  |  |                 objJsonResult.code = "1"; | 
 |  |  |                 objJsonResult.count = 1; | 
 |  |  |                 objJsonResult.Message = "Sucessï¼"; | 
 |  |  |                 objJsonResult.data = ds.Tables[0]; | 
 |  |  |              | 
 |  |  |                 objJsonResult.data = ds.Tables[0];//代ç å°ç¬¬ä¸ä¸ªDataTableï¼ç´¢å¼ä¸º0ï¼èµå¼ç»objJsonResultçdata屿§ | 
 |  |  |                 objJsonResult.list = columnNameList;//å°columnNameListèµå¼ç»objJsonResultçlist屿§ | 
 |  |  |                 return objJsonResult; | 
 |  |  |             } | 
 |  |  |             catch (Exception e) | 
 |  |  | 
 |  |  |                     { | 
 |  |  |                         var NumData_T = NumData[i].Split('_'); | 
 |  |  |  | 
 |  |  |                         ds = oCN.RunProcReturn("select * from h_v_JIT_Sc_WorkBillSortBillList where 1=1 and hmainid=" + NumData_T[0], "h_v_JIT_Sc_WorkBillSortBillList"); | 
 |  |  |                         ds = oCN.RunProcReturn("select * from h_v_JIT_Sc_WorkBillSortBillList_Left where 1=1 and hmainid=" + NumData_T[0], "h_v_JIT_Sc_WorkBillSortBillList"); | 
 |  |  |  | 
 |  |  |                         if (ds.Tables[0].Rows.Count > 0) | 
 |  |  |                         { |