平面文件目标具有来自自定义数据流任务的多个输入

时间:2018-04-10 16:28:15

标签: ssis sql-server-data-tools

我按顺序使用以下数据流任务设置SSIS包:

  1. 平面文件来源
  2. 派生专栏
  3. 自定义任务
  4. 平面文件目的地
    • 平面文件源包含固定宽度的数据行(每行282个字符)。
    • 派生列使用SUBSTRING()方法将每行拆分为列。
    • 自定义任务执行一些正则表达式验证并创建两个新的输出列:RowIsValidDT_BOOL)和InvalidReasonDT_WSTR为200)。此任务没有自定义UI。
    • 平面文件目标是分隔列格式的验证数据。最终,这将是一个 数据库目的地。

    我知道可以使用Script Task完成此操作。事实上,我目前在我的解决方案中这样做。但是,我要完成的是构建自定义任务,以便代码更改在单个位置完成,而不必更改多个Script Tasks

    我有几个问题我想克服并希望得到一些帮助/指导:

    1. Major )目前,当我查看Flat File Destination的映射时,Available Input列来自Flat File Source,Derived Column Task和Custom Task 。只有一列来自平面文件源(因为只有一列),而派生列和自定义任务都具有在派生列中创建的所有列。

      我的期望是可用输入列将/应该仅显示自定义验证器中的Custom Validator.[column name]列(仅包含列名)。调试时,我不知道我可以操纵和禁止Derived Column.[column name]列。

    2. Minor )在附加输入时,自动选择或使用派生列任务中的输入列。

      目前,在连接了Custom Validator的输入和输出之后,我必须转到Advanced Edit的Inputs选项卡并选择我想要的列。我选择全部,因为我希望所有列都能完成任务,即使只有一些列会被任务验证。

0 个答案:

没有答案