public override IDTSComponentMetaData100 AddDestAdapter(IDTSPipeline100 pipeline, ConnectionManager destConnMgr, out IDTSDesigntimeComponent100 destDesignTimeComp)
        {
            if (String.IsNullOrEmpty(quotedTableName))
            {
                throw new ArgumentException("Destination table name is empty");
            }
            IDTSComponentMetaData100 destComp = pipeline.ComponentMetaDataCollection.New();

            destComp.ComponentClassID         = OLEDB_DEST_GUID;
            destComp.ValidateExternalMetadata = true;
            destDesignTimeComp = destComp.Instantiate();
            destDesignTimeComp.ProvideComponentProperties();
            destComp.Name = "OleDB Destination - Sql Server";
            destDesignTimeComp.SetComponentProperty("AccessMode", 0);
            destDesignTimeComp.SetComponentProperty("OpenRowset", quotedTableName);

            // set connection
            destComp.RuntimeConnectionCollection[0].ConnectionManager   = DtsConvert.GetExtendedInterface(destConnMgr);
            destComp.RuntimeConnectionCollection[0].ConnectionManagerID = destConnMgr.ID;

            // get metadata
            destDesignTimeComp.AcquireConnections(null);
            destDesignTimeComp.ReinitializeMetaData();
            destDesignTimeComp.ReleaseConnections();

            extCols = destComp.InputCollection[0].ExternalMetadataColumnCollection;

            return(destComp);
        }
        public override IDTSComponentMetaData100 AddDestAdapter(IDTSPipeline100 pipeline, ConnectionManager destConnMgr, out IDTSDesigntimeComponent100 destDesignTimeComp)
        {
            IDTSComponentMetaData100 destComp = pipeline.ComponentMetaDataCollection.New();

            destComp.ComponentClassID         = FLATFILE_DEST_GUID;
            destComp.ValidateExternalMetadata = true;
            destDesignTimeComp = destComp.Instantiate();
            destDesignTimeComp.ProvideComponentProperties();
            destComp.Name = "Flat File Destination";
            destDesignTimeComp.SetComponentProperty("Overwrite", true);

            // set connection
            destComp.RuntimeConnectionCollection[0].ConnectionManager   = DtsConvert.GetExtendedInterface(destConnMgr);
            destComp.RuntimeConnectionCollection[0].ConnectionManagerID = destConnMgr.ID;

            // get metadata
            destDesignTimeComp.AcquireConnections(null);
            destDesignTimeComp.ReinitializeMetaData();
            destDesignTimeComp.ReleaseConnections();
            return(destComp);
        }
        public override IDTSComponentMetaData100 AddSourceAdapter(IDTSPipeline100 pipeline, ConnectionManager srcConnMgr)
        {
            IDTSComponentMetaData100 srcComp = pipeline.ComponentMetaDataCollection.New();

            srcComp.ComponentClassID         = FLATFILE_SRC_GUID;
            srcComp.ValidateExternalMetadata = true;
            IDTSDesigntimeComponent100 srcDesignTimeComp = srcComp.Instantiate();

            srcDesignTimeComp.ProvideComponentProperties();
            srcComp.Name = "Flat File Source";

            // set connection
            srcComp.RuntimeConnectionCollection[0].ConnectionManager   = DtsConvert.GetExtendedInterface(srcConnMgr);
            srcComp.RuntimeConnectionCollection[0].ConnectionManagerID = srcConnMgr.ID;

            // get metadata
            srcDesignTimeComp.AcquireConnections(null);
            srcDesignTimeComp.ReinitializeMetaData();
            srcDesignTimeComp.ReleaseConnections();
            return(srcComp);
        }
