问题标签 [biztalk-mapper]

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 回答
800 浏览

xslt - Biztalk Mapper XSLT 从输入中去除字符串

我有一个带有节点名字的源模式(包含名字+''+中间名),我需要在目标模式中分离出中间名,以便将其发送给OtherNames。

我目前有以下xslt 模板

此 xslt 模板的当前输出是两次而不是一次写出中间名:

预期的:

样本输入

样本输出

我正在考虑更正当前的 xslt 并更新以合并具有相同子元素名字的其他合作伙伴元素。

0 投票
1 回答
474 浏览

schema - 在组装期间向平面文件添加填充字符

我正在创建一个简单的应用程序,它接收一个 xml 文件,将其映射到另一个模式,然后将其转换为文本文件,并将其放入文件夹中。

我使用平面文件向导和设置发送管道创建了一个模式。

我的问题是,在平面文件中,我想在每个元素之前添加填充字符,例如“Helloworld,”嘿,“12

最好的方法是什么?最好在从源架构到目标架构的映射期间执行此操作(在映射期间的每个元素之前添加一个“)。在这种情况下,目标架构中的所有元素都不需要是“字符串”类型吗?是否有更好的方法来做到这一点?

0 投票
2 回答
351 浏览

biztalk - Biztalk 在映射转换之前预加载输出消息

我有来自 2 个不同系统(SystemA 和 SystemB)的 2 条相关传入消息,我只想将 SystemA 消息中的几个字段复制到 SystemBmessage。

所以我的 Construct Message 形状如下所示:

在此处输入图像描述

消息分配形状里面只有这个代码:

然后,该映射只有左侧的 2 个输入(SystemA 模式和 SystemB 模式)ORU 消息和右侧的输出 ORU 消息,它们也与 SystemB 输入消息共享相同的模式。

我希望我可以只使用上面的消息分配代码来分配输出msgComboWithAttach消息,然后使用映射器将我们需要的几个字段从 SystemA 消息映射到 SystemB 消息。

但似乎一旦我应用地图,它就会msgComboWithAttach在执行转换之前清除预加载的消息,然后应用地图。然后,生成的消息包含在映射中复制的那些字段,并且不包含在消息分配pre-load中分配的其他段/字段。

这是预期的行为吗,在这种情况下,我必须对地图中的所有部分进行批量复制?或者有没有办法像我想要的那样预加载/复制消息,然后只映射几个字段?

0 投票
2 回答
1152 浏览

biztalk - 使用 XML 实例测试地图时 BizTalk 错误 btm 1044

我创建了一个发送和接收模式,并为接收模式生成了一个 XML 实例。我在发送和接收模式之间创建了映射。当我尝试测试地图时,我使用了使用接收模式创建的实例作为输入实例。它抛出一个错误,如

TestMap 使用以下文件:作为 map.error btm1044 的输入:输入验证错误:未声明元素。

接收模式

使用的输入 XML 实例是

谁能帮我吗。

谢谢

0 投票
1 回答
187 浏览

biztalk - 使用 Map 转换 HL7,源端缺少 2 个输入消息字段

考虑这样一种情况,您有 2 个接收位置,每个接收位置都有自己独特的消息类型。基于这些消息中的每一个中的共享唯一值,存在一个具有并行关联的编排。

一旦出现相关集,编排就会运行,它的工作是合并来自 2 条消息的数据并从中创建 1 条消息。我的想法是使用一个包含 2 条输入消息的地图:相关性中每种类型的 1 条。目标模式恰好与输入模式之一相同(所以我们基本上只是从另一个向其中一个添加数据)

我可以创建地图,选择 2 输入消息模式和目标模式。映射器比打开并且在源端看起来像这样:

在此处输入图像描述

这很好。

当您开始扩展节点时,问题就出现了,它们似乎只深了 1 级。例如,这里是源和目标并排,相同的模式,除了一个是 2 部分源的第 1 部分,另一个是单个目标部分:

在此处输入图像描述

这只是一个示例,但请比较 EVN_5。左边没有孩子,右边有。这是相同的模式,但一个是多输入源的一部分,另一个是目标。

有什么办法可以解决这个问题,还是不可能?按名称/结构进行链接会导致数据丢失,因为源“认为”它不存在。

编辑:我只是想添加一个细节,即在映射器中仅显示一级深度元素的问题在两个输入模式中都发生了。

0 投票
1 回答
582 浏览

biztalk - Biztalk Map 创建重复的目标节点

使用 biztalk 映射器,我需要复制一个目标节点。我已经创建了我的问题的简化版本。请参阅下面的地图链接以获取源和目标架构......糟糕,抱歉,没有足够的积分来发布图片......

我需要为每个 OptionNotes 复制目标选项节点。OptionNotes 的值被一个管道(“|”)分割,然后映射到目标代码和描述。

输入如下:

输出应如下所示:

尝试使用循环和结合值映射,但无济于事。我必须求助于内联 xslt 吗?

0 投票
1 回答
2668 浏览

c# - 用于 Maps Biztalk 2010 中日期格式的脚本 Functoid

在源模式中,我有 xs 中的日期:目标模式中的日期时间数据类型我有字符串数据类型中的日期。当我直接映射时,我得到的输出为“2013-10-21T00:00:00”。但我希望输出为“2013-10-21”。

我尝试使用脚本,但没有任何效果,

任何人都可以帮我处理这个问题。提前致谢。

0 投票
1 回答
817 浏览

biztalk - 基于 BizTalk 业务流程映射中一个字段的值进行映射

我在 BizTalk 业务流程中从一条消息映射到另一条消息时遇到了一种情况,我无法跨越这种情况。场景如下:源模式有很多字段,目标模式有很多子元素,这些目标元素的子字段可以与源模式字段一一对应。

假设 Source Schema 具有如下字段:

和目标架构包含以下元素

现在根据值 SF1 我需要映射该值。如果 SF1 的值为“0”,那么我将分别映射 SF1、SF2、SF3、SF4 和 SF5 与 DEL1_F1、DEL1_F2、DEL1_F3、DEL1_F4、DEL1_F5,如果 SF1 的值为“1”,那么我将映射 SF1 , SF2 ,SF3 , SF4 和 SF5 与 DEL2_F1,DEL2_F2,DEL2_F3,DEL2_F4,DEL21_F5 如果 SF1 的值为 '3' 那么 SF1 , SF2 ,SF3 , SF4 和 SF5 的映射需要用 DEL3_F1,DEL3_F2 完成, DEL3_F3、DEL3_F4、DEL3_F5。

请建议我如何在 BizTalk 映射中实现这一点。

0 投票
1 回答
1632 浏览

biztalk - Biztalk Map,仅当源消息包含特定值时,如何执行脚本函数?

在 Biztalk 映射中,如果源消息包含特定值,我如何才能执行脚本功能?哪种functoid组合可以让我做到这一点?

编辑

我想检查某个元素的特定值。脚本将是内联 xslt。

针对 40Alpha 第一个建议:这是我想使用的方法,但我无法将脚本 functoid 连接到值映射 functoid。我可能在这里做错了什么?

伊姆古尔

0 投票
1 回答
34 浏览

biztalk - 在 Biztalk 2010 中测试地图时出错

我对现有地图进行了一些更改并尝试测试该地图。我所做的更改是使用以下代码添加脚本 fuctoid

还在另一个字段中添加了逻辑 functoid 和值映射,例如 在此处输入图像描述

当我单击测试地图选项时,我收到这样的错误消息

在此处输入图像描述

我不确定出了什么问题。任何人都可以帮我解决这个问题。

谢谢