public void ChainComponent(SsisComponent component, InputPath inputPath) { if (inputPath == null || (string.IsNullOrEmpty(inputPath.Name) && string.IsNullOrEmpty(inputPath.Source))) { ChainComponent(component); } else { IDTSOutput100 dtsOutput = FindOutput(inputPath); MainPipe.PathCollection.New().AttachPathAndPropagateNotifications(dtsOutput, component.Component.InputCollection[0]); component.Flush(); AddComponent(component); } }
public void ChainComponent(SsisComponent component, InputPath inputPath, IDTSInput100 input) { if (input == null) { ChainComponent(component, inputPath); } else { IDTSOutput100 dtsOutput = FindOutput(inputPath); MainPipe.PathCollection.New().AttachPathAndPropagateNotifications(dtsOutput, input); component.Flush(); AddComponent(component); } }
private IDTSOutput100 FindOutput(InputPath inputPath) { if (!string.IsNullOrEmpty(inputPath.Source)) { foreach (SsisComponent component in _componentList) { if (string.Compare(inputPath.Source, component.Component.Name, true, System.Globalization.CultureInfo.InvariantCulture) == 0) { foreach (IDTSOutput100 dtsOutput in component.Component.OutputCollection) { if (string.Compare(inputPath.Name, dtsOutput.Name, true, System.Globalization.CultureInfo.InvariantCulture) == 0) { return dtsOutput; } } } } this._message.Trace(Severity.Error, Resources.InputPathError1, inputPath.Source, inputPath.Name); } else { foreach (SsisComponent component in _componentList) { foreach (IDTSOutput100 dtsOutput in component.Component.OutputCollection) { if (string.Compare(inputPath.Name, dtsOutput.Name, true, System.Globalization.CultureInfo.InvariantCulture) == 0) { return dtsOutput; } } } this._message.Trace(Severity.Error, Resources.InputPathError2, inputPath.Name); } return null; }
public Transformation() { this._inputPath = new InputPath(); this._outputPath = new OutputPath(); }