发生异常时将原始文件移动到SFTP服务器上的另一个文件夹

2020-08-14 00:45发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

在CPI中,我们使用输入,输出和错误文件夹连接到SFTP环境。 需要处理的文件在输入文件夹中设置,成功处理后,我们将其替换为输出文件夹。 但是,如果发生异常,我们希望将文件移至错误文件夹。

我的问题是这是否可行:SFTP适配器仅具有后处理操作,而没有异常后操作。

我唯一能想到的解决方案是在数据存储区中以单独的流加载文件,将其从输入文件夹中删除,然后根据处理结果再次输出。 但是我还是希望移动原始文件,以便SFTP环境后面的系统可以检查输入文件夹中是否有锁定的文件。

感谢您的帮助!

布拉姆

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

在CPI中,我们使用输入,输出和错误文件夹连接到SFTP环境。 需要处理的文件在输入文件夹中设置,成功处理后,我们将其替换为输出文件夹。 但是,如果发生异常,我们希望将文件移至错误文件夹。

我的问题是这是否可行:SFTP适配器仅具有后处理操作,而没有异常后操作。

我唯一能想到的解决方案是在数据存储区中以单独的流加载文件,将其从输入文件夹中删除,然后根据处理结果再次输出。 但是我还是希望移动原始文件,以便SFTP环境后面的系统可以检查输入文件夹中是否有锁定的文件。

感谢您的帮助!

布拉姆

付费偷看设置
发送
7条回答
昵称总是被占用
1楼 · 2020-08-14 01:20.采纳回答

后处理文件的移动路径可以具有动态成分。 使用此属性,您可以根据属性确定文件的位置,我们将属性称为" archiveDirectory"。 您可以将属性" archiveDirectory"初始设置为成功处理为"输出"。 对于失败的处理,请在以消息结尾结尾的"异常"子进程中设置属性" archiveDirectory"。

您移动文件后处理的路径可能是\ $ {property.archiveDirectory} \ $ {file:name}。

该解决方案在博客中进行了解释:在SFTP Sender适配器中动态设置存档目录以进行后处理

希望有帮助,

Bala

zZ12138
2楼-- · 2020-08-14 01:32

> SFTP适配器仅具有后处理操作,而没有后例外操作。

我认为这是一个严重的缺陷,应该由SAP修补。 我见过很多人(包括我在内)围绕这个问题跳舞。 我认为,"错误结束"-处理步骤应具有"触发适配器后处理"复选框。 我需要在CPI监视中查看失败的消息,但在第一次尝试失败以防止错误消息泛滥之后,我还需要删除错误的文件。

CPI开发团队是否有建议框?

Cikesha
3楼-- · 2020-08-14 01:25

你好布拉姆,

下面可能会帮助您。

1)复制内容

2)如果发生异常,请使用SFTP接收器适配器在"异常内发送步骤"并设置存储在属性中的文件名和文件内容。

此致

Sriprasad Shivaram Bhat

能不能别闹
4楼-- · 2020-08-14 01:22

你好Sirprasad

然后的问题是该文件也仍然位于输入文件夹中,而我希望它仅位于错误文件夹中。

因此,我认为在这种情况下,数据存储操作是最好的,因为您无法使用SFTP适配器删除文件(仅在处理后)。

最好

布拉姆

SKY徐
5楼-- · 2020-08-14 01:34

嗨,布拉姆

您知道吗? 我有相同的要求,正在寻找一些不同的选择。 我很想知道您的解决方案是什么。 我相信可以使用Groovy脚本来完成删除,但是我想知道是否还有其他方法或设计可以完成此任务。

谢谢你,
道格

lukcy2020
6楼-- · 2020-08-14 01:33

嗨道格,

仅适用于多带带的IFlow方案:因此,首先要提取+删除文件,然后相应地处理并推送文件。

我认为当前的SFTP适配器没有其他选择。

最好

布拉姆

Nir深蓝
7楼-- · 2020-08-14 01:34

嗨,布拉姆

希望你做的很好。

能否请您解释一下如何解决这种情况。我也面临着同样的问题。下面是我的iflow。

能够将文件移动到成功目录,归档目录和错误目录,但是如果iflow失败,则无法从源中删除文件。

谢谢

Avinash

一周热门 更多>