public bool ReConstructPackageListFromSql(string newOrderBy)
        {
            try
            {
                //string tmpOrderby = (string.IsNullOrEmpty(OrderByClause)) ? "" : OrderByClause.ToString();
                Parser.Parse(Sql);
                EmptyReportedFields();

                for (int i = 0; i < Parser.SelectList.Count; i++)
                {
                    ReportedFields.Add(new ReportPair(Parser.SelectList[i], Parser.AsList[i]));
                }
                //////////////////////////
                Parser.SelectList = new List <string>();
                Parser.AsList     = new List <string>();
                foreach (ReportPair reported in ReportedFields)
                {
                    Parser.SelectList.Add(reported.ReportedFieldName);
                    Parser.AsList.Add(reported.DisplayedAs);
                }

                if (!string.IsNullOrEmpty(newOrderBy))
                {
                    Parser.OrderByClause = newOrderBy;
                }

                if (ReportedFields.Count > 0)
                {
                    Sql = Parser.ReBuild(true);
                }
                //////////////////////////
            }
            catch (Exception ex)
            {
                return(false);
            }
            return(true);
        }
        public bool ReConstructSQLFromGridView()
        {
            if (Parser == null || Parser.SelectList == null)
            {
                return(false);
            }
            Parser.SelectList = new List <string>();
            Parser.AsList     = new List <string>();
            foreach (ReportPair reported in ReportedFields)
            {
                Parser.SelectList.Add(reported.ReportedFieldName);
                Parser.AsList.Add(reported.DisplayedAs);
            }
            try
            {
                if (ReportedFields.Count > 0)
                {
                    Sql = Parser.ReBuild(true);
                }

                //////////////////////
                Parser.Parse(Sql);
                EmptyReportedFields();

                for (int i = 0; i < Parser.SelectList.Count; i++)
                {
                    ReportedFields.Add(new ReportPair(Parser.SelectList[i], Parser.AsList[i]));
                }

                /////////////////////
            }
            catch (Exception ex)
            {
                return(false);
            }
            return(true);
        }