求教:abap的系统函数的api在哪里看

[复制链接]
查看11 | 回复9 | 2012-1-4 11:54:46 | 显示全部楼层 |阅读模式
本帖最后由 dingyuan963 于 2012-5-14 15:48 编辑
不知道abap有没有官方发布的api文档,在哪里可以找到。
今天遇到个问题
REPORTytest37 .
DATA: fm_name TYPE rs38l_fnam.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZTEST20'
variant
= ' '
direct_call= ' '
IMPORTING
fm_name
= fm_name
EXCEPTIONS
no_form
= 1
no_function_module = 2
OTHERS
= 3.啊
IF sy-subrc0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION fm_name
EXCEPTIONS
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled= 4
OTHERS = 5.
IF sy-subrc0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
用这个程序区调取一个smartform form ZTEST20 已经激活且测试过。结果这里引发了一个运行时错误,说是fm_name 没有取到值,fm_name 代表的是form对应的调用函数名么。使用去掉后面那个call 换成 write fm_name. 结果什么都没数据。后来从form的测试界面取得了对应的函数名称 call了一下运行正常。说明'SSF_FUNCTION_MODULE_NAME'本身这个函数返回是有问题的。 有api的话问题应该好分析一点。所以求教

回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
SMARTFORMS建的表格名是ZTEST20吗?而且,‘’和‘=’ 之间要有空格...
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
本帖最后由 dingyuan963 于 2012-5-14 17:49 编辑
houbao408 发表于 2012-5-14 17:14
SMARTFORMS建的表格名是ZTEST20吗?而且,‘’和‘=’ 之间要有空格...

formname 的值是smartform所建表格名称? 不是smartform的名称? 求详细api位置。这些代码都是照着书上看的写的。没有解释过函数的参数。
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
在SE37可以看到函数的参数。如果该函数创建了文档的话,也可以在这看到。
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
在smartforms里面运行就可以看到名称了
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
输入 TCODE smartforms
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
rosefish 发表于 2012-5-14 18:12
在SE37可以看到函数的参数。如果该函数创建了文档的话,也可以在这看到。

嗯 这个我知道,看来abap没有和java哪样 发布标准的api文档的。需要靠看源代码以及参数说明的
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
wy_coder 发表于 2012-5-14 22:06
在smartforms里面运行就可以看到名称了

呵呵 我就是这么看的
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
houbao408 发表于 2012-5-14 17:14
SMARTFORMS建的表格名是ZTEST20吗?而且,‘’和‘=’ 之间要有空格...

我查了下函数 文档formname指的就是form的名称 等号两边都有空格的。
回复

使用道具 举报

千问 | 2012-1-4 11:54:46 | 显示全部楼层
dingyuan963 发表于 2012-5-15 10:26
我查了下函数 文档formname指的就是form的名称 等号两边都有空格的。

是,我也差了下,是form的名称,不好意思,我搞错了!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行