/// <summary>
 /// 共同做的工作
 /// </summary>
 ///
 private void getData(object sql)
 {
     while (true)
     {
         Monitor.Enter(this);//锁定,保持同步
         DataSet dsre = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql as string));
         i = i + 1;
         if (ds == null)
         {
             ds = dsre.Copy();
         }
         else
         {
             foreach (DataRow row in dsre.Tables[0].Rows)
             {
                 ds.Tables[0].Rows.Add(row.ItemArray);
             }
             if (i == pgnum)
             {
                 OnNumberClear(this, new EventArgs());//引发完成事件
             }
         }
         Monitor.Exit(this);//取消锁定
         Thread.Sleep(5);
     }
 }
Exemple #2
0
        public static DataSet getDataSet(string processID, string ProName, string[] paramArr, string[] valueArr, WsGetDataClient.WSGetData mgr)
        {
            DataSet ds = new DataSet();

            ds = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByteProc(processID, ProName, paramArr, valueArr));
            return(ds);
        }
Exemple #3
0
        public static DataSet GetDataSet(string processID, string sql, string strOrderKey, WsGetDataClient.WSGetData mgr, string fieldStr, string IsRepeatDown)
        {
            DataSet ds = new DataSet();

            sql = encstr + DesEncrypt.Encrypt(sql);
            if (IsRepeatDown == "1")
            {
                string  countsql = "select count(1) " + sql.Substring(sql.ToLower().IndexOf(" from "));
                DataSet dscount  = mgr.getDataSet(processID, countsql);
                long    dtcount  = 0;
                if (dscount != null && dscount.Tables.Count > 0)
                {
                    dtcount = Convert.ToInt64(dscount.Tables[0].Rows[0][0]);
                }
                if (dtcount <= pgNum)
                {
                    ds = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql));
                }
                else
                {
                    WebSvrGetDataAsync getDataSync = new WebSvrGetDataAsync(processID, dtcount, sql, strOrderKey, mgr, fieldStr);
                    ds = getDataSync.returnDataSet();
                }
            }
            else
            {
                ds = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql));
            }
            return(ds);
        }
Exemple #4
0
        public static DataSet GetDataSet(string processID, string sql, string strOrderKey, WsGetDataClient.WSGetData mgr, string fieldStr)
        {
            DataSet ds = new DataSet();

            sql = encstr + DesEncrypt.Encrypt(sql);
            ds  = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql));
            return(ds);
        }
Exemple #5
0
        public static TextReader unZipToStream(byte[] btarr)
        {
            byte[] vsarr = StringToDataSet.unZipByte(btarr);
            string vsstr = System.Text.Encoding.UTF8.GetString(vsarr, 0, vsarr.Length);

            TextReader tr = new StringReader(vsstr);


            return(tr);
        }
Exemple #6
0
        public static DataTable getDataTable(string processID, string ProName, string[] paramArr, string[] valueArr, WsGetDataClient.WSGetData mgr)
        {
            DataTable dt = new DataTable();
            DataSet   ds = new DataSet();

            ds = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByteProc(processID, ProName, paramArr, valueArr));
            if (ds.Tables.Count > 0)
            {
                dt = ds.Tables[0];
            }
            return(dt);
        }
Exemple #7
0
        public static DataTable getDataTable(string processID, WsGetDataClient.WSGetData mgr, string sql)
        {
            DataTable dt = new DataTable();
            DataSet   ds = new DataSet();

            sql = encstr + DesEncrypt.Encrypt(sql);
            ds  = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql));
            if (ds.Tables.Count > 0)
            {
                dt = ds.Tables[0];
            }
            return(dt);
        }
Exemple #8
0
        public DataTable getDataTable(string sql)
        {
            DataTable dt   = new DataTable();
            DataSet   vsds = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(this.ProcessID, sql));

            if (vsds.Tables.Count > 0)
            {
                return(vsds.Tables[0]);
            }
            else
            {
                return(dt);
            }
        }
Exemple #9
0
 public static byte[][] dataSetToZipBtye(DataSet ds)
 {
     string[] arr = new string[2];
     arr[0] = ds.GetXmlSchema();
     arr[1] = ds.GetXml();
     byte[][] bytearr = new byte[2][];
     bytearr[0] = System.Text.Encoding.UTF8.GetBytes(arr[0]);
     bytearr[1] = System.Text.Encoding.UTF8.GetBytes(arr[1]);
     byte[][] zipbyte = new byte[2][];
     zipbyte[0] = StringToDataSet.zipByte(bytearr[0]);
     bytearr[0] = StringToDataSet.unZipByte(zipbyte[0]);
     zipbyte[1] = StringToDataSet.zipByte(bytearr[1]);
     return(zipbyte);
 }
Exemple #10
0
        /// <summary>
        /// 重载获取数据源函数
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="dbsrc"></param>
        /// <returns></returns>
        private DataTable getDataTable(string sql, string dbsrc)
        {
            DataTable dt   = new DataTable();
            DataSet   vsds = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(dbsrc, sql));

            if (vsds.Tables.Count > 0)
            {
                return(vsds.Tables[0]);
            }
            else
            {
                return(dt);
            }
        }
Exemple #11
0
        private void syncGetDataSet(string processID, long dtcount, string sql, string strOrderKey, WsGetDataClient.WSGetData mgr)
        {
            sql = WebSvrGetData.encstr + DesEncrypt.Encrypt(sql);
            string dbtype = mgr.getDBType(processID);
            string vssql  = "";

            if (dbtype == "ora")
            {
                vssql = "select * from ( {0} )z1 where rownum>{1} and rownum<={2} ";
            }
            else
            {
                if (string.IsNullOrEmpty(strOrderKey))
                {
                    throw new Exception("数据量过大,请联系开发人员调用异步加载方式!");
                }
                vssql = @"select top {1} *  from 
                ( select top {2}  * from ({0}) z1 order by {3}) z2 
                order by {3} desc ";
            }
            for (int m = 0; m < loadNum; m++)
            {
                long longs = m * WebSvrGetData.pgNum;
                long longe = (m + 1) * WebSvrGetData.pgNum;
                if (dbtype == "ora")
                {
                    sql = string.Format(vssql, sql, longs + "", longe + "");
                }
                else
                {
                    sql = string.Format(vssql, sql, WebSvrGetData.pgNum, longe + "", strOrderKey);
                }
                DataSet dsre = StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql));
                if (ds == null)
                {
                    ds = dsre.Copy();
                }
                else
                {
                    foreach (DataRow row in dsre.Tables[0].Rows)
                    {
                        ds.Tables[0].Rows.Add(row.ItemArray);
                    }
                }
            }
        }
Exemple #12
0
 public DataSet getData(WsGetDataClient.WSGetData mgr, string processID, string sql)
 {
     sql = WebSvrGetData.encstr + DesEncrypt.Encrypt(sql);
     return(StringToDataSet.getDataSetFromZipDataFormat(mgr.getZipDataFormatByte(processID, sql)));
 }