了解BizTalk Server 2004(十)

明确动态(Dynamic)和静态(Static)两个概念 动态适配器 (dynamic adapter) 具有自定义用户接口的适配器。 动态绑定 (dynamic binding) 在运行时应用于端口的端口绑定,该绑定通常来自某个消息属性(如回复地址)。 动态策略更新 (dynamic policy update) 使用规则引擎更新服务的策略的运行时检索。 动态端口 (dynamic port) 没有关联的目标地址和适配器类型的发送端口。动态发送端口可在运行时执行期间与目标地址和适配器类型建立关联,从而可灵活地通过同一端口将消息发送到使用不同适配器类型的不同目标。 静态适配器 (static adapter) 使用适配器框架提供的用户界面的适配器。 静态端口 (static port) 具有关联的目标地址和适配器类型的发送端口。与动态发送端口相反,静态发送端口在运行时不能更改其配置,并始终用来向唯一一个目标地址发送消息。

0

了解BizTalk Server 2004(九)

如何在映射(Map)中调用一个外部的程序集(Assembly)? Assembly是一个 dll 文件,可能包含要在 BizTalk 应用程序中使用的资源,如业务流程、管道、架构、映射以及其他非特定于 BizTalk Server 的资源。在BizTalk的映射中,可以通过Scripting功能模块来调用一个外部的程序集。以下是一个标准的实现该功能的流程: 1,Schemas 在项目文件中,首先建立两个架构文件作为随后映射文件的源和目的,分别命名为OrderItems.xsd和Purchase.xsd,其具体架构如下: OrderItems.xsdOrder   – OrderID   – Description   – Unit       – UnitID       – Description       – TotalUnits (xs:int)       – Price (xs:int)Purchase.xsdPurchase  – OrderID  – Description  – Unit      – Description      – Units      – Price      – Total (xs:int) 2, Map 在项目中,建立一个映射文件,命名为OrderItemstoPurchasemap.btm,源文件为OrderItems.xsd, 目标文件为Purchase.xsd。建立以下映射关系: Order.OrderID           —-  Purchase.OrderIDOrder.Description      —   Purchase.DescriptionOrder.Unit.TotalUnits —   Purchase.Unit.UnitsOrder.Unit.Price        —   Purchase.Unit.Price 3….

0

了解BizTalk Server 2004 (八)

如何在映射中增加一个Functoid? 在BizTalk的映射中增加一个新的Fumctoid是一件有趣的事,首先建立一个新的项目文件和两个新的架构文件: 1, 项目名:AddFunc.btproj;2, 架构文件名:OrderItems.xsd, Purchase.xsd 然后建立一个映射文件,名为OrderItemsToPurchasemap.btm; 具体的架构内容和映射关系如下图: 这里要解释的是Unit的总价是经过TotalUnits与Price相乘后所得,TotalUnits和Price的数据类型被定义为xs:int类型,但是在目的架构中Total的属性是String类型,所以我们需要增加一个Scripting Functoid把Integer转换为String: 右键点击Scripting Functoid选择属性,会看到其Input属性为Multiplication, 即TotalUnits和Price相乘的结果,然后选择Script及Inline C#,输入以下代码: public string IntToString(int param1) {               return param1.ToString(); }  选择OK, 即完成了一个增加Functoid的工作。 Functoid: 执行特定计算或数据处理的可执行模块,在构造 BizTalk Server 映射时可以图形方式使用该模块,从而提供比 XSLT 自身提供的转换还要丰富的转换基准。

0

了解BizTalk Server 2004 (七)

BizTalk 映射 什么是BizTalk Mapper?BizTalk Mapper是一种映射工具,可以将数据从一种架构转换为另外的架构。 什么是BizTalk Map?BizTalk Map是定义一种规范的记录和字段与另一种规范的记录和字段之间对应关系的 XML 文件。映射包含一个可扩展样式表语言 (XSL) 样式表,BizTalk Server 可使用该样式表执行该映射中所描述的转换。 什么是BizTalk Mapper Grid?BizTalk Mapper Grid是BizTalk 映射器主窗口中源架构和目标架构之间的多层中间区域,其中定义了数据映射。  

0

了解BizTalk Server 2004(六)

升级一个架构属性(Promote a Schema Property) 属性升级是指将特定实例消息内容提升(复制)到消息上下文容器,以便于各种 BizTalk Server 组件(比如流程)对其进行访问的机制。在BizTalk中有两种类型的升级机制: 1,属性字段 (Property Fields) 2,可分辨字段 (Distinguished Fields) 以下是升级属性的步骤: 首先建立一个名位OrderItems.xsd的架构文件 将架构文件的Root Node改名为”Order” 添加后面的Child Element Fields: “OrderID”, “Description” 添加一个名为”Unit”的Child Record, 然后添加后面的Child Element Fields: “UnitID”, “Description”, “TotalUnits”, “Price” 将”TotalUnits”和”Price”的DataType改为xs:int 现在可以升级OrderID字段,右键点击OrderID, 选择Promotion->Quick Promotions, 你可能需要生成一个新的属性架构文件并添加到项目文件中,该属性文件包含所有的Quick Promotions. 如果要升级一个可分辨字段,右键点击OrderID, 选择Promotion->Show Promotions, 选择Distinguished Fields Tab, 然后从左面选择Description, 选择添加,点击OK并存盘。 可分辨字段只能在流程的内部被访问; 使用Quick Promotions可以将特定实例消息内容提升(复制)到消息上下文容器,以便于各种 BizTalk Server 组件(流程,端口,管道)对其进行访问的机制。  

0

了解BizTalk Server 2004 (五)

在BizTalk 2004中如何使用代码列表库(Code List Database) 在BTS04中代码列表库是指一个包含代码列表的Access数据库。 首先在Access中建立一个名为CustomerTest.mdb的数据库 然后建立一个名为XML_TestVersion1的表,包含三个字段:Code, Value和Desc, 全部为Text数据类型,如下图: 输入以下数据: 在BizTalk中建立一个名位”Customer”的项目: 打开该项目,点击Project Node, 选择Add->Add New Item 新建一个名为”CustomerData.xsd”的架构文件 修改Root Node名为”CustomerInfo”, 并添加一个名位”CustomerType”的Field Element 在Schema Node的属性窗口中浏览CodeList Database, 点选之前生成的CustomerTest.mdb文件,如图: 在标准属性里输入”XML”, 在标准版本中输入”TestVersion1″, 这个是在CustomerTest.mdb中的表名,如图: 选择CustomerType如下图,这是一个Field Element, 你也可以添加一个Field Attribute. 然后再属性窗口中选择Derived By->Restriction, 接着就可以在代码列表选项中输入”MyEnum” 选择Code List属性后的扩展按钮,如图: 选择OK, 然后再方案浏览器中选CustomerData.xsd, 选择Generate Instance, 你会看到CustomerType 已经有了代码列表中的值。  

0

了解BizTalk Server 2004 (四)

在BTS04中如何从Well-Formed XML 或 DTD 生成一个架构? 首先需要执行”InstallDTS.vbs”或”InstallWFX.vbs”增加对应的组件,前者针对DTD,后者针对Well-Formed XML.这两个执行文件可以在”Program Files\Microsoft BizTalk Server 2004\SDK\Utilities\Schema Generator”目录中找到,双击执行就可以。 下面是一个名为Simple.xml的文件: <SendMail >   <To>Test</To>   <CC>Test1</CC>   <Subject>Testing</Subject>   <EmailText>EmailText_0</EmailText>   <Priority>Priority_0</Priority> </SendMail> 在项目文件中右击鼠标选择Add> Add Generated Items,如下图: 选择Generate Schemas,然后在文件类型的下拉清单中选择Well-Formed XML,如下图: 浏览并选择之前生成的XML文件,点击OK,就可以在项目文件中看到对应的架构文件。

0

了解BizTalk Server 2004 (三)

在BizTalk中,所有的消息在处理前都被转换为XML格式,如何生成一个BizTalk架构是了解BizTalk的第一步,如下是一个典型的BizTalk架构: XML Schema  <xs:element name=”SendMail”>    <xs:complexType>  <xs:sequence>                <xs:element name=”To” type=”xs:string” />             <xs:element name=”CC” type=”xs:string” />             <xs:element name=”Subject” type=”xs:string” />             <xs:element name=”EmailText” type=”xs:string” />             <xs:element name=”Priority” type=”xs:string” />   </xs:sequence>    </xs:complexType>   </xs:element> BizTalk使用”XSD”(XML Schema Definition Language), 定义所有要被其处理的消息架构。用BizTalk Schema Editor工具可以方便的生成该架构。 如果仔细看上面的例子,会注意到架构通常是定义元素(Element)和元素数据格式(Element Datatype). 在例子中,元素分别是SendMail, To, CC,…

0

了解 BizTalk Server 2004 (二)

BizTalk Server开发工具 BizTalk Editor – BizTalk 编辑器,使用该编辑器可以设计消息架构(图1); Mapper – 映射编辑器,使用该工具可以设计从一个消息架构到另一个消息架构的转换(图2); Pipeline Designer – 管道设计工具,使用该工具可以设计消息处理的管道(图3); Orchestration Designer – 业务流程设计工具,用于设计和实施业务流程的图形用户界面工具。 图1   图2   图3   图4

0

了解 BizTalk Server 2004 (一)

BizTalk Explore(BizTalk 浏览器) 在开发环境中点击View->BizTalk Explore,可以看到下面的分层树视图:   Assemblies Node: 打开该节点会看到所有已经部署的程序集。Send Port Groups Node: 该节点作为一个逻辑实体包含一个或以上的发送端口,所以当一个消息路由到该节点时,其包含的所有发送端口都会传输该消息。Send Ports Node: 该节点包含所有的发送端口,每个发送端口都有自己的订阅配置信息,一旦生成一个新的发送端口,必须为其指定发送适配器,发送管道和指定映射。Receive Ports Node: 该节点包含所有的接收端口,每个接收端口都有自己的配置消息,例如接受和发布文档到消息库。一旦生成一个新的接收端口,必须为其指定适配器,管道以及指定映射。Parties Node: Party食指位于 BizTalk Server 外部并与业务流程交互的所有实体。该节点列出了所有使用发送端口发送消息而配置的新的参与方。Roles Node: 该节点列出了所有的角色,这些角色都被定义与BTS内的参与方进行交互。

0