问题标签 [biztalk-schemas]

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 投票
1 回答
433 浏览

biztalk - 如何从其他程序集/模式中引用 MSH_25_GLO_DEF 模式

我已经使用 BTAHL7V2X 模式(MSH_25_GLO_DEF 等)构建了一个程序集。

在另一个程序集中,我需要创建一个模式,其中一个元素的类型为 MSH_25_GLO_DEF。

在我的 BTAHL7V2XCommon 程序集中,我有:

在我的另一个程序集中,我有一个如下所示的架构:

我添加了对包含 MSH 标头的 BTAHL7V2X 程序集的引用,如果我在对象浏览器中查看引用的程序集,我可以看到 MSH_25_GLO_DEF,但我总是收到一条错误消息“ http://microsoft.com/HealthCare/ HL7/2X:MSH_25_GLO_DEF未声明,当我查看我的架构时。

我还尝试将导入引用更改为包含:

但在查看架构时会出现不同的错误:

是否有在另一个程序集中引用 BizTalk 架构的正确方法?

0 投票
1 回答
953 浏览

wcf - BizTalk WCF 服务发布向导创建的代码是什么?

我们为第三方供应商公开了 BizTalk 架构作为 WCF 服务,以便他们可以将消息推送到我们的 ESB。WCF 服务有一个函数,它接受并返回该架构类型的消息。问题是,如果没有及时做出响应或其他消息(例如 ESB 生成错误),则第三方应用程序失败/崩溃。

消息中的内容并不重要,只要它具有正确的格式并且返回消息中的数据不被供应商或我们自己使用。供应商还提供了自己的 WCF 服务,如果我们希望这样做,我们可以使用它来传回消息。我想修改现有的 WCF 服务或手动创建一个新的服务,该服务会立即返回响应,但也会将消息传递到 ESB 以进行进一步处理。

我已经使用 svcutil 从 WSDL 创建了一个接口,但找不到任何代码示例来说明如何手动创建 WCF 服务以公开 BizTalk 架构。所有示例都指向向导。

向导创建的代码是什么?有例子吗?谢谢你。

编辑 23/08/2013

因此,更改向导创建的 wcf 服务似乎不是一种选择,也不是手动创建新服务。我尝试创建一个编排,该编排使用服务并发送响应,然后将其绑定到相同的接收端口,如果行程有效,则该端口有效,但如果出现错误则不运行。另外,它仅在行程完成后才运行,这不好。我需要立即回应。

0 投票
1 回答
1083 浏览

biztalk - 具有多个输出消息的 BizTalk 映射

我知道可以创建一个映射,该映射采用一个输入消息并在一个编排中输出多个消息。

当您执行相反的操作时,即将许多消息合并为一个。“向导”创建地图和输入模式。但是,在执行上述操作时,只会创建一个地图。架构是内联的。

有没有解决的办法?我想创建我自己的输出模式和映射而不启动编排。如果我尝试这样做,即使我从生成的 map 复制内联模式结构,我也无法将多条消息分配给输出。

0 投票
2 回答
610 浏览

c# - BizTalk 动态反汇编程序问题 - 正文部分为 NULL

我从这里的解决方案开始http://social.technet.microsoft.com/wiki/contents/articles/20547.biztalk-server-dynamic-schema-resolver-real-scenario.aspx 完美匹配我的场景,除了发送端口,但这不是必需的。我需要接收端口来选择文件并应用架构进行反汇编。从他们的编排中进行映射,其中一些是自定义的,等等。

我已经完成了教程中的所有内容,但我不断收到以下错误。 “执行接收管道失败...正文部分为 NULL”

我没有从教程中得到但不认为它们应该成为问题的东西是:

  1. 我创建了一个新的解决方案和项目来制作 custompipeline 组件(参考图 19)和 dll 文件。意味着它在它自己的命名空间上。然而,从教程看来,他们在主要的 biztalk 解决方案(即具有管道和编排的解决方案)中创建了项目,因此命名空间具有“TechNetWiki.SchemaResolver”。在里面。我应该让 custompipeline 组件具有我的主要解决方案的命名空间吗?我假设这无关紧要,因为我应该能够在其他解决方案中使用此组件,因为它对与 biztalk 应用程序关联的业务规则是通用的。

  2. 我没有的另一部分是“THEN Action”下的图 15,他们将其设置为他们想要反汇编到的目标架构,但随后他们将 #Src1 放在“ http://TechNetWiki.SchemaResolver.Schemas ”的末尾.SRC1_FF#Src1 "。#Src1 有什么用?

0 投票
1 回答
19 浏览

biztalk - 在 Biztalk 的架构级别从文件中消除文件标记

我有顺序文件,其中数据如下,

