Abap 数据集“无法关闭错误编号32”;“断管”;
我在SAP ABAP中遇到一个错误,该错误表示数据集无法关闭,错误号为32(管道断裂)。问题是:是什么过程触发了这种错误? 据我所知,此错误是由以下原因触发的:Abap 数据集“无法关闭错误编号32”;“断管”;,abap,Abap,我在SAP ABAP中遇到一个错误,该错误表示数据集无法关闭,错误号为32(管道断裂)。问题是:是什么过程触发了这种错误? 据我所知,此错误是由以下原因触发的: 关闭数据集dset 但是我不能重现这个错误,因为我不知道是什么过程触发了这种错误 这是我使用的代码: method GENERATE_TXT_FILE. DATA : lwa_data TYPE t_line, lv_param TYPE sxpgcolist-parameters. "Upl
关闭数据集dset
但是我不能重现这个错误,因为我不知道是什么过程触发了这种错误
这是我使用的代码:
method GENERATE_TXT_FILE.
DATA :
lwa_data TYPE t_line,
lv_param TYPE sxpgcolist-parameters.
"Upload File to Server
*Open Dataset
OPEN DATASET im_file_name FILTER 'dos2ux'
FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
CLEAR lwa_data.
LOOP AT it_data INTO lwa_data.
CATCH SYSTEM-EXCEPTIONS file_access_errors = 4
OTHERS = 8.
TRANSFER lwa_data-lines TO im_file_name.
ENDCATCH.
IF sy-subrc <> 0.
CLEAR lwa_data.
EXIT.
ENDIF.
CLEAR lwa_data.
ENDLOOP.
*Close Dataset
CLOSE DATASET im_file_name.
方法生成\u TXT\u文件。
数据:
lwa_数据类型t_线,
lv_参数类型sxpgcolist参数。
“将文件上载到服务器
*开放数据集
打开数据集im\u文件\u名称筛选器“dos2ux”
对于文本模式编码的默认输出。
清除lwa_数据。
将it_数据循环到lwa_数据中。
捕获系统异常文件访问错误=4
其他=8。
将lwa_数据线传输到im_文件名。
收尾。
如果sy subrc为0。
清除lwa_数据。
出口
恩迪夫。
清除lwa_数据。
结束循环。
*封闭数据集
关闭数据集im_文件名。
正如我通过后台作业日志调查的那样,运行后台作业的当前服务器似乎尚未映射到文本文件文件夹。解决方案是将服务器重新映射到文本文件文件夹。您正在使用-这可能是一个巨大的安全问题,并且会增加f可移植性问题,除非您知道自己在做什么,但这不是问题所在。从文档中可以看出:
执行OPEN DATASE语句时,将在中启动一个进程
指定语句的操作系统。当文件
打开用于读取的通道(管道)与
进程,在文件读取期间从中读取数据。文件
它本身与进程的STDIN链接。当文件打开时
对于写入,通道(管道)链接到进程的STDIN,以
写入时传递哪些数据。进程的输出为
转移到此文件
在您的情况下,filter命令可能决定退出—请参阅其中的许多。为什么很难调查—您可能需要查看各种系统日志才能找到。如果问题确实是某个未映射的网络文件夹,您可以尝试切换到UNC路径。请添加完整的代码—至少是打开数据集和CLO的部分添加了完整的打开-关闭数据集代码..请帮助:)