2020-09-10 12:53发布
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)早上好, 我是初级SAP PI... 显示全部
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
早上好,
我是初级SAP PI开发人员,面临着一个棘手的要求。
要求:文件到文件方案。
在这种情况下,我有一个发送方通道FTP,而源服务器有一个文件夹,其中包含许多文件。
目标:我想将文件夹内的所有文件压缩为单个zip文件。
我了解了使用zipall模式的模块payloadzipbean,并尝试将其应用到接收方,但是结果是我在文件夹中的每个文件都有一个zip文件。
我如何达到我的要求?
谢谢
嗨,Claudio,
PayloadZipBean将不起作用,因为PI发件人文件适配器将一个接一个地拾取所有文件。 并创建多个XI消息。
因此,适配器模块一次将仅压缩一个文件。如果您可以将PI文件系统中的源文件系统设置为NFS,则可以尝试以下操作 -
1。 请您的源系统放置一个虚拟文件-Complete.trg,如我之前的文章中所述。 这将表示所有文件都已加载。
2。 创建一个ICO-这是您的第一个,并且可以是"文件到文件"虚拟方案,在这种情况下,您可以选择Complete.trg文件,并将其放置在带有时间戳的同一源目录中。 在这种情况下,您可以在接收器适配器中调用脚本来压缩所有源文件。 并创建一个.zip文件。
3。 创建另一个ICO,在该ICO中,您将提取从第一种情况创建的zip文件。
您可以使用下面的shell脚本对源文件进行压缩,并在压缩后删除源文件。
p>
您可以将此Shell脚本放在NFS源目录中,并在第一个ICO的接收方通道中为文件路径名提供参数。
如果源目录名是-abc/123/ZipFiles
,然后将所有文件压缩到ZipFiles_ .zip
#!/bin/bash 出口目录= $ 1 dattm ="`date +%Y%m%d%H%M%S`" export zipnm =" $(基本名称$ 1)" _ zip -rj $ zipnm $ dattm.zip -x * .zip $ dir shopt -s extglob rm-!(*。zip)
Sugata
最多设置5个标签!
嗨,Claudio,
PayloadZipBean将不起作用,因为PI发件人文件适配器将一个接一个地拾取所有文件。 并创建多个XI消息。
因此,适配器模块一次将仅压缩一个文件。
如果您可以将PI文件系统中的源文件系统设置为NFS,则可以尝试以下操作 -
1。 请您的源系统放置一个虚拟文件-Complete.trg,如我之前的文章中所述。 这将表示所有文件都已加载。
2。 创建一个ICO-这是您的第一个,并且可以是"文件到文件"虚拟方案,在这种情况下,您可以选择Complete.trg文件,并将其放置在带有时间戳的同一源目录中。 在这种情况下,您可以在接收器适配器中调用脚本来压缩所有源文件。 并创建一个.zip文件。
3。 创建另一个ICO,在该ICO中,您将提取从第一种情况创建的zip文件。
您可以使用下面的shell脚本对源文件进行压缩,并在压缩后删除源文件。
p>
您可以将此Shell脚本放在NFS源目录中,并在第一个ICO的接收方通道中为文件路径名提供参数。
如果源目录名是-abc/123/ZipFiles
,然后将所有文件压缩到ZipFiles_ .zip
谢谢
Sugata
一周热门 更多>