我的架构通过管道。

这里我担心的是,我想在模式级别消除(而不是在解析时从文件中读取/忽略)标签 103。

有人可以告诉我,我该如何管理它?

只想知道架构级别或简单方式的属性。

0 投票
2 回答
1348 浏览

visual-studio-2010 - 如何在 BizTalk 业务流程中为方案设置表达式中的值?

当我要编译时,显示错误

我的表达代码是:

方案Article.xsd中的 XML 代码:

Message_2分配给分配给发送形状。

Message_2消息类型为BizTalk_Server_Project7.Article 。

0 投票
1 回答
354 浏览

xsd - 复杂的平面文件,这甚至可能与 BTS2013R2 中的平面文件模式有关吗?

我的任务是创建客户系统和内部系统之间的集成。客户发送了一个平面文件,我很难弄清楚如何使用平面文件模式进行解析。

结构是这样的:

每条线都以正常的 CR/LF 结束,并且每条线都是基于位置的。

例子:

这最终应该生成 4 个 XML 节点,但我主要关心的是如何能够创建一个可以实际解释这个的模式,或者使用平面文件模式向导,或者简单地使用平面文件模式。

这是否可行(考虑到各种线路类型、消息长度等)?

0 投票
1 回答
364 浏览

biztalk - BizTalk 文件/消息拆分

我有一个要求,我必须根据源文件中逗号分隔值的第一列的值来拆分文件内容。
要在输出中生成的文件数取决于第一列中唯一值的数量。

例如:

FileName.txt
Code001,value11,value12,value13,value14
Code002,value21,value22,value23,value24
Code003,value31,value32,value33,value34
Code001,value15,value16,value17,value14
Code003,value37,value38,value39,value31

输出必须是文件数作为文件内容第一列中的唯一值。

Ex 输出:它应该是 3 个单独的文件,名称和内容如下

Code001.txt
Code001,value11,value12,value13,value14
Code001,value15,value16,value17,value14

Code002.txt
Code002,value21,value22,value23,value24

Code003.txt
Code003,value31,value32,value33,value34
Code003,value37,value38,value39,value31

0 投票
1 回答
564 浏览

xml - 无效的子元素

我正在尝试对 BizTalk 2010 中的信封做一些实验,因为一条消息将由多个项目组成。我的信封架构如下:

信封:

单个项目的架构如下。每个信封可以包含多个项目。

当我尝试创建我的 xml 数据时,BizTalk 不喜欢我的 xml,并且在我的第二个项目上有一条波浪线,表示无效的子元素。

在此处输入图像描述

有人能指出我的数据有什么问题吗?

0 投票
1 回答
395 浏览

biztalk - 在 BizTalk 平面文件处理中丢弃任意标题行?

我找到了这些相关的线程,但它们没有直接回答我的问题:

BizTalk - 带有标题多条记录和页脚的平面文件 - 反汇编问题

从 BizTalk 中的平面文件中删除标题

我正在处理一个旧系统,它提供具有非常松散架构的平面文件。特别是,标题由两行组成:第一行是标题,第二行是列标题。所有后续行都是有效记录。

问题是当那天没有记录时,列标题被省略;在这种情况下,我们有文档标题,然后是一个摘要行(供人类使用),通知读者当天没有记录。

因为同一个文件可以有如此不同的格式,所以我很难创建一个可以在我的平面文件接收管道中使用的头模式,这将允许我剥离头信息。此外,由于标题是多行,看来我不能只使用回车分隔符。

我尝试了两种方法:

  • 包含两个回车符分隔的字段元素的标头模式,每个元素都是不透明的字符串
  • 包含两个回车分隔记录的标题模式,每个记录都定义了一个虚拟中缀分隔符,该分隔符永远不会存在于任何一行中(导致每条记录一个不透明的字符串)

但是,当我部署这些文件时,BizTalk 会拾取文件并处理它们,但它实际上不会产生任何消息。这使我相信 BizTalk 将我的平面文件视为整个文件是标题,因此它找不到任何记录。

我试图找到的解决方案是如何创建一个标头架构,使 BizTalk 将文件的前两行视为标头,无论其内容如何,​​并丢弃它们。这可能吗?

编辑:不同文件的示例:

存在记录:

此文件中没有记录:

  • 第一行总是相同的,并且可以用位置分隔的记录来描述。
  • 第二行是逗号分隔的列名列表,或此EOF行。
  • EOF仅在没有记录时出现。

目前,我只能通过将标题和文档模式之间的分隔符定义为整个列标题行来处理带有记录的文件,即CustomerName, OrderNumber, Expedite, ItemNumber, Count{CR}{LF} ,但是,当它找到空文件***EOF***而不是列标题字符串时,此标题模式会失败。