示例#1
0
 internal void RefreshRowDataset()
 {
     for (int i = 1; i <= this._rep.Rows.RowCount; i++)
     {
         RdRow row  = this._rep.Rows[i];
         bool  flag = string.IsNullOrEmpty(row.DataSet);
         if (flag)
         {
             row.Data = null;
         }
         else
         {
             RmDataSet dataset = this.FindDataset(row.DataSet);
             row.Data = dataset;
             bool flag2 = dataset != null;
             if (flag2)
             {
                 RdRowType rowType = row.RowType;
                 if (rowType != RdRowType.rtColumnHeader)
                 {
                     if (rowType == RdRowType.rtColumnFooter)
                     {
                         dataset.ColumnFooter.Add(dataset.ColumnFooter.Count, row);
                     }
                 }
                 else
                 {
                     dataset.ColumnHeader.Add(dataset.ColumnHeader.Count, row);
                 }
             }
         }
     }
 }
示例#2
0
        internal bool SameGroup(string datasetName, string groupBy)
        {
            RmDataSet datasetRec = this.m_groups.Builder.DataSets.FindDataset(datasetName);
            bool      flag       = datasetRec != this.m_dataset;
            bool      result;

            if (flag)
            {
                result = false;
            }
            else
            {
                groupBy = groupBy.Replace(";", " ").Replace(",", " ");
                foreach (KeyValuePair <int, RmGroupItem> obj in this.m_items)
                {
                    bool flag2 = groupBy.IndexOf(obj.Value.DatasetName + "." + obj.Value.FieldName) < 0;
                    if (flag2)
                    {
                        break;
                    }
                    groupBy.Replace(obj.Value.DatasetName + "." + obj.Value.FieldName, "");
                }
                bool flag3 = string.IsNullOrEmpty(groupBy.Trim(new char[]
                {
                    ' '
                }));
                result = flag3;
            }
            return(result);
        }
示例#3
0
        internal bool IsMasterOf(RmDataSet aDataset)
        {
            bool flag = aDataset == null;
            bool result;

            if (flag)
            {
                result = false;
            }
            else
            {
                bool flag2 = aDataset != this;
                if (flag2)
                {
                    RmDataSet pDataset = aDataset.Master;
                    while (pDataset != null && pDataset != this)
                    {
                        pDataset = pDataset.Master;
                    }
                    bool flag3 = pDataset == null;
                    if (flag3)
                    {
                        result = false;
                        return(result);
                    }
                }
                result = true;
            }
            return(result);
        }
示例#4
0
 internal void RefreshRootdataset()
 {
     foreach (KeyValuePair <string, RmDataSet> obj in this.Items)
     {
         RmDataSet mdataset = obj.Value;
         while (mdataset.Master != null)
         {
             mdataset = mdataset.Master;
         }
         obj.Value.Root = mdataset;
     }
 }
示例#5
0
 internal void GetDatasetsFromTemplate()
 {
     foreach (KeyValuePair <string, RdDataSet> obj in this._rep.DataSets.List)
     {
         RmDataSet _gtrbDataset = new RmDataSet(this);
         bool      flag         = obj.Value == null || string.IsNullOrEmpty(obj.Value.Sql);
         if (flag)
         {
             _gtrbDataset.FDataSet = null;
         }
         else
         {
             base.Builder.OnGetDataSet(obj.Value.Name, obj.Value.Sql);
         }
         _gtrbDataset.RecNo       = 1;
         _gtrbDataset.FgtrDataSet = obj.Value;
         _gtrbDataset.Eof         = false;
         this.Items.Add(obj.Value.Name, _gtrbDataset);
     }
 }
示例#6
0
        internal void SetGroupBy(string datasetName, string groupBy)
        {
            string aDatasetName = string.Empty;
            string aFieldName   = string.Empty;

            this.m_dataset = this.m_groups.Builder.DataSets.FindDataset(datasetName);
            string[] arrGroupBy = groupBy.Split(new char[]
            {
                ';',
                ','
            });
            for (int i = 0; i < arrGroupBy.Length; i++)
            {
                string item  = arrGroupBy[i].Trim();
                int    index = item.IndexOf('.');
                bool   flag  = index >= 0;
                if (flag)
                {
                    aDatasetName = item.Split(new char[]
                    {
                        '.'
                    })[0];
                    aFieldName = item.Split(new char[]
                    {
                        '.'
                    })[1];
                    bool flag2 = !string.IsNullOrEmpty(aDatasetName) && !string.IsNullOrEmpty(aFieldName);
                    if (flag2)
                    {
                        RmGroupItem aItem = new RmGroupItem(this);
                        aItem.DatasetName = aDatasetName;
                        aItem.FieldName   = aFieldName;
                        this.m_items.Add(this.m_items.Count, aItem);
                    }
                }
            }
        }