BizTalk xml 文件转换为平面文件格式

发布于 2024-09-12 08:06:22 字数 858 浏览 3 评论 0原文

BizTalk 相对较新;我需要经验丰富的帮助。

我面临着必须尝试将源 XML 文档映射到平面文件 TAB 分隔的目标的问题。我的源文档有一些嵌套节点,我需要迭代这些节点并将它们分别翻译为平面文件文档上的一行;经典的销售订单标题/明细关系。结果需要我为子节点中的每个嵌套元素重复标头信息。

我尝试过使用循环 functoid 的解决方案,但我不确定如何正确表示目标列表。我错过了显而易见的事情吗?我应该将“循环”输出参数链接到哪个目标行元素?

为了演示,这是我正在使用的模式的示例。

SOURCE SCHEMA(无法修改源结构)

  • schema\
  • salesorders\
  • salesorders\orders\
  • orders\soidorders
  • \custnameorders
  • \addressorders
  • \detail\
  • orders\detail\msrporders
  • \detail\modelnoorders
  • \detail \sku

DESTINATION SCHEMA

  • schema\
  • \root\
  • soid
  • custname
  • 地址
  • 等...

平面文件输出(每个详细项目一行)

  • soid custname 地址 msrp modelno sku
  • soid custname 地址 msrp modelno sku

有人可以指导我正确的方向吗?

Relatively new to BizTalk; I could use seasoned help.

I'm faced with having to try to map a source XML document to a flat-file TAB delimited destination. My source document has some nested nodes that I need to iterate through and translate them each as a row on the flat-file document; classic sales order header/detail relationship. The results would need me to repeat the header information for every nested element in the child node.

I've tried a solution using a looping functoid but I'm not sure how to represent the destination list correctly. Am I missing the obvious? At what destination row element should I link my "Looping" output param to?

For demonstration sake here's an example of the schemas I'm working with.

SOURCE SCHEMA (Don't have the possibility to modify the source structure)

  • schema\
  • salesorders\
  • salesorders\orders\
  • orders\soid
  • orders\cust name
  • orders\address
  • orders\detail\
  • orders\detail\msrp
  • orders\detail\modelno
  • orders\detail\sku

DESTINATION SCHEMA

  • schema\
  • \root\
  • soid
  • custname
  • address
  • etc...

Flat file OUTPUT (One line per detail item)

  • soid custname address msrp modelno sku
  • soid custname address msrp modelno sku

Anybody could orient me in right direction?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

柒夜笙歌凉 2024-09-19 08:06:22

您将循环 Functoid 从要生成新记录的源节点链接到(通常)目标的外部记录节点(通常是根的第一个子节点,但并非总是如此)。这基本上会告诉地图“每次你在我的源中看到新的blah时,就在我的目的地中创建一个全新的记录。”

You'll link your Looping Functoid from the source node you want to have generate a new record to (usually) the outer-record node (usually first child of the Root, but not always) of the destination. This will basically tell the map "Every time you see a new blah in my source, create a whole new record in my destination."

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文