public void CopyValues(MReportConfig srcCfg)
        {
            Hashtable hash = srcCfg.GetFieldHash();

            ReportName = srcCfg.ReportName;
            ReportID   = srcCfg.ReportID;

            variables.Clear();
            foreach (String key in hash.Keys)
            {
                MGlobalVariable s = (MGlobalVariable)hash[key];
                MGlobalVariable v = new MGlobalVariable(new CTable(""));

                v.VariableName  = s.VariableName;
                v.VariableValue = s.VariableValue;
                v.VariableType  = s.VariableType;
                v.VariableDesc  = s.VariableDesc;

                fieldHash[key] = v;

                if (!defaultFields.ContainsKey(v.VariableName))
                {
                    variables.Add(v);
                }
            }
        }
        public void PopulateMissingValue(MReportConfig defCfg)
        {
            Hashtable hash = defCfg.GetFieldHash();

            foreach (String key in hash.Keys)
            {
                if (!fieldHash.ContainsKey(key))
                {
                    MGlobalVariable s = (MGlobalVariable)hash[key];
                    MGlobalVariable v = new MGlobalVariable(new CTable(""));

                    v.VariableName  = s.VariableName;
                    v.VariableValue = s.VariableValue;
                    v.VariableType  = s.VariableType;
                    v.VariableDesc  = s.VariableDesc;

                    fieldHash[key] = v;
                }
            }
        }