1 课程简介
通过本课程熟悉EDI、AS2解决文案的开发与配置,本动手实验步骤及内容采用微软官方SDK完成,学员在实验过程中结合官方教程来完成本实验
本实验基于BizTalk 2013(Windows Server 2012 64bit + SQL Server 2012 + BizTalk 2013 + Visual Studio 2012), 同样适用于BizTalk 2010环境。AS2 Demo文件夹为:C:\Program Files (x86)\Microsoft BizTalk Server 2013\SDK\AS2 Tutorial
2 准备工作
3 演示
3.1 部署Schema
3.1.1 打开AS Demo\Schema文件夹下的解决方案,配置BizTalk应用程序名称AS2Demo。并确认签名正确。
![clip_image002[8] clip_image002[8]](http://img.e-com-net.com/image/product/4964f8acbfcc4f55a49d4d4d80e79ba5.jpg)
3.1.2 部署解决方案,在BizTalk控制台中可以看到刚部署的应用名称
![clip_image004[6] clip_image004[6]](http://img.e-com-net.com/image/product/c14b060a64784e59a797f0d4b24e213b.jpg)
3.2 配置合作伙伴
3.2.1 右键选择新建合作伙伴
![clip_image006[6] clip_image006[6]](http://img.e-com-net.com/image/product/38922ccc6b2345bc8948d0072c89a446.jpg)
3.2.2 在名称中输入Contoso
![clip_image008[4] clip_image008[4]](http://img.e-com-net.com/image/product/89d7aa6cf9b240aa8e211a0057b69471.jpg)
3.2.3 同3.2.1-3.2.2步骤创建合作伙伴:Fabrikam
![clip_image010[4] clip_image010[4]](http://img.e-com-net.com/image/product/9225eb81db0144f2a23cfed202483d60.jpg)
3.3 配置IIS环境
3.3.1 打开IIS功能视图,点击选择Handler Mappings
![clip_image012[4] clip_image012[4]](http://img.e-com-net.com/image/product/db16bedce623452e92570f38ad490fcb.jpg)
3.3.2 在窗口右侧点击添加脚本映射,在添加脚本映射窗口中如下图所示输入
请求路径:BtsHttpReceive.dll
执行程序选择: C:\Program Files (x86)\Microsoft BizTalk Server 2013\HttpReceive\BTSHTTPReceive.dll (注意应该选择32位接收器)
名称:BizTalkHTTPReceive
![clip_image014[4] clip_image014[4]](http://img.e-com-net.com/image/product/6e540ae502c044ccbf8ee45e37a13f7a.jpg)
3.3.3 点击“Request Restriction”,点击Verbs选项页,如下图所示选择One of the following verbs, 并输入POST
![clip_image016[4] clip_image016[4]](http://img.e-com-net.com/image/product/fdbb8969c9914d21958e7135d734dbab.jpg)
3.3.4 点击确定,保存。选择新建的BizTalk Http Receive处理映射在右侧窗口中选择Edit Feature Permissions,在弹出的权限选项中选择执行。
![clip_image018[4] clip_image018[4]](http://img.e-com-net.com/image/product/1368834f42db4dcca6c0c6d9971eb2ee.jpg)
3.3.5 返回Feature View,点击ISAPI and CGI Restrictions
![clip_image020[4] clip_image020[4]](http://img.e-com-net.com/image/product/19370373d4864cbca9a98b1af1a5592f.jpg)
3.3.6 可以在列表中看到新创建的约束。点击该行记录为其添加备注信息。
![clip_image022[4] clip_image022[4]](http://img.e-com-net.com/image/product/4255cf83a2244b20a647b7ffc5e9e3a2.jpg)
3.3.7 点击OK保存
3.4 配置应用程序池及Web应用
3.4.1 在IIS应用程序池中点击添加应用程序池,点击OK保存。
名称:BizTalkAppPool , .NET Framework版本:4.0
![clip_image024[6] clip_image024[6]](http://img.e-com-net.com/image/product/80575c33e51a422ab6f3175e07292530.jpg)
3.4.2 选择该应用程序池并点击高级选项,设置启用32位应用程序为True, 设置应用程序标识为administrator
![clip_image026[6] clip_image026[6]](http://img.e-com-net.com/image/product/d07cfb454bdd46c28f527d5bae7375b9.jpg)
3.4.3 右键默认站点,选择创建一个新的应用
![clip_image028[6] clip_image028[6]](http://img.e-com-net.com/image/product/4eea61bef33440dea760f02350fba8c5.jpg)
3.4.4 在弹出的应用程序配置窗口中如下图所示进行配置,点击OK保存配置
别名:Fabrikam
应用程序池:BizTalkAppPool
物理路径:AS2 Demo文件夹\Fabrikam
![clip_image029[4] clip_image029[4]](http://img.e-com-net.com/image/product/a8536520d27e4f89aef0fa09d2916e60.jpg)
3.4.5 同3.4.3新建Contoso应用。应用配置如下图所示,点击OK保存
应用名称:Contoso
应用程序池:BizTalkAppPool
物理路径:C:\Program Files (x86)\Microsoft BizTalk Sever 2013\HttpReceiver
![clip_image030[6] clip_image030[6]](http://img.e-com-net.com/image/product/a47c5960d7064e829feab6bef64ace9d.jpg)
3.5 配置BizTalk应用程序
3.5.1 右键选择AS2Demo,在应用属性配置的引用中添加其对BizTalk EDI Application的引用
![clip_image031[4] clip_image031[4]](http://img.e-com-net.com/image/product/684453d301784d8d91adfd6928d5417f.png)
3.5.2 创建名称为Receive_AS2的单向接收端口
![clip_image033[4] clip_image033[4]](http://img.e-com-net.com/image/product/6c9507cec0594589ab1450c60b0539e1.jpg)
3.5.3 在Receive_AS2端口中创建Receive_AS2_HTTP 接收位置,适配器选择HTTP,点击配置。进入HTTP适配器配置,配置信息如下图所示
![clip_image035[4] clip_image035[4]](http://img.e-com-net.com/image/product/b433e969f173433ea58d03094238ddff.jpg)
3.5.4 接收位置管道选择AS2EdiReceive,点击OK保存
![clip_image037[4] clip_image037[4]](http://img.e-com-net.com/image/product/a8b6e892c3a5441b83290e0bf2ae2357.jpg)
3.5.5 新建动态单向发送端口(发送MDN消息)
![clip_image039[4] clip_image039[4]](http://img.e-com-net.com/image/product/e6b66299c3b54b599aafe587aaa07349.jpg)
3.5.6 在名称中输入Send_Async_MDN
![clip_image041[6] clip_image041[6]](http://img.e-com-net.com/image/product/5103d149b7bc4b67a372d0d9d4de184c.jpg)
3.5.7 在筛选器中配置表达式如下:
EdiIntAS.IsAS2AsynchronousMdn == True
![clip_image043[4] clip_image043[4]](http://img.e-com-net.com/image/product/b6b51397f87341f2a9973e8c51acaa4d.jpg)
3.5.8 新建单向发送端口(发送997消息)
名称:Send_Async_997
适配器:HTTP
![clip_image045[4] clip_image045[4]](http://img.e-com-net.com/image/product/fdcbca5be4fe4f6a812efc11539a17c4.jpg)
3.5.9 在HTTP适配器属性配置中如下图所示配置
目标URL: http://localhost/Fabrikam/Default.aspx?Destination=_997ToFabrikam
![clip_image047[4] clip_image047[4]](http://img.e-com-net.com/image/product/c2ced53eabcd4b44bddf59aac12cc4a2.jpg)
3.5.10 点击确定保存,发送管道选择AS2EdiSend
![clip_image049[4] clip_image049[4]](http://img.e-com-net.com/image/product/cc2d5c42bb47421a922e75d0ed6d7a11.jpg)
3.5.11 在发送端口的筛选器中配置条件如下所示并点击确定保存
BTS.MessageType==http://schemas.microsoft.com/Edi/X12#X12_997_Root
![clip_image051[4] clip_image051[4]](http://img.e-com-net.com/image/product/55d6a08e990241678fd572513da5fcf8.jpg)
新建单向发送端口,发送EDI XML消息,适配器为FILE适配器,接收管道为PassThruTransmit。
目标文件夹:C:\Program Files (x86)\Microsoft BizTalk Server 2013\SDK\AS2 Tutorial\_EDIXMLToContoso\
文件名称为:%MessageID%.xml
![clip_image053 clip_image053](http://img.e-com-net.com/image/product/408f0006e1594f8daa1df1590a3f6d89.jpg)
3.5.12 在发送端口筛选器中配置如下订阅条件,点击OK保存
BTS.MessageType == http://schemas.microsoft.com/BizTalk/Edi/X12/2006#X12_00401_864
![clip_image055[4] clip_image055[4]](http://img.e-com-net.com/image/product/70e1214e5de54b3382add00d97686387.jpg)
3.5.13 启动AS2Demo应用程序
![clip_image057 clip_image057](http://img.e-com-net.com/image/product/7e156bc2f03a41449d339abd7fddd3b6.jpg)
3.6 配置AS2协议
3.6.1 在合作伙伴列表中右键选择Fabrikam_Profile, 新建协议
![clip_image059 clip_image059](http://img.e-com-net.com/image/product/1e9aa00d5e49449f80f6dddd199dfa14.jpg)
3.6.2 按如下图所示配置常规属性
![clip_image061 clip_image061](http://img.e-com-net.com/image/product/568daa9dc5394bb3831b17dfdbb07c6d.jpg)
3.6.3 点击顶部Fabrikam->Contoso选项页,在AS2-From中输入:Fabrikam,AS-TO中输入Contoso
![clip_image063 clip_image063](http://img.e-com-net.com/image/product/e6041d0f6d814a6d976bf7e374419f29.jpg)
3.6.4 在验证窗口中选中”Use agreement settings for validation and MDN instead of message header”
![clip_image065 clip_image065](http://img.e-com-net.com/image/product/58db5cc9c7cd4be082f0d6e5f62c302f.jpg)
3.6.5 在Acknowledgements(MDNs)中按中,选中Reqeust MDN、Request asynchronous MDN,在Receipt-Delivery Option(URL)中输入:http://localhost/Fabrikam /Default.aspx?Destination=_MDNToFabrikam
![clip_image067 clip_image067](http://img.e-com-net.com/image/product/eab181402134439b85fb685bef764f48.jpg)
3.6.6 点击Consoso->Fabrikam选项页,在AS2-From中输入: Contoso,AS-TO中输入Fabrikam
![clip_image069 clip_image069](http://img.e-com-net.com/image/product/aaa99f96cca044d4930302001155c84b.jpg)
3.6.7
在Send Ports中选择Send_Async_997
3.6.8 点击OK,保存,完成AS2协议的配置
![clip_image073 clip_image073](http://img.e-com-net.com/image/product/50347ed1d0174eed9a6bd8a734f34deb.jpg)
3.7 配置X12协议
3.7.1 在合作伙伴列表中右键选择Fabrikam_Profile, 新建协议
![clip_image074 clip_image074](http://img.e-com-net.com/image/product/51f1fb56baa24558964d462dacaa821f.jpg)
3.7.2 在常规属性中按如下图所示进行配置
Name:X12Agreement
Protocol:X12
Party: Contoso
Business: Contoso_Profile
选中 Turn On reporting
选中 Store message payload for reporting
![clip_image076 clip_image076](http://img.e-com-net.com/image/product/1a83d6b45a984a8083f54fbc66dc6e24.jpg)
3.7.3 点击Fabrikam->Contoso选项页,在标识窗口按如下图所示进行配置
Send Id Qualifier(ISA5):ZZ Value(ISA6): 7654321
Receiver Id Qualifier(ISA7): ZZ Value(ISA8): 1234567
![clip_image078 clip_image078](http://img.e-com-net.com/image/product/fc2fb85334594f2789757e3e3af45937.jpg)
3.7.4 在Acknowledgements窗口中选中997/999 expected
![clip_image080 clip_image080](http://img.e-com-net.com/image/product/89e5cbc3523f448191d8b468dce9eab0.jpg)
3.7.5 Local Host Settings窗口中清除Route ACK to send pipeline on request-response receive port
![clip_image082 clip_image082](http://img.e-com-net.com/image/product/593540c0062b417a901e25bb3e020081.jpg)
3.7.6 点击Contoso-> Fabrikam选项页,在标识窗口按如下图所示进行配置
Send Id Qualifier(ISA5):ZZ Value(ISA6): 1234567
Receiver Id Qualifier(ISA7): ZZ Value(ISA8): 7654321
![clip_image084 clip_image084](http://img.e-com-net.com/image/product/e76528fa4b5242fb8ec545c5222b8ca2.jpg)
3.7.7 在Character and separators窗口中选择Suffix为CR LF
![clip_image086 clip_image086](http://img.e-com-net.com/image/product/b876a4e6bbf64fd7948769884cde348c.jpg)
3.7.8 在事务设置下面的信封中按如下所示进行配置
使用的项 |
操作 |
事务类型 |
选择您的测试消息的消息类型,例如“864 – 文本消息”。 |
版本/发行版 |
输入 00401。 |
目标命名空间 |
选择“http://schemas.microsoft.com/BizTalk/EDI/X12/2006”。 |
GS1 |
验证已选择测试消息的消息类型,例如“TX - 文本消息(864)”。 |
GS2 |
输入“01”。 |
GS3 |
输入“7654321”。 |
GS5 |
选择所需的时间格式。选择“HHMMSSdd”。 |
GS7 |
选择“T - 运输数据协调委员会(TDCC)”。 |
GS8 |
验证已将 EDI 版本输入为 00401。 |
![clip_image088 clip_image088](http://img.e-com-net.com/image/product/2fe09afa78084a9ba9b175eae81c1580.jpg)
3.7.9 点击OK保存,重启BizTalk 主机实例
![clip_image090 clip_image090](http://img.e-com-net.com/image/product/17d6bd35874c4679a5c3472708856f9e.jpg)
3.8 测试
3.8.1 打开AS2 Demo演示文件夹下的Sender解决方案,使用X12_00401_864-Sync.edi文件进行测试。
![clip_image092 clip_image092](http://img.e-com-net.com/image/product/8146e82956a7493989aba636d60183ff.jpg)
启动该程序,可以在_997ToFabrikam、_EDIXMLToContoso、_MDNToFabrikam文件夹中看到接收到的消息。
![clip_image094 clip_image094](http://img.e-com-net.com/image/product/34ca590066464a6d90472e7516d6dc74.jpg)
3.8.2 同时可以使用不同的测试文件进行测试,以验证相应的业务配置
![clip_image096 clip_image096](http://img.e-com-net.com/image/product/3448da0d12e74e429666d4a1d71a003d.jpg)