Example #4
0
        public override IDTSComponentMetaData100 AddDestAdapter(IDTSPipeline100 pipeline, ConnectionManager destConnMgr, out IDTSDesigntimeComponent100 destDesignTimeComp)
        {
            IDTSComponentMetaData100 destComp = pipeline.ComponentMetaDataCollection.New();

            destComp.ComponentClassID         = EXCEL_DEST_GUID;
            destComp.ValidateExternalMetadata = true;
            destDesignTimeComp = destComp.Instantiate();
            destDesignTimeComp.ProvideComponentProperties();
            destComp.Name = "OleDB Destination - Excel";
            destDesignTimeComp.SetComponentProperty("AccessMode", 0);
            // OleDb provider does not recognize OpenRowSet name quoted with `
            destDesignTimeComp.SetComponentProperty("OpenRowset", UnquotedSheetName);

            // set connection
            destComp.RuntimeConnectionCollection[0].ConnectionManager   = DtsConvert.GetExtendedInterface(destConnMgr);
            destComp.RuntimeConnectionCollection[0].ConnectionManagerID = destConnMgr.ID;
            // get metadata
            destDesignTimeComp.AcquireConnections(null);
            destDesignTimeComp.ReinitializeMetaData();
            destDesignTimeComp.ReleaseConnections();
            extCols = destComp.InputCollection[0].ExternalMetadataColumnCollection;
            return(destComp);
        }
        private void AddConvertComponent(Hashtable colConvertTable, Hashtable colConnectTable)
        {
            convertComp = pipeline.ComponentMetaDataCollection.New();
            convertComp.ComponentClassID         = DATACONVERT_GUID;
            convertComp.Name                     = "Data Conversion";
            convertComp.ValidateExternalMetadata = true;
            convertDesignTimeComp                = convertComp.Instantiate();
            convertDesignTimeComp.ProvideComponentProperties();
            IDTSInput100  cvtInput  = convertComp.InputCollection[0];
            IDTSOutput100 cvtOutput = convertComp.OutputCollection[0];
            IDTSInputColumnCollection100 cvtInputCols = cvtInput.InputColumnCollection;
            IDTSOutput100 srcOutput = srcComp.OutputCollection[0];

            pipeline.PathCollection.New().AttachPathAndPropagateNotifications(srcOutput, cvtInput);
            IDTSVirtualInput100 cvtVirInput = cvtInput.GetVirtualInput();

            int i = 0;

            foreach (object key in colConvertTable.Keys)
            {
                int srcColID = (int)key;
                cvtVirInput.SetUsageType(srcColID, DTSUsageType.UT_READONLY);
                IDTSInputColumn100 cvtInputCol = cvtInputCols.GetInputColumnByLineageID(srcColID);
                if (cvtInputCol != null)
                {
                    IDTSOutputColumn100           cvtOutputCol = convertDesignTimeComp.InsertOutputColumnAt(cvtOutput.ID, i++, "Convert_" + cvtInputCol.Name, "");
                    IDTSExternalMetadataColumn100 destCol      = (IDTSExternalMetadataColumn100)colConvertTable[key];
                    convertDesignTimeComp.SetOutputColumnDataTypeProperties(cvtOutput.ID,
                                                                            cvtOutputCol.ID, destCol.DataType, destCol.Length, destCol.Precision, destCol.Scale, destCol.CodePage);
                    // map output column and input column
                    convertDesignTimeComp.SetOutputColumnProperty(cvtOutput.ID,
                                                                  cvtOutputCol.ID, "SourceInputColumnLineageID", srcColID);
                    // add match table entry.
                    colConnectTable.Add(cvtOutputCol.ID, destCol);
                }
            }
        }
Example #6
0
        public override IDTSComponentMetaData100 AddDestAdapter(IDTSPipeline100 pipeline, ConnectionManager destConnMgr, out IDTSDesigntimeComponent100 destDesignTimeComp)
		{
			IDTSComponentMetaData100 destComp = pipeline.ComponentMetaDataCollection.New();
			destComp.ComponentClassID = EXCEL_DEST_GUID;
			destComp.ValidateExternalMetadata = true;
			destDesignTimeComp = destComp.Instantiate();
			destDesignTimeComp.ProvideComponentProperties();
			destComp.Name = "OleDB Destination - Excel";
			destDesignTimeComp.SetComponentProperty("AccessMode", 0);
            // OleDb provider does not recognize OpenRowSet name quoted with ` 
            destDesignTimeComp.SetComponentProperty("OpenRowset", UnquotedSheetName);

			// set connection
			destComp.RuntimeConnectionCollection[0].ConnectionManager = DtsConvert.GetExtendedInterface(destConnMgr);
			destComp.RuntimeConnectionCollection[0].ConnectionManagerID = destConnMgr.ID;
			// get metadata
			destDesignTimeComp.AcquireConnections(null);
			destDesignTimeComp.ReinitializeMetaData();
			destDesignTimeComp.ReleaseConnections();
            extCols = destComp.InputCollection[0].ExternalMetadataColumnCollection;
            return destComp;
		}
        private void AddConvertComponent(Hashtable colConvertTable, Hashtable colConnectTable)
		{
			convertComp = pipeline.ComponentMetaDataCollection.New();
			convertComp.ComponentClassID = DATACONVERT_GUID;
			convertComp.Name = "Data Conversion";
			convertComp.ValidateExternalMetadata = true;
			convertDesignTimeComp = convertComp.Instantiate();
			convertDesignTimeComp.ProvideComponentProperties();
			IDTSInput100 cvtInput = convertComp.InputCollection[0];
			IDTSOutput100 cvtOutput = convertComp.OutputCollection[0];
			IDTSInputColumnCollection100 cvtInputCols = cvtInput.InputColumnCollection;
			IDTSOutput100 srcOutput = srcComp.OutputCollection[0];

			pipeline.PathCollection.New().AttachPathAndPropagateNotifications(srcOutput, cvtInput);
			IDTSVirtualInput100 cvtVirInput = cvtInput.GetVirtualInput();

			int i = 0;
			foreach (object key in colConvertTable.Keys)
			{
				int srcColID = (int)key;
				cvtVirInput.SetUsageType(srcColID, DTSUsageType.UT_READONLY);
				IDTSInputColumn100 cvtInputCol = cvtInputCols.GetInputColumnByLineageID(srcColID);
				if (cvtInputCol != null)
				{
					IDTSOutputColumn100 cvtOutputCol = convertDesignTimeComp.InsertOutputColumnAt(cvtOutput.ID, i++, "Convert_" + cvtInputCol.Name, "");
					IDTSExternalMetadataColumn100 destCol = (IDTSExternalMetadataColumn100)colConvertTable[key];
					convertDesignTimeComp.SetOutputColumnDataTypeProperties(cvtOutput.ID,
						cvtOutputCol.ID, destCol.DataType, destCol.Length, destCol.Precision, destCol.Scale, destCol.CodePage);
					// map output column and input column
					convertDesignTimeComp.SetOutputColumnProperty(cvtOutput.ID,
					cvtOutputCol.ID, "SourceInputColumnLineageID", srcColID);
					// add match table entry.
					colConnectTable.Add(cvtOutputCol.ID, destCol);
				}
			}
		}
Example #8
0
        public override IDTSComponentMetaData100 AddDestAdapter(IDTSPipeline100 pipeline, ConnectionManager destConnMgr, out IDTSDesigntimeComponent100 destDesignTimeComp)
        {
            IDTSComponentMetaData100 destComp = pipeline.ComponentMetaDataCollection.New();
            destComp.ComponentClassID = FLATFILE_DEST_GUID;
            destComp.ValidateExternalMetadata = true;
            destDesignTimeComp = destComp.Instantiate();
            destDesignTimeComp.ProvideComponentProperties();
            destComp.Name = "Flat File Destination";
            destDesignTimeComp.SetComponentProperty("Overwrite", true);

            // set connection
            destComp.RuntimeConnectionCollection[0].ConnectionManager = DtsConvert.GetExtendedInterface(destConnMgr);
            destComp.RuntimeConnectionCollection[0].ConnectionManagerID = destConnMgr.ID;

            // get metadata
            destDesignTimeComp.AcquireConnections(null);
            destDesignTimeComp.ReinitializeMetaData();
            destDesignTimeComp.ReleaseConnections();
            return destComp;
        }
Example #9
0
        public override IDTSComponentMetaData100 AddDestAdapter(IDTSPipeline100 pipeline, ConnectionManager destConnMgr, out IDTSDesigntimeComponent100 destDesignTimeComp)
        {
            if (String.IsNullOrEmpty(quotedTableName))
            {
                throw new ArgumentException("Destination table name is empty");
            }
            IDTSComponentMetaData100 destComp = pipeline.ComponentMetaDataCollection.New();
            destComp.ComponentClassID = OLEDB_DEST_GUID;
            destComp.ValidateExternalMetadata = true;
            destDesignTimeComp = destComp.Instantiate();
            destDesignTimeComp.ProvideComponentProperties();
            destComp.Name = "OleDB Destination - Sql Server";
            destDesignTimeComp.SetComponentProperty("AccessMode", 0);
            destDesignTimeComp.SetComponentProperty("OpenRowset", quotedTableName);

            // set connection
            destComp.RuntimeConnectionCollection[0].ConnectionManager = DtsConvert.GetExtendedInterface(destConnMgr);
            destComp.RuntimeConnectionCollection[0].ConnectionManagerID = destConnMgr.ID;

            // get metadata
            destDesignTimeComp.AcquireConnections(null);
            destDesignTimeComp.ReinitializeMetaData();
            destDesignTimeComp.ReleaseConnections();

            extCols = destComp.InputCollection[0].ExternalMetadataColumnCollection;

            return destComp;
        }