FM EPS_GET_DIRECTORY_LISTING中FILE_MASK的通配符是什么

2020-08-23 00:34发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)正好1个字符的通配符是'?'。 ...

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

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


正好1个字符的通配符是'?'。

示例:带有掩码????????。STA,我得到以下文件:

BWMDAACW .STA

BWMDAADW.STA

BWMDAAEW.STA

BWMDAAFW.STA

BWMDAAGW.STA

( 所有以.STA结尾的文件,.STA之前有8个字符)

但是"任何字符"的通配符是什么

我尝试了* .STA,但结果为

test1

test2

test3

test4

y5c01

(所有文件名均精确到5个字符)

带有* STA,结果为

IBAN

PBCL

rfbi

stxh

stxl

(所有文件名均使用4个字符)

(结果与* 123相同或 * XYZ !!!)

和BW *,结果为

BWMDAACW.STA

BWMDAADW.STA

BWMDAAEW.STA

BWMDAAFW.STA

BWMDAAGW.STA

符合预期,但*似乎仅在掩码末尾是"任何字符"的正确通配符; 它不是掩码的最后一个字符时,似乎无法按预期工作。

这似乎很奇怪! 通配符有哪些规则? (我现在是4.7)

提前谢谢

7条回答
宇峰Kouji
2020-08-23 01:07

请使用FM'TRINT_SPLIT_FILE_AND_PATH'进行Split。 您将获得文件路径和文件名,甚至可以在文件名中使用通配符。 然后在FM'EPS_GET_DIRECTORY_LISTING'中传递导出参数。 您将使用通配符文件名将所有文件放在文件路径中。

示例:

SPAN {font-family:" Courier New"; 字体大小:10pt; 颜色:#000000; 背景:#FFFFFF; } .L0S31 {font-style:italic; 颜色:#808080; } .L0S32 {color:#3399FF; } .L0S33 {color:#4DA619; } .L0S52 {color:#0000FF; } .L0S55 {color:#800080; } .L0S70 {color:#808080; }

数据:p_file类型的c长度125.
数据:v_filepath类型,epsf-epsdirnam,
v_str类型,epsf-epsfilnam, epsfili的i_dir类型标准表。

呼叫功能' TRINT_SPLIT_FILE_AND_PATH'
导出
全名= p_file
导入
stripped_name = v_str
file_path = v_filepath
例外情况
x_error = 1
OTHERS =2。
IF sy -subrc =0。
调用功能'EPS_GET_DIRECTORY_LISTING'
导出
dir_name = v_filepath
file_mask = v_str
*导入
* DIR_NAME =
* FILE_COUNTER =
* ERROR_COUNTER =

dir_list = i_dir []
例外情况
invalid_eps_subdir = 1
sapgparam_failed = 2
build_directory_failed = 3
no_authorization = 4
read_directory_failed = 5
> too_many_read_errors = 6
空目录列表= 7
其他= 8

IF sy-subrc <> 0.
*在此处实施适当的错误处理
ENDIF。

> ENDIF。

一周热门 更多>