public override void PreExecute() { this._relation = (relationType)ComponentMetaData.CustomPropertyCollection["Spatial Relation"].Value; this._targetCache = new OGRBufferCache(); this._joinCache = new OGRBufferCache(); this._targetColumnInfoMapList = new List <columnInfoMap>(); this._joinColumnInfoMapList = new List <columnInfoMap>(); this._targetID = ComponentMetaData.InputCollection["Target Input"].ID; this._joinID = ComponentMetaData.InputCollection["Join Input"].ID; IDTSOutput100 defaultOutput = ComponentMetaData.OutputCollection[0]; IDTSInput100 targetInput = ComponentMetaData.InputCollection["Target Input"]; foreach (IDTSInputColumn100 inputColumn in targetInput.InputColumnCollection) { if (((string)ComponentMetaData.CustomPropertyCollection["Target Input Geometry Column"].Value).Equals(inputColumn.Name)) { this._targetGeomIndex = BufferManager.FindColumnByLineageID(targetInput.Buffer, inputColumn.LineageID); } foreach (IDTSOutputColumn100 outputColumn in defaultOutput.OutputColumnCollection) { if (outputColumn.Name.Equals(targetInput.Name + "." + inputColumn.Name)) { columnInfoMap ci = new columnInfoMap(); ci.inputBufferIndex = BufferManager.FindColumnByLineageID(targetInput.Buffer, inputColumn.LineageID); ci.outputBufferIndex = BufferManager.FindColumnByLineageID(defaultOutput.Buffer, outputColumn.LineageID); this._targetColumnInfoMapList.Add(ci); } } } IDTSInput100 joinInput = ComponentMetaData.InputCollection["Join Input"]; foreach (IDTSInputColumn100 inputColumn in joinInput.InputColumnCollection) { if (((string)ComponentMetaData.CustomPropertyCollection["Join Input Geometry Column"].Value).Equals(inputColumn.Name)) { this._joinGeomIndex = BufferManager.FindColumnByLineageID(joinInput.Buffer, inputColumn.LineageID); } foreach (IDTSOutputColumn100 outputColumn in defaultOutput.OutputColumnCollection) { if (outputColumn.Name.Equals(joinInput.Name + "." + inputColumn.Name)) { columnInfoMap ci = new columnInfoMap(); ci.inputBufferIndex = BufferManager.FindColumnByLineageID(joinInput.Buffer, inputColumn.LineageID); ci.outputBufferIndex = BufferManager.FindColumnByLineageID(defaultOutput.Buffer, outputColumn.LineageID); this._joinColumnInfoMapList.Add(ci); } } } }
public override void PreExecute() { this._relation = (relationType) ComponentMetaData.CustomPropertyCollection["Spatial Relation"].Value; this._targetCache = new OGRBufferCache(); this._joinCache = new OGRBufferCache(); this._targetColumnInfoMapList = new List<columnInfoMap>(); this._joinColumnInfoMapList = new List<columnInfoMap>(); this._targetID = ComponentMetaData.InputCollection["Target Input"].ID; this._joinID = ComponentMetaData.InputCollection["Join Input"].ID; IDTSOutput100 defaultOutput = ComponentMetaData.OutputCollection[0]; IDTSInput100 targetInput = ComponentMetaData.InputCollection["Target Input"]; foreach (IDTSInputColumn100 inputColumn in targetInput.InputColumnCollection) { if (((string)ComponentMetaData.CustomPropertyCollection["Target Input Geometry Column"].Value).Equals(inputColumn.Name)) { this._targetGeomIndex = BufferManager.FindColumnByLineageID(targetInput.Buffer, inputColumn.LineageID); } foreach (IDTSOutputColumn100 outputColumn in defaultOutput.OutputColumnCollection) { if (outputColumn.Name.Equals(targetInput.Name + "." + inputColumn.Name)) { columnInfoMap ci = new columnInfoMap(); ci.inputBufferIndex = BufferManager.FindColumnByLineageID(targetInput.Buffer, inputColumn.LineageID); ci.outputBufferIndex = BufferManager.FindColumnByLineageID(defaultOutput.Buffer, outputColumn.LineageID); this._targetColumnInfoMapList.Add(ci); } } } IDTSInput100 joinInput = ComponentMetaData.InputCollection["Join Input"]; foreach (IDTSInputColumn100 inputColumn in joinInput.InputColumnCollection) { if (((string)ComponentMetaData.CustomPropertyCollection["Join Input Geometry Column"].Value).Equals(inputColumn.Name)) { this._joinGeomIndex = BufferManager.FindColumnByLineageID(joinInput.Buffer, inputColumn.LineageID); } foreach (IDTSOutputColumn100 outputColumn in defaultOutput.OutputColumnCollection) { if (outputColumn.Name.Equals(joinInput.Name + "." + inputColumn.Name)) { columnInfoMap ci = new columnInfoMap(); ci.inputBufferIndex = BufferManager.FindColumnByLineageID(joinInput.Buffer, inputColumn.LineageID); ci.outputBufferIndex = BufferManager.FindColumnByLineageID(defaultOutput.Buffer, outputColumn.LineageID); this._joinColumnInfoMapList.Add(ci); } } } }