예제 #1
0
        private static void AddRowsMappingInfo(DataSet dts, CrossTabTableInfo srcTableTableInfo, int tableIndex)
        {
            DataTable MappedTable;
            DataTable MapTypeTable;

            string MappedValueString = string.Empty;
            string MappedTypeString  = string.Empty;
            string Value             = string.Empty;
            string GID = string.Empty;

            string[] MappedValues;
            string[] MappedTypes;
            string[] ElementValue;
            Mapping  RowMapping;

            try
            {
                if (srcTableTableInfo != null)
                {
                    // only if mappedRow and maptype table exists
                    if (dts.Tables.Contains(TablesName.MAPPEDROW_TBLNAME + tableIndex) && dts.Tables.Contains(TablesName.MAPTYPEROW_TBLNAME + tableIndex))
                    {
                        MapTypeTable = dts.Tables[TablesName.MAPTYPEROW_TBLNAME + tableIndex];
                        MappedTable  = dts.Tables[TablesName.MAPPEDROW_TBLNAME + tableIndex];

                        if (MapTypeTable.Rows.Count == MappedTable.Rows.Count)
                        {
                            for (int Index = 0; Index < MapTypeTable.Rows.Count; Index++)
                            {
                                MappedTypeString  = Convert.ToString(MapTypeTable.Rows[Index][0]);
                                MappedValueString = Convert.ToString(MappedTable.Rows[Index][0]);

                                RowMapping = srcTableTableInfo.RowsMapping[Index].Mappings.CellMap;

                                //import mapping
                                DXSFileConveter.ImportMapping(MappedValueString, MappedTypeString, RowMapping);
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                throw new ApplicationException(ex.ToString());
            }
        }
예제 #2
0
        private static void AddColumnsMappingInfo(DataSet dts, CrossTabTableInfo srcTableTableInfo, int tableIndex)
        {
            DataTable MappedTable;
            DataTable MapTypeTable;

            string MappedValueString = string.Empty;
            string MappedTypeString  = string.Empty;
            string Value             = string.Empty;
            string GID = string.Empty;

            string[] MappedValues;
            string[] MappedTypes;
            string[] ElementValue;
            Mapping  ColMapping;

            try
            {
                if (srcTableTableInfo != null)
                {
                    // only if mappedCol and maptype table exists
                    if (dts.Tables.Contains(TablesName.MAPPEDCOL_TBLNAME + tableIndex) && dts.Tables.Contains(TablesName.MAPTYPECOL_TBLNAME + tableIndex))
                    {
                        MapTypeTable = dts.Tables[TablesName.MAPTYPECOL_TBLNAME + tableIndex];
                        MappedTable  = dts.Tables[TablesName.MAPPEDCOL_TBLNAME + tableIndex];



                        if (MapTypeTable.Columns.Count == MappedTable.Columns.Count)
                        {
                            for (int Index = 0; Index < MapTypeTable.Columns.Count; Index++)
                            {
                                MappedTypeString  = Convert.ToString(MapTypeTable.Rows[0][Index]);
                                MappedValueString = Convert.ToString(MappedTable.Rows[0][Index]);
                                ColMapping        = srcTableTableInfo.ColumnsMapping[Index].Mappings.CellMap;

                                //import mapping
                                DXSFileConveter.ImportMapping(MappedValueString, MappedTypeString, ColMapping);
                            }
                        }

                        //////        if (!string.IsNullOrEmpty(MappedValueString) && !string.IsNullOrEmpty(MappedTypeString))
                        //////        {
                        //////            MappedTypes = DICommon.SplitString(MappedTypeString, "\r\n");
                        //////            MappedValues = DICommon.SplitString(MappedValueString, "\r\n");

                        //////            for (int i = 0; i < MappedTypes.Length; i++)
                        //////            {
                        //////                // only if value exists
                        //////                if (!string.IsNullOrEmpty(MappedTypes[i]) && !string.IsNullOrEmpty(MappedValues[Index]))
                        //////                {
                        //////                    ColMapping = srcTableTableInfo.ColumnsMapping[Index].Mappings.CellMap;
                        //////                    ElementValue = DICommon.SplitString(MappedValues[i], "||");

                        //////                    // only if element value have value and GID
                        //////                    if (ElementValue.Length == 2)
                        //////                    {
                        //////                        Value = Convert.ToString(ElementValue[0]);
                        //////                        GID= Convert.ToString(ElementValue[1]);

                        //////                        switch (MappedTypes[i].ToUpper())
                        //////                        {
                        //////                            case "INDICATOR":
                        //////                                ColMapping.IndicatorName = Value;
                        //////                                ColMapping.IndicatorGID = GID;
                        //////                                break;

                        //////                            case "UNIT":
                        //////                                ColMapping.UnitName = Value;
                        //////                                ColMapping.UnitGID = GID;
                        //////                                break;

                        //////                            case "SUBGROUP":
                        //////                                ColMapping.SubgroupVal = Value;
                        //////                                ColMapping.SubgroupValGID = GID;
                        //////                                break;
                        //////                            case "AREA":
                        //////                                ColMapping.Area = Value;
                        //////                                ColMapping.AreaID = GID;
                        //////                                break;

                        //////                            case "SOURCE":
                        //////                                ColMapping.Source = Value;
                        //////                                break;

                        //////                            case "TIMEPERIOD":
                        //////                                ColMapping.Timeperiod = Value;
                        //////                                break;

                        //////                            case "AGE":
                        //////                            case "SEX":
                        //////                            case "LOCATION":
                        //////                            case "OTHERS":
                        //////                                if(ColMapping.Subgroups.ContainsKey(GID)==false)
                        //////                                {
                        //////                                    DevInfo.Lib.DI_LibBAL.DA.DML.DI6SubgroupInfo SG =new DevInfo.Lib.DI_LibBAL.DA.DML.DI6SubgroupInfo();
                        //////                                    SG.Name=Value;
                        //////                                    SG.GID=GID;
                        //////                                    ColMapping.Subgroups.Add(GID, SG);
                        //////                                }

                        //////                                break;
                        //////                            default:
                        //////                                break;
                        //////                        }
                        //////                    }
                        //////                }
                        //////            }

                        //////        }
                        //////    }

                        //////}
                    }
                }
            }
            catch (Exception ex)
            {
                throw new ApplicationException(ex.ToString());
            }
        }