第一步
处理程序使用SQL服务器数据库中的数据建立一般的内部XML订单文件。对于我们的例子,我们将从三张表中抽取数据,包括PartnerInfo、PartnerOrders和PartnerOrderItems。(一个SQL脚本包括在下载的例子中,因此你可以自己建立此数据库)。PartnerInfo储存了第二步中需要的合作伙伴指定的XSL文件的目录位置。PartnerOrders和PartnerOrderItem包含了所有的从Web站点生成的订单数据。你同样可容易地从现存的订单表中抽取数据,并且把他们和类似于PartnerInfo的表连结起来。
在步骤一中,处理程序简单的查找所有还没被处理的合作伙伴订单数据。它获取这些数据并建立我们内部的XML订单文档。这些文档包括一个所有数据超集,这些数据是我们可能需要传送给未来的合作伙伴的。这些文档都是一般化的并且遵循一个内部的标准,这是为了任何我们的系统可以理解如何读取这些文件。第一步完成以后,所有生成好的文档被保存在内部发件箱中。
内部XML订单文档的特性:
- 包含了合作伙伴指定的XSL文件的目录位置
- 遵循内部标准(可能的话最好是工业标准)
- 是订单数据的超集
让我们随着这段XML语句贯穿整个系统:
<OrderShipping_Details> <Name>John P Doe</Name> <Address1>Street Address1</Address1> <Address2>Apt 1</Address2> <Address3></Address3> <City>CityName</City> <State>ST</State> <PostalCode>88888</PostalCode> <Country>US</Country> <Phone>123?56?890</Phone> <ShipMethod>Standard Shipping</ShipMethod> </OrderShipping_Details>
(注:这将是研究为了你们的产业而现存的标准的良好场所。检查大纲(Schema,译注:描述XML文件信息结构的文件,用来替代DTD的功能)或是DTD库(译注:DTD是文档类型声明,全称是Document Type Declaration)。这样你就不必做重复劳动了。)( 译注:在国内还不可能有行业标准Schema)
步骤二
处理程序依次整理在发件箱中的内部订单,并载入 XML 数据。于是它使用 XML DOM(译注,DOM是文档对象模型,全称是Document Object Model)查询文档,并且查找到合作伙伴指定的XSL文件的位置。处理程序载入正确的XSL文件并且将它合并入内部的XML订单数据来建立待发送的订单XML文档。如果这儿出现任何错误,处理程序保存内部XML订单到内部订单出错目录中。如果没有错误发生,内部的XML订单文档则被保存到存档目录中,并且新的外送文档将存在于合作者的发件箱目录中。
外送订单XML文档的特性:
- 这个文件包含了处理程序为了分发订单到给定合作伙伴的所需知道的所有信息。它包括两个主要的元素:标签和数据包
- 标签包含一个分发的方法(例如:"PostAsForm",或是"FTP")
- 标签包含任何所需的分发参数(例如:"PostToURL",或是"FTPassword")
- 数据包是为了加工合作伙伴订单数据的一个容器元素
- 数据包是合作伙伴指定格式的数据
- 在此给出的应用程序,订单数据从我们内部XML格式转化为合作者指定的XML格式
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/