问题标签 [script-component]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
774 浏览

web-services - 如何在 SSIS 中调用具有多个输入(在脚本组件中)的 Web 服务?

我需要使用允许我执行特殊计算的 Web 服务。为此,我使用了 Web 服务任务,但问题是我只知道如何调用 Web 服务一次(1 个输入值),并且需要执行多个值的计算。

在此处输入图像描述

我想出了这两个选项来实现我的目标

选项1:

  • 在我看来,使用数据流任务而不是 WS 任务在脚本组件中调用 Web 服务会更好(但不知道如何在脚本中调用 WS ??)。

选项 2:

  • 保留 Web 服务任务并为我的多个输入值执行计算。
0 投票
1 回答
2196 浏览

c# - 在 SSIS 中使用 Web 服务会导致“处理器架构之间不匹配”

我尝试了下面的教程以在 SSIS 的脚本组件中使用 Web 服务。

--教程链接--

预编译后,我收到以下警告:

警告 1 正在构建的项目“MSIL”的处理器架构与参考“Microsoft.SqlServer.DTSRuntimeWrap, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91”, “AMD64”的处理器架构不匹配. 这种不匹配可能会导致运行时失败。请考虑通过配置管理器更改项目的目标处理器体系结构,以便在项目和参考之间对齐处理器体系结构,或者依赖具有与项目的目标处理器体系结构匹配的处理器体系结构的参考。C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets

而且我的脚本组件无法运行。

我在这里找到了微软的解决方案,但我不能在 SSIS 中应用它。任何帮助表示赞赏

- 编辑 -

我向 Microsoft 发送了新的反馈,他们正在审查该问题 - 状态:活动

0 投票
3 回答
20763 浏览

ssis - 在 SSIS 脚本组件源中读取对象变量值

是否可以在 SSIS 脚本组件源中读取对象变量值?

我有一个 Object 类型的变量,它包含使用 SQL 脚本任务填充的表中的记录。

我已经使用了这个脚本任务,它通过使用下面的代码完美地工作

这样,vTableRowsObj对象变量在哪里。

我想在 SSIS 脚本组件中读取此对象,以便可以直接将脚本组件的输出提供给目标表。

最终目标是我计划创建更多对象变量,并简单地通过读取这些对象,将输出从脚本组件提供给目标表。

0 投票
1 回答
13481 浏览

c# - 在 SSIS 脚本组件任务中读取 CSV 文件

我创建了一个转换来将数据从 CSV 文件复制到 SQL Server 表。由于我的 CSV 文件是动态的,并且在给定时间可以包含任意数量的列,因此我包含了一个ScriptComponent任务来维护映射 b/w 'FlatFileSource''OLEDBDestination'任务。

我现在可以复制数据,但列名行也被添加为我不想要的目标表中的数据行。下面是我在脚本任务中编写的代码,用于读取 csv 并将行添加到输出缓冲区。

如果我需要从我的 ssis 那里获得更多信息,请告诉我。谢谢!!

0 投票
2 回答
2647 浏览

stored-procedures - SSIS 脚本组件调用存储过程返回 -1

我尝试实现对 Stored proc 的调用,并且 proc 返回稍后将使用的 ID。每次执行时,我都会将输出参数设为 -1。下面是我的示例代码:

personID 始终为 -1。我在这里做错了什么。请帮忙..!!下面是存储的过程代码

0 投票
1 回答
8732 浏览

c# - 从 SSIS 2012 脚本组件中的 PipelineBuffer 获取列名

我试图从我的脚本组件转换中的 PipelineBuffer 获取列名和索引,并将它们添加到哈希表中。我知道如果我将课程从:更改public class ScriptMain : UserComponentScriptMain : PipelineComponent并使用以下代码,这是可能的:

然而; 当我这样做时,我不能再覆盖:public override void Input0_ProcessInputRow(Input0Buffer Row)因为这在 PipelineComponent 类中不可用,并且我不能再通过简单地调用类似这样的东西来访问我的连接管理器:IDTSConnectionManager100 connMgr = this.Connections.DbConnection;据我所知,BufferManager 在 UserComponent 类中不可用。有没有办法使用 UserComponent 来实现这一点?

0 投票
0 回答
287 浏览

xml - SSIS Get Table Name

What I want to accomplish is to get the table name where the Error Description Occurs. What Im thinking is to get the component name of the OLEDB Destination(occupancy/attachedStructures), but I dont know how to do it, or are there any other ways to do it.

Here is my sample Diagram based from the steps here
SSIS Diagram

0 投票
1 回答
1169 浏览

c# - SSIS 脚本组件 - 处理 1 行 Json 到表

我是 SSIS 的新手。我正在尝试从表中获取一个包含 Json 字符串的字段作为输入,并将 Json 转换为表作为输出。我在 SSIS 中设置了一个异步脚本组件,选择了 Json 字段作为输入列,还创建了输出列,但我遇到了一些问题:

  1. 如何从输入中获取值?我尝试在“ProcessInputRow”方法中将输入列提取为字符串,例如

    string = Row.MData 我得到“无法将类型'Microsoft.SqlServer.Dts.Pipeline.BlobColumn'隐式转换为'string'”

    或者当我尝试将其转换为字符串时返回“Microsoft.SqlServer.Dts.Pipeline.BlobColumn”

  2. 我应该只在“ProcessInputRow”中编写代码,因为我可以使用 OutputBuffer.AddRows 来构造我的输出吗?并忽略“CreateNewOutputRows”,因为我无法访问“CreateNewOutputRows”中的输入数据?

  3. 或者有什么更好的方法建议吗?

0 投票
1 回答
5125 浏览

sql-server - SSIS 脚本组件或脚本任务写入作业历史记录日志

  • 我正在使用 SQL Server 2008 R2。
  • 我有一个执行 SSIS 包的计划作业 - 在 SQL 代理中运行。
  • 我想记录计划作业中发生的消息。
  • 我想记录来自脚本组件或脚本任务的消息。
  • 我不想只记录错误,我想记录成功消息,例如“已处理的 X 记录”。
  • 我不想构建自定义表或任何东西。
  • 理想情况下,我希望在 Job History 日志中看到这些消息
0 投票
1 回答
30984 浏览

sql - SSIS - 值太大,无法放入缓冲区的列数据区域

我将一列 Json 数据传递给脚本组件进行处理。在我有一个包含超过 600,000 长度的 Json 数据之前,它一直很好,然后出现以下错误。

错误

我确实将MaxBuffer大小改为10MB,我的数据只有600K左右,但还是不行,请指教。