2011-08-16 45 views
2

下午好,设置在BizTalk输出文件名发送端口

我试图发送端口设置输出文件名和可用的文件名宏将不大的工作。

我需要一些格式为“file.YYYYMMDD_HHMMSS”的东西。有一个日期时间组合宏(格式错误),一个只有宏的时间,但没有日期只有宏。

我没有这个过程的编排。

有没有什么办法可以在地图或管道中设置文件名?

谢谢!

回答

1

您可以创建一个自定义管道组件被放置在发送端(编码说阶段),然后将BTS.ReceiveFileName属性设置为自定义文件名称值需要设置。

完成此操作后,可以在发送端口中使用%SourceFileName%宏。您也可以参考MSDN forum link了解更多详情

+0

我希望有一个我不知道的自定义管道组件。非常感谢 – Jay

+1

据我所知,这实际上应该是FILE.ReceivedFileName而不是BTS.ReceiveFileName。 BTS.ReceiveFileName没有这样的属性。 –

3

您可以使用自定义管道或编排,但不使用地图。构建自定义管道的信息可以在这里找到:

BizTalk MSDN Blogs

+0

伟大的链接。 +1为你 – Jay

3

这可以通过设置FILE.ReceivedFileName(而不是BTS.ReceiveFileName)来设置。

5

您可以使用以下格式实现YYYYMMDD_HHMMSS格式的文件名。

在编排中使用表达式形式并创建四个变量。

varDateTime=System.DateTime.Now; //varDateTime is datetime type 
strDate=varDateTime.ToString("yyyyMMdd"); //strDate is string type 
strTime=varDateTime.ToString("HHmmss"); //strTime is string type 
outboundfilename= ""+strDate + " _ " +strTime +" "; //outboundfilename is the string variable. 

使用下面的代码的消息分配形状

msgOutbound(FILE.ReceivedFileName)=outboundfilename+".xml"; 
//File extension can be any based on your requirement. I have xml file type. 

你不需要自定义管道来做到这一点。

+0

您的解决方案需要添加业务流程。这可能比添加自定义管道的工作更少。 – Jay

相关问题