【发布时间】:2024-04-29 16:35:02
【问题描述】:
我有一个 BizTalk FTP 接收位置。有时面临零字节大小文件的问题。当我们说我们的合作伙伴向我们发送空文件时,他们不接受这一点。作为一种解决方案,我们希望在我们的 FTP 接收位置添加一个过滤器,以检查文件大小是否大于零。如果文件大小大于零,我想获取文件。
【问题讨论】:
标签: file ftp biztalk biztalk-2010
我有一个 BizTalk FTP 接收位置。有时面临零字节大小文件的问题。当我们说我们的合作伙伴向我们发送空文件时,他们不接受这一点。作为一种解决方案,我们希望在我们的 FTP 接收位置添加一个过滤器,以检查文件大小是否大于零。如果文件大小大于零,我想获取文件。
【问题讨论】:
标签: file ftp biztalk biztalk-2010
解决此问题的一种方法是创建自定义管道组件。
这个组件会检查流的长度。如果流是空的(长度为 0),或者如果您收到一个空文件,您会考虑期望的任何内容,您可以为消息返回 null。
这样,您的消息将被丢弃在您的组件中(在您的管道内),而不会在接收和处理非空文件时产生任何影响。
【讨论】:
您的 FTP 可能在文件完全写入之前就已获取文件,您需要做的是让正在写入文件的进程使用临时文件名或文件夹并执行重命名或移动后已经写完了。
如果他们真的在写零字节文件,那么根据 Pieter 的回答使用自定义管道组件,或者如果 FTP 位置是本地的,则将其变为文件共享并更改为文件适配器,该适配器会自动丢弃零字节文件。
【讨论】: