private void ProcessMappedSubgroupDimValues() { DIConnection SrcDBConnection = null; DIQueries SrcDBQueries = null; DI6SubgroupBuilder TrgSubgroupsBuilder = null; DI6SubgroupBuilder SourceSubgroupBuilder = null; DI6SubgroupInfo SrcSubgroupInfo = null; DataTable Table = null; string SourceFileWPath = string.Empty; int TrgSGDVNid = 0; if (this.MappedTables.ContainsKey(TemplateMergeControlType.SubgroupDimensionsValue)) { TrgSubgroupsBuilder = new DI6SubgroupBuilder(this.DBConnection, this.DBQueries); foreach (DataRow Row in this.MappedTables[TemplateMergeControlType.SubgroupDimensionsValue].MappedTable.MappedTable.Rows) { Table = this.DBConnection.ExecuteDataTable(TemplateQueries.GetImportSubgroupDimensionValues(Convert.ToString(Row[MergetTemplateConstants.Columns.UNMATCHED_COL_Prefix + Subgroup.SubgroupNId]))); TrgSGDVNid = Convert.ToInt32(Row[MergetTemplateConstants.Columns.AVAILABLE_COL_Prefix + Subgroup.SubgroupNId]); if (Table != null && Table.Rows.Count > 0) { try { SourceFileWPath = Convert.ToString(Table.Rows[0][MergetTemplateConstants.Columns.COLUMN_SOURCEFILENAME]); SrcDBConnection = new DIConnection(DIServerType.MsAccess, string.Empty, string.Empty, SourceFileWPath, string.Empty, string.Empty); SrcDBQueries = DataExchange.GetDBQueries(SrcDBConnection); // Get Subgroup Dimension Values Info SourceSubgroupBuilder = new DI6SubgroupBuilder(SrcDBConnection, SrcDBQueries); SrcSubgroupInfo = SourceSubgroupBuilder.GetSubgroupInfo(FilterFieldType.NId, Convert.ToString(Table.Rows[0][MergetTemplateConstants.Columns.COLUMN_SRCNID])); // Import Mapped Subgroup Dimension Values TrgSubgroupsBuilder.ImportSubgroupFrmMappedSubgroup(SrcSubgroupInfo, SrcSubgroupInfo.Nid, TrgSGDVNid, SrcDBQueries, SrcDBConnection); } finally { if (SrcDBConnection != null) { SrcDBConnection.Dispose(); SrcDBQueries.Dispose(); } } } } } }