使用wcf-sql适配器

时间:2012-02-13 22:41:33

标签: biztalk biztalk-2009 biztalk-2010 edi biztalk2006r2

我需要以xml格式轮询数据并将其映射到EDI 834 .........

我已经使用for xml auto,element

编写了存储过程

当我使用添加适配器元数据消费它时,我收到了一条xml消息....

但我需要使用此xml消息将其映射到EDI834 ....如何获取xml的结构以便我可以在地图中使用它....

我也跟着http://social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/6a7e0093-0692-4ba5-9e14-0d2090c2cf54

这个线程并使用xml轮询生成了这些模式并将其映射到EDI834。

但是当我将地图用于出站地图时......它并没有将轮询数据映射到edi 834 ..

2 个答案:

答案 0 :(得分:2)

WCF-SQL适配器无需使用'for xml auto,elements'语法。这是旧的Sql Adapter的遗留问题。

只需以返回一致结果集的方式编写存储过程,然后针对存储过程生成元数据。适配器框架将根据从存储过程返回的元数据创建适当的模式。

然后只需将WCF-SQL架构中的数据映射到EDI834架构。

答案 1 :(得分:0)

使用FOR XML PATH语法

创建返回xml(或xml部分)的存储过程

- 使用WCF-SQL设置接收位置。选择XmlPolling。选择适配器的根名称和命名空间以包装从SQL返回的xml(必需)。

- 将轮询语句设置为:exec [SPNAME]

- 将PollDataAvailableStatement设置为适当的返回计数>如果有要轮询的行/ xml,则为0。

- 使用接收位置的passthrureceive管道

- 设置一个发送端口(FILE),订阅来自用于接收位置的接收端口的所有内容。

- 启动应用程序。检查从适配器返回的XML。

-In VS使用格式良好的XML生成模式(添加 - >添加生成的项目 - >生成模式)(注意:您可能必须运行BizTalk SDK / Utilities / Schema生成器下的InstallWFX.vbs ,如果您之前尚未在机器上完成此操作)。

- 选择适配器生成的xml文件(为文件指定一个代表您尝试创建的架构的名称)。

- 如果您应该有一个表示适配器返回的xml的模式,您可能需要手动完成模式并将数据类型更改为比向导选择的更合适的模式。