0

老板告诉我将收到的 xml 格式的消息与包含有关 DB 信息的 xml 给定文件进行比较。我需要在 Biztalk 中使用 xslt 映射来完成。我可以做这个任务的声明部分。我什至发现了比较 2 个 xml 文件的 xslt。 但我不知道如何在 biztalk 中做到这一点。

我需要的是一个与 Biztalk 兼容的 xslt,它只接受输入消息并获取位于解决方案框中的给定 xml 文件,并使用上述方法或您认为更适合我的情况的方法进行比较。请显示以所需格式插入文件名或消息名的位置

该文件仅包含此类信息

<?xml version="1.0" standalone="yes"?>
<DocumentElement>
  <Columns>
    <OWNER>APEX_030200</OWNER>
    <TABLE_NAME>APEX_APPLICATION_ALL_AUTH</TABLE_NAME>
    <COLUMN_NAME>WORKSPACE</COLUMN_NAME>
    <ID>1</ID>
    <DATATYPE>VARCHAR2</DATATYPE>
    <LENGTH>255</LENGTH>
    <NULLABLE>Y</NULLABLE>
    <CHAR_USED>B</CHAR_USED>
    <LENGTHINCHARS>255</LENGTHINCHARS>
  </Columns>
  <Columns>
    <OWNER>APEX_030200</OWNER>
    <TABLE_NAME>APEX_APPLICATION_ALL_AUTH</TABLE_NAME>
    <COLUMN_NAME>APPLICATION_ID</COLUMN_NAME>
    <ID>2</ID>
    <DATATYPE>NUMBER</DATATYPE>
    <LENGTH>22</LENGTH>
    <NULLABLE>Y</NULLABLE>
    <LENGTHINCHARS>0</LENGTHINCHARS>
  </Columns>
</DocumentElement>
4

1 回答 1

0

如果您检查的值没有改变,这可以很容易地在 BizTalk 映射上完成。您只需使用 functoid “逻辑相等”,然后输入您要检查的值。从这里你会得到一个布尔值,它与“值映射”functoid 一起可用于创建输出消息。当然,您还可以使用“逻辑与”functoid 添加几个值检查。

如果您需要检查现有文件,我可以看到两种可能的方法:

  1. 在引用的类中创建验证函数,并从 BizTalk 映射(functoid“脚本”)调用此函数。
  2. 创建一个进行评估的自定义管道。
于 2013-07-30T19:50:53.347 回答