ssis - 如何从 ssis 中的脚本任务中获取变量的值
问题描述
我在 SSIS 中的一个脚本任务中有以下代码:
public void Main()
{
string filename;
filename = Dts.Variables["User::FileName"].Value.ToString();
string getEmployerId = filename.Split('_')[0];
int employerId = Int32.Parse(Regex.Match(getEmployerId,
@"\d+").Value);
int fail = 1;
我需要employerId
从此代码中获取值并将其作为变量存储在我的 SSIS 包中。
有谁知道这样做的最好方法是什么?
解决方案
据我所知,您正在从文件名中检索 EmployerId,对吗?如果是,则不需要使用脚本任务。只需创建一个新变量并设置一个表达式来解析 EmployerId。如果你能提供文件名,我可以帮助表达。
更新
基于可变字符长度和无法更改文件名以包含另一个分隔符,您将需要使用正则表达式在脚本任务中处理此问题。请参阅下面的网络链接:
在控制流中:
- 创建由 for each 循环枚举器设置的字符串类型的文件名变量
- 创建一个 int32 类型的 EmployerID 变量
在脚本任务中:
- 选择文件名为只读,EmployerID 为读写
- 获取文件名值
- 使用您的正则表达式获取 EmployeID
- 设置 EmployerID 变量
推荐阅读
- r - 如何求和对应于组元素的列?
- xmlhttprequest - cypress 和 react-apollo 的兼容性
- python - 如何使用 Python 将 SQL 查询拆分为多个部分、清理它们并获取子句之间的功能?
- json - 是否可以使用新的 clickatell API 添加 FROM 到 SMS?
- c - Node.js 接受请求,形成 2xx 响应,但响应状态码为 400
- c# - 根据分隔符从现有列表创建较小的列表
- android - Recyclerview 字母滚动条
- sql - Oracle SQL 重用用户输入
- python-3.x - 手动添加成本会导致 MissingDataError
- python - 如何在 Python 的列表推导下使用 if 和 else 语句从数字列表中列出奇数和偶数?