使用Beyond Compare(脚本)和Generate Report比较(排序)XML



我们必须比较两个不同但执行相同业务流程的响应(XML)。问题是,我们正处于从大型机技术向Microsoft BizTalk技术迁移的过程中。大型机正在为54多个客户端(桌面、web和web服务)提供服务。Mainframe和Microsoft BizTalk Server接受的请求和响应都相似。请求和响应格式为XML。

正如我所说,54个系统通过大型机连接,我们决定与之并行运行Microsoft Server,这意味着无论向大型机发出什么请求,它的副本都将传递给Microsoft BizTalk Server。而且,我们将来自两台服务器的每个响应的副本保存在一个物理位置。

现在,我们必须比较两个响应(XML)并生成差异报告(HTML和XML)。为此,我们正在使用Beyond Compare 3(Pro)。由于这个比较过程必须按计划进行,我们通过Beyond Compare Scripting来完成。假设,我们必须要求Beyond Compare在每小时后进行比较。设计了一个小型应用程序来安排并运行Beyond Compare Script,如下所示:

#compare the text contents of the files
criteria rules-based
#only compare delphi source files, ignore the archive folder
filter "*.xml;*.xsd;*.xsl"

load "F:SE Response Folder413-07" "F:MF Response FolderProcessedFolder413-07"

#expand to affect subfolders and files
expand all
#select updated files
select lt.diff.files rt.diff.files
#generate a report of the differences
file-report layout:xml options:display-mismatches output-to:C:report123.xml

这个脚本中的问题是必须对XML进行排序,然后进行比较。我们如何在比较之前对XML进行排序?我已经从ScooterSoftware下载部分下载了XML排序格式。但我不知道如何使用XMLSort对XML进行排序,然后生成报告。

请帮帮我。

安装XML排序规则后,它应该出现在文件格式列表的顶部,并且应该自动使用。如果不是,您是否以安装该格式的同一用户身份运行计划任务?如果不是,要么:

  • 以该用户身份重新安装
  • 将BCFileFormats.xml从%AppData%目录复制到相关用户
  • 创建一个可移植的BC安装(安装程序有这个选项),设置它,并使用它而不是标准安装运行计划任务

相关内容

  • 没有找到相关文章

最新更新