cancel
Showing results for 
Search instead for 
Did you mean: 

我用open dataset 打开dir_home中的文件,为什么打不开?

Former Member
0 Kudos

大家好,我用open dataset 打开dir_home中的文件,总是报这个错误:No such file or directory。

声明,这个文件在dir_home中确实是存在的。

我的代码是这样写的: 

DATA: FILE TYPE C VALUE 'BOM_CONVERTED.txt',

MESS(100) TYPE C.

DATA TEC_LEGACY TYPE STRING.

START-OF-SELECTION.

OPEN DATASET FILE FOR INPUT IN TEXT MODE ENCODING DEFAULT MESSAGE MESS.

IF SY-SUBRC NE 0.

WRITE: / MESS.

ENDIF.

SY-SUBRC 总是返回 u20198u2018。

请问open dataset 时还需要设置其它的东西么?谢谢~~~ 

Accepted Solutions (1)

Accepted Solutions (1)

YapingGao
Employee
Employee
0 Kudos

怀疑你说的DIR_HOME是SAP OS(SM69)中定义的SAP路径名。

对DATASET的操作需要使用实际OS的绝对路径名,在AL11中可以查到。

楼上的提示也是可能性之一。

Former Member
0 Kudos

通过 al11就可以看到这个文件。读这个文件需要加服务器路径?怎么加?

Former Member
0 Kudos

根据你服务器的类型指定绝对路径就行比如aix:\interface\test.log

YapingGao
Employee
Employee
0 Kudos

如果是DIR_HOME,那直接从AL11里面copy过来,再加个文件名,就是了。

Edited by: Yaping Gao on May 14, 2009 9:39 AM

Former Member
0 Kudos

3QS 问题解决

Answers (2)

Answers (2)

Former Member
0 Kudos

DATA: FILE TYPE C VALUE 'BOM_CONVERTED.txt',

MESS(100) TYPE C.

DATA TEC_LEGACY TYPE STRING.

START-OF-SELECTION.

OPEN DATASET FILE FOR INPUT IN TEXT MODE ENCODING DEFAULT MESSAGE MESS.

IF SY-SUBRC NE 0.

WRITE: / MESS.

ENDIF.

*下次记得你打开了一定要关,

close dataset file.

FILE PATH 给它一条服务器路径,如果还是打不开,

很有可能是你没有权限读这个文件夹

Former Member
0 Kudos

如果

sy-subrc = 8.

证明 operating system could not open file.