问题标签 [biml]
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.
bids - BIML 永远不会正确生成 Package ProtectionLevel
我已将我的项目级别保护级别设置为 EncryptSensitiveWithPassword,并且在我使用 BIML 生成的所有包中,我都有以下代码
出于某种原因,每次使用 BIDS Helper 生成包后,我都必须手动将 ProtectionLevel 设置为 EncryptSensitiveWithPassword。这是一项痛苦的工作。我不知道为什么不应该工作。有什么线索吗?
我正在使用从 Codeplex 和 SQL Server Data Tools 版本 2012 下载的 1.7.0 版本的 BIDSHelper(您可能已经知道令人困惑的部分是 VS 版本是 2010)
更新: 下面是 iamdave 推荐的 biml 新结构,它不会在 ProjectSubPath 中生成任何输出,并且 ExceptionDataMigrator 包仍在使用默认包保护生成
ssis-2012 - 如何使用 BIML 设置数据流的布局属性?
我的包裹里的每样东西都是衬里,这使它看起来很薄很高,里面有很多任务。是否可以从 BIML 设置宽度、高度和位置等任务的布局?所以我可以让它看起来很好看?
我可以用包和容器在逻辑上将任务分成更小的组,但我得到的至少一个可能是平均 20 个 DFT。
visual-studio-2010 - 所有 BIML 脚本的代码窗口中存在非法语法错误
我想知道代码窗口中是否会出现非法语法错误,还是只有我自己?它只是无法识别代码指令 <# #> 并且在我嵌入了 c#scripts 的任何地方都给出了非法的语法错误。
例如:
这一行给了我 3 个语法错误
- 第一次出现“#”表示非法语法。期望有效的开始名称字符。
- 在“模板”处,它给了我错误 * 属性“模板”上缺少属性值。
- 在 '#' 第二次出现时,它给出错误 *Character '#',十六进制值 x023 在 xml 命名空间中是非法的。
尽管存在这种语法错误,但我的 biml 脚本没有任何问题,除非存在真正的问题。编写代码非常烦人,尤其是在我调试以修复正版代码时。
这是预期的吗?我们能摆脱这个吗?我已经安装了 1.7.0 版本的 BIDSHelper(最新下载)并使用 SSIS 2012。
ssis-2012 - SSIS BIML:如何在编译时忽略/跳过 BIML 脚本
我的项目中有一组 BIML 脚本,其中一个包给出了编译错误,因为它引用了一些稍后将被新表替换的表。这个包是独立的,每周按计划运行。我暂时禁用了计划作业,并在更改此包后启用。
现在,在模式更改完成之前,我仍然想编译其他脚本,除非我从项目中删除脚本,否则这是不可能的。有没有办法在编译期间暂时忽略这个脚本?
ssis - BIML,属性 SortKeyPosition 未设置为组件 Merge Join 的 OutputColum 部分中的属性
在 biml 生成的 Merge Join 组件上,我收到以下错误。当双击 SSIS 中的合并连接组件时,我在 SSIS xml 代码中发现它在 OutputColumn 部分中添加了 SortKeyPosition="1"。之后我能够成功执行包。如何在 biml 中为此特定部分 OutputColumn 设置 SortKeyPosition。下面是错误和我的 biml 代码。
[SSIS.Pipeline] 警告:MERGEJOIN_wcs_customer_order_line.Outputs[Output] 的 IsSorted 属性设置为 TRUE,但其所有输出列的 SortKeyPositions 都设置为零。[MERGEJOIN_wcs_customer_order_line [130]] 错误:SortKeyPosition 值为 0 的列无效。应该是 1。 [MERGEJOIN_wcs_customer_order_line [130]] 错误:SortKeyPosition 值为 0 的列无效。应该是 2。 [SSIS.Pipeline] 错误:“MERGEJOIN_wcs_customer_order_line”验证失败并返回验证状态“VS_NEEDSNEWMETADATA”。
ssis - 从 RootNode 中删除 Biml 中的列
在我们的 Biml 文件中,我们rootnode
使用该GetDataSchema()
方法构建了一个数据模型。SSIS 包基于模型中的表和列。
我们希望能够在RootNode
编译包之前从 中删除一列。请让我知道如何做到这一点?能不能用这个RemoveRootNode(0
方法。如果是这样。如何?谢谢你。
ssis-2012 - BIML RootNode 与命名服务器保持空白
我被一段非常简单的代码中的一个问题惊呆了:RootNode 只包含 1 个这样的连接(我删除了敏感数据):
当我将编译后的 BIML 写入 XML 文件时,它包含这个确切的连接节点。但是,当我使用 RootNode.Connections["Source"].GetDatabaseSchema 它会产生错误:
错误 0:BimlScript 代码产生异常:提供的连接必须是此方法的 AstDbConnectionNode 类型。
我认为编译器无法将我的连接识别为 DBConnection。我正在使用 2 个 BIML 文件,一个用于连接,一个用于导入。
我尝试了什么: - 验证连接是否有效并且我可以访问(使用 SSIS) - 将所有内容放入一个文件中 - 尝试找出命名服务器中的反斜杠是否是问题所在。看起来这不是问题,因为反斜杠在 XML 中不是特殊字符。
关于这个错误的任何想法,或者我如何才能找到更多信息?
谢谢,
约翰
ssis - BIML Teradata Source 给出查询错误
我有一个 biml 脚本,旨在将数据从 Teradata 源传输到文件。我们有标准的 SSIS,所以不能使用 Attunity 驱动程序。我正在使用 ADO.Net 连接,如果我生成一个仅包含该连接的包,然后手动添加数据流,则该连接可以正常工作。但是,当尝试使用 BIML 添加数据流时,AdoNetSource 会出现以下错误:
建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)。
我可以毫无问题地从我的电脑连接到 Teradata 服务器并运行所有查询。
biml 的简化版本:
odbc - BIML GetDatabaseSchema 不适用于 ODBC 进度源数据库
我正在尝试使用 BIML 生成一个自动登台区域。源数据库是 Progress 并通过 ODBC 连接。
我正在使用以下演练: https ://www.cathrinewilhelmsen.net/2015/07/12/biml-extension-methods-getdatabaseschema/
http://bimlscript.com/walkthrough/Details/3121
1-2-环境.biml:
Source2 是正常的 ODBC 连接,Source 是使用 OLEDB 进行 ODBC 测试。
1-2-CreateTableMetadata.biml
1-x-DeployTargetTables.biml:
问题是,生成的 MasterTableDeploy.dtsx 包不包含任何内容,它只是空的。作为测试,我使用我们自己的 SQL Server 作为源,它工作得非常好。使用 Progress ODBC Source 没有任何作用,没有错误消息。
有任何想法吗?
sql-server - 使用带有临时表的存储过程的 BIML 生成 SSIS 包
大多数人都知道,只要将带有临时表的存储过程用作 OleDbSource,SSIS 就很难读取元数据。以前,这可以通过添加 SET FMTONLY OFF 来轻松防止;在执行语句之前。这样做的缺点是存储过程在验证期间被执行,这可能需要一段时间。从 SQL 2012 开始,我们可以使用 WITH RESULT SETS 来指定列及其数据类型。SSIS 将接受这一点,并且在 SQL 领域一切都很好。
但是,我想用 BIML 生成一个包,它使用这样的存储过程作为源,但我无法让它工作。假设我有一个名为“dbo.csp_MyCsp”的存储过程,它使用一个名为“#MyTempTable”的临时表,其中包含 1 列“ColA int”。我正在尝试使用以下(类似)Biml 代码生成 OleDbSource:
我收到一条错误消息,提示“无效对象 #MyTempTable”。奇怪的是,如果我打开一个包并将该代码粘贴到我的 OleDbSource 中,它可以正常工作而没有任何错误。我有一种直觉,SSIS 和 BIML 的验证步骤是不同的。
你们有没有合适的解决方案?我不能使用 FMTONLY OFF,因为存储过程需要一些时间来加载,这会导致生成超时。我正在使用 SQL Server / SSIS 2014。
提前致谢!
马文