BizTalk开发系列(二十九) 宏的使用

时间:2021-12-09 20:56:32

在BizTalk中可以使用宏集合动态的让BizTalk发送处理程序使用单独的值来替换宏。常用的使用宏的发送程序有:文件发送适配器和SMTP发送适 配器。在表达式中可以使用同时使用多个宏。例如:在文件发送适配器的文件名中使 用%SourceFileName%_%datetime%_%MessageID%.xml则表达用“_”连接的三个宏值。

使用宏的注意事项

  如果存在以下任何一种情况,发送处理程序将不会使用值替换宏:

  • 未设置相应的系统属性。
  • 宏拼写错误。
  • 宏的值所包含的符号在文件名中无效。

如果出现上述任何情况,发送处理程序都会将宏保持不变,例如 Myfile_%MessageID%.xml。

文件适配器中可以使用宏的列表

宏名称

替代值

%datetime%

YYYY-MM-DDThhmmss 格式的世界时 (UTC) 日期时间(例如 1997-07-12T103508)。

%datetime_bts2000%

YYYYMMDDhhmmsss 格式的 UTC 日期时间,其中,sss 表示秒和毫秒(例如,199707121035234 表示 1997/07/12 10:35:23 和 400 毫秒)。

%datetime.tz%

本地日期时间加上 GMT 时区,格式为 YYYY-MM-DDThhmmssTZD(例如 1997-07-12T103508+800)。

%DestinationParty%

目标参与方的名称。该值来自消息上下文属性 BTS.DestinationParty。

%DestinationPartyQualifier%

目标参与方的限定符。该值来自消息上下文属性 BTS.DestinationPartyQualifier。

%MessageID%

BizTalk Server 中消息的全局唯一标识符 (GUID)。该值直接来自消息上下文属性 BTS.MessageID。

%SourceFileName%

文件适配器从中读取消息的文件的名称。文件名包括扩展名,但不包括文件路径,例如 Sample.xml。在替代此属性时,文件适配器从 FILE.ReceivedFileName 上下文属性中存储的绝对文件路径提取文件名。如果上下文属性没有值(例如,如果消息是在文件适配器之外的其他适配器上接收到的),则将不替代该宏,并在文 件名中按原样保留该宏(例如 C:\Drop\%SourceFileName%)。

注意

此宏的正确实现需要输出消息与收到的消息为同一个消息。

%SourceParty%

文件适配器从其接收消息的源参与方的名称。

注意

此宏的正确实现需要输出消息与收到的消息为同一个消息。

%SourcePartyQualifier%

文件适配器从其接收消息的源参与方的限定符。

注意

此宏的正确实现需要输出消息与收到的消息为同一个消息。

%time%

hhmmss 格式的 UTC 时间。

%time.tz%

本地时间加上 GMT 时区,格式为 hhmmssTZD(例如 124525+530)。

SMTP适配器中支持的宏

说明

用于与收件人一起使用

用于与抄送一起使用

用于与主题一起使用

%MessageID%

BizTalk Server 中消息的全局唯一标识符 (GUID)。该值来自消息上下文属性 BTS.MessageID。

%datetime_bts2000%

YYYYMMDDhhmmsss 格式的 UTC 日期时间,其中,sss 表示秒和毫秒(例如,199707121035234 表示 1997/07/12 10:35:23 和 400 毫秒)。

%datetime%

YYYY-MM-DDThhmmss 格式的 UTC 日期时间(例如 1997-07-12T103508)。

%datetime.tz%

本地日期时间加上 GMT 时区,格式为 YYYY-MM-DDThhmmssTZD(例如 1997-07-12T103508+800)。

%time%

hhmmss 格式的 UTC 时间。

%time.tz%

本地时间加上 GMT 时区,格式为 hhmmssTZD(例如 124525+530)。

%SourceParty%

文件适配器从其接收消息的源参与方的名称。

%SourcePartyQualifier%

文件适配器从其接收消息的源参与方的限定符。

%DestinationParty%

目标参与方的名称。该值来自消息上下文属性 BTS.DestinationParty。

%DestinationPartyQualifier%

目标参与方的限定符。该值来自消息上下文属性 BTS.DestinationPartyQualifier。

参考资料
BizTalk Server 2006 Documentation