/// <summary>
 /// Получение входного потока с указанным именем.
 /// </summary>
 /// <param name="collection">Коллекция входных потоков.</param>
 /// <param name="name">Имя входного потока.</param>
 /// <returns>Метод возвращает входной поток с именем, указанным в параметре <paramref name="name"/>.</returns>
 /// <exception cref="Exception">Исключение возникает, если в коллекции не найдено входного потока с указанным именем.</exception>
 public static IDTSInput100 GetInputByName(this IDTSInputCollection100 collection, string name)
 {
     foreach (IDTSInput100 input in collection)
     {
         if (input.Name == name)
         {
             return(input);
         }
     }
     throw new Exception($@"Could not find input stream with the name of ""{name}"".");
 }
        protected void LoadVirtualInput()
        {
            Debug.Assert(this.componentMetadata != null);

            IDTSInputCollection100 inputCollection = this.componentMetadata.InputCollection;

            if (inputCollection.Count > 0)
            {
                IDTSInput100 input = inputCollection[0];
                this.virtualInput = input.GetVirtualInput();
            }
        }
        public override DTSValidationStatus Validate()
        {
            bool cancel;
            IDTSInputCollection100  inputCollection  = ComponentMetaData.InputCollection;
            IDTSOutputCollection100 outputCollection = ComponentMetaData.OutputCollection;

            // Make sure there is one input.
            if (inputCollection.Count != 1)
            {
                ComponentMetaData.FireError(0, ComponentMetaData.Name, "Should only have a single input.", string.Empty, 0, out cancel);
                return(DTSValidationStatus.VS_ISCORRUPT);
            }
            else if (inputCollection[0].InputColumnCollection.Count == 0)
            {
                ComponentMetaData.FireError(0, ComponentMetaData.Name, "There should be at least one input column.", string.Empty, 0, out cancel);
                return(DTSValidationStatus.VS_ISBROKEN);
            }

            // Make sure there is only one error output.
            if (outputCollection.Count != 1)
            {
                ComponentMetaData.FireError(0, ComponentMetaData.Name, "Should only have a single output.", string.Empty, 0, out cancel);
                return(DTSValidationStatus.VS_ISCORRUPT);
            }
            else if (outputCollection[0].OutputColumnCollection.Count == 0)
            {
                ComponentMetaData.FireError(0, ComponentMetaData.Name, "There should be at least one output column.", string.Empty, 0, out cancel);
                return(DTSValidationStatus.VS_ISBROKEN);
            }

            if (ComponentMetaData.AreInputColumnsValid == false)
            {
                return(DTSValidationStatus.VS_NEEDSNEWMETADATA);
            }


            return(base.Validate());
        }
 /// <summary>
 /// Получение входного потока по умолчанию.
 /// </summary>
 /// <param name="collection">Коллекция входных потоков.</param>
 /// <returns>Метод возвращает входной поток с именем <c>Input</c>.</returns>
 public static IDTSInput100 GetDefaultInput(this IDTSInputCollection100 collection)
 {
     return(collection.GetInputByName("Input"));
 }
Beispiel #5
0
 internal BipsProxyIDTSInputCollection100(IDTSInputCollection100 innerObject)
 {
     _innerObject = innerObject;
 }