使用BizTalk EDI存储或查找ISA编号

时间:2011-10-14 21:33:47

标签: biztalk biztalk-2009

我的公司使用BizTalk进行EDI和AS2通信。一个周期性问题是我们传输的VAN或类似合作伙伴将想知道我们是否通过它的ISA#收到了一个文件。我们目前使用ISA#在我们的端口内进行路由,但我似乎无法找到这些信息存储在BizTalk中的任何地方。有没有办法查找BizTalk通过ISA#收到的EDI消息?或者也许某种程度上我可以抓住它并将其存储在我自己的身上?

2 个答案:

答案 0 :(得分:1)

如果您没有明确使用业务活动监控(BAM)来跟踪此情况,则可以使用邮件跟踪。

如果你有:

  1. 在使用ISA号码时处理邮件的某个时刻,邮件属性已打开邮件跟踪,
  2. 如果ISA编号在已发布的架构中被提升(我猜它是,如果您使用的是开箱即​​用的EDI内容)
  3. ...然后您可以使用管理控制台查找具有该架构的跟踪消息,并基于架构中的特定字段(例如EDI.ISA08EDI.ISA06)。当然,如果您通过BizTalk配置将ISA#映射到特定的一方,那么您只需要搜索Tracked Message Events,其中Party Name等于您为该ISA#配置的名称。

    还有内置的EDI跟踪功能(请参阅http://msdn.microsoft.com/en-us/library/bb226464(v=bts.10).aspx),并附有自己的报告,但我不熟悉它是否足以说明它是否能满足您的需求。< / p>

    否则,您将需要查看设置BAM以保存所需的ISA信息。

答案 1 :(得分:1)

如果您收到EDI,可以在Biztalk消息中找到这些字段。 msgIn(EDI.ISASegment)包含所有ISA段。然后你可以对控制号进行子串,然后将它放在你的传出文件名中:

ctrlnum(variable)= msgIn(EDI.ISA13) newfilename = FILE.ReceivedFileName + ctrlnum;

这样,每个控件号都会显示在您的文件名中,您甚至不需要打开文件或检查跟踪的消息。