重命名文件源

2024-03-10

我一直在从平面文件源开发 SSIS 包。该文件每天都会出现,文件名具有日期时间指示,如下所示:

文件名_20190509042908.txt

我想知道如何才能度过约会部分;我希望包动态读取文件,但它应该在没有最后 6 位数字的情况下通过,我只是不需要最后 6 位数字,因为它不一致。

我想传递Filename_20190509.txt

我已经弄清楚如何获取文件名直到日期并删除时间部分。因此,我很难通过忽略文件扩展名前的最后 6 位数字来让包动态读取文件名。

有人可以帮我解决这个问题吗?


从完整文件路径中删除时间部分

假设完整文件路径存储在名为的变量中@[User::FilePath]

您必须添加一个字符串类型的变量(例如:@[User::Filename]), 数据流任务之前add an Expression Task并使用以下表达式:

@[User::Filename] = SUBSTRING(@[User::FilePath], 1, LEN(@[User::FilePath]) - 
FINDSTRING(REVERSE(@[User::FilePath]), "\\", 1)) + "\\" + 
LEFT(TOKEN(@[User::FilePath],"\\",TOKENCOUNT(@[User::FilePath],"\\")),
LEN(TOKEN(@[User::FilePath],"\\",TOKENCOUNT(@[User::FilePath],"\\"))) - 10) + ".txt"

Example:

如果值@[User::FilePath] is

C:\新文件夹\1\Filename_20190503001221.txt

Then @[User::Filename]将:

C:\新文件夹\1\Filename_20190503.txt


如果您只有文件名

文件名_20190503001221.txt

并且文件夹路径存储在另一个变量中,只需使用以下表达式:

@[User::Filename] = @[User::Folderpath] + "\\" + 
LEFT(TOKEN(@[User::FilePath],"\\",TOKENCOUNT(@[User::FilePath],"\\")),
LEN(TOKEN(@[User::FilePath],"\\",TOKENCOUNT(@[User::FilePath],"\\"))) - 10) + ".txt"

从变量读取文件源

Click on the flat file connection manager used to read the source file, press F4 to show the properties tab, Click on the expression property and assign the following expression to the connectionstring property:

@[User::Filename]

现在改变数据流任务 Delay validation财产价值为True.

  • SQL Server Integration Services 中的动态平面文件连接 https://www.mssqltips.com/sqlservertip/1084/dynamic-flat-file-connections-in-sql-server-integration-services/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

重命名文件源 的相关文章

随机推荐

  • 如何在Nginx中将所有Angular请求重定向到index.html

    我创建了一个简单的 Nginx 配置文件来服务 Angular 如下所示 server listen 80 listen 80 root path to apps myapp current dist access log path to
  • 将 1D 向量 (nx1) 更改为 3D 矩阵 (1x1xn)

    Given a 1 2 3 我想将其更改为b where b is b 1 1 1 1 b 1 1 2 2 b 1 1 3 3 我怎样才能做到这一点 没有内置命令吗 Use permute http www mathworks com he
  • JBoss Tools 部署错误:这可能是由于服务器的临时部署目录位于与最终目标不同的文件系统上造成的

    在 Eclipse 中使用 JBoss Tools 部署应用程序时出现以下错误 将 C wildfly 8 1 0 Final standalone tmp tmp7858611943756287857 xhtml 重命名为 C wildf
  • 如何将宏定义作为参数传递给 make?

    我希望通过将 C 宏作为参数传递给make 从命令行调用 背景 我想要指令 define ENABLE OPT 1当选择某个构建选项时 将包含在我的 C 源代码中 因此 我希望通过make命令行而不是修改源代码or生成文件 如何才能实现这一
  • 如何将一个模板插入到另一个模板中?

    我有一个非常基本的模板 basic template html 并且想要填充使用另一个部分模板格式化的数据 basic template html 可能包含使用部分模板格式化的一些内容 我应该如何构建views py中的代码 我这样做的原因
  • Carbon.php 第 425 行中的 Laravel InvalidArgumentException:使用 SQL 数据库跟踪数据

    我正在更新我的laravel 5 2从 MYSQL 到 SQL 数据库的应用程序 我一直面临着这个异常之后的碳日期格式问题 InvalidArgumentException in Carbon php line 425 Trailing d
  • 如何从 Intellij IDEA 访问内存中的 h2 数据库

    在 Spring Boot 项目中 我尝试从 IDE 查看内存中的表 如何从 Intellij IDEA 访问内存中的 h2 数据库 这是我的一个片段应用程序 yml h2 datasource url jdbc h2 mem mydb u
  • 使用 Mockito 检查多个参数的一致性

    我正在使用 Mockito 来模拟一个类 该类的方法如下所示 setFoo int offset float floats 我希望能够验证数组中的值 floats 等于 在给定容差范围内 预期值数组中的值 问题是我想检查的内容floats从
  • 如何对 Matlab 语言进行写保护?

    Matlab 允许您覆盖内置函数而无需发出警告 例如 我重写了该函数max 有一个变量 但 Matlab 没有提醒我这一点 仅在稍后调用该函数时才会抛出错误 并且不能帮助您查看实际问题 min 0 max 10 x linspace min
  • 表示 DAG(有向无环图)

    我需要将依赖项存储在 DAG 中 我们正在非常细粒度地 制定新的学校课程 我们使用的是 Rails 3 注意事项 宽大于深 很大 我估计每个节点有 5 10 个链接 随着系统的增长 这个值将会增加 读多写少 most common are
  • 如何在 XNA 中暂停重绘?

    我制作了一个 XNA 图像查看器 但它总是重新绘制场景 即使它没有改变 而且它让我的上网本烧得很厉害 所以我希望它在没有任何变化时暂停绘制 将帧速率降低到 1 是保持凉爽的一种方法 但会导致输出滞后 如何在没有输入的情况下防止重绘 这个问题
  • 如何更改 JFreeChart 的大小

    我添加了一个JFreeChart to a JPanel 用一个BorderLayout 并且它是huge 我可以做些什么来让它变小吗 public void generateChart DefaultCategoryDataset dat
  • 这个Handler类应该是静态的,否则可能会发生泄漏:AsyncQueryHandler

    处理程序引用泄漏 由于此处理程序被声明为内部类 因此可能会阻止外部类被垃圾收集 如果 Handler 在主线程以外的线程中使用 Looper 或 MessageQueue 则没有问题 如果 Handler 使用主线程的 Looper 或 M
  • 如何对具有多个值的多个列求和

    我正在寻找以下问题的解决方案 进入用户表并查找在网站上列出了项目的用户 在这个用户表中 没有关于拍卖的列 相反 它通过键连接到帐户表 在帐户中 此列称为用户 从这些 ID 已列出拍卖物品的用户 中 我需要找到他们的帐户余额 这也在账户表中
  • 将 jdouble 转换为 c 类型的 double

    我怎样才能转换jdoublejava类型变量为doublec 类型的变量 你不必这样做 它只是一个 typedef 如下所示 typedef double jdouble 所以一旦你有了一个 就不需要转换jdouble你可以把它当作doub
  • 是否使用drawRect(什么时候应该使用drawRect/Core Graphics vs 子视图/图像,为什么?)

    为了澄清这个问题的目的 我知道如何使用子视图和使用drawRect创建复杂的视图 我试图完全理解何时以及为何使用其中一种而不是另一种 我也明白提前优化那么多并在进行任何分析之前以更困难的方式做一些事情是没有意义的 考虑到我对这两种方法都很满
  • 为什么CSS3中有-moz-XXX和-webkit-XXX?

    我在 CSS3 中最讨厌的一点是 你总是应该使用两个属性来实现一种效果 我觉得这样不专业 加大CSS大小 例如 他们为什么不团结起来 webkit border radius and moz border radius in border
  • ValueTypes 如何从 Object (ReferenceType) 派生并且仍然是 ValueTypes?

    C 不允许从类派生结构 但所有 ValueType 都从 Object 派生 这种区别是在哪里做出的呢 CLR 如何处理这个问题 C 不允许从类派生结构 你的说法不正确 因此你感到困惑 C does允许结构从类派生 所有结构都派生自同一个类
  • VS 2015中的类库(包)在哪里?

    我正在尝试将类库 包 添加到我的 ASP NET MVC 5 项目中 但由于某种原因我找不到该选项 我是否必须安装其他依赖项才能获得该选项 它现在称为 类库 NET Core
  • 重命名文件源

    我一直在从平面文件源开发 SSIS 包 该文件每天都会出现 文件名具有日期时间指示 如下所示 文件名 20190509042908 txt 我想知道如何才能度过约会部分 我希望包动态读取文件 但它应该在没有最后 6 位数字的情况下通过 我只