永发信息网

ABAP OPEN DATASET问题

答案:2  悬赏:30  手机版
解决时间 2021-03-07 10:59
  • 提问者网友:辞取
  • 2021-03-06 23:53
OPEN DATASET file FOR OUTPUT IN BINARY MODE.
IF sy-subrc <> 0.
RETURN.
ENDIF.

我给file传了一个‘C:\myfile.bin'的值,但是执行完OPEN DATASET语句后,sy-subrc = 8.
于是我在前面加上
CALL FUNCTION 'FILE_GET_NAME'
EXPORTING
* CLIENT = SY-MANDT
LOGICAL_FILENAME = 'C:\MYFILE.BIN'
OPERATING_SYSTEM = SY-OPSYS
* PARAMETER_1 = ' '
* PARAMETER_2 = ' '
* PARAMETER_3 = ' '
* USE_PRESENTATION_SERVER = ' '
* WITH_FILE_EXTENSION = ' '
* USE_BUFFER = ' '
* ELEMINATE_BLANKS = 'X'
IMPORTING
* EMERGENCY_FLAG =
* FILE_FORMAT =
FILE_NAME = file
EXCEPTIONS
FILE_NOT_FOUND = 1
OTHERS = 2
.
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

却又返回sy-subrc = 1.

什么问题
最佳答案
  • 五星知识达人网友:西岸风
  • 2021-03-07 00:26
dataset 往制定路径放文件的路径要在AL11里面设定,然后可以
SELECt SINGLE dirname INTO z_dirname
FROM USER_DIR
WHERe ALIASS EQ 'DIR_WMS'.
DIR_WMS是自己设定的名称,你再试一下,debug看一下这个dirname有没有获取到你设定的路径,把路径和你要产生的txt文件名称concatenate一下,放在open dataset的语句里应该就可以了,我这样做没问题,不在AL11设定的话就不知道怎么搞了……
全部回答
  • 1楼网友:佘樂
  • 2021-03-07 00:54
这边的文件不是你本机的文件,而是服务器上的。。。你这边是对的吗? 再看看别人怎么说的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