首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获取方法调用的值(如sy-subrc) - WebDynpro

获取方法调用的值(如sy-subrc) - WebDynpro
EN

Stack Overflow用户
提问于 2012-09-06 00:19:50
回答 1查看 1.5K关注 0票数 3

我正在试着做一个错误检查。当用户输入一个不存在的航空公司代码时,页面应该显示一条错误消息。问题是:我使用的是subrc,当我执行EXECUTE_BAPI_FLIGHT_GETLIST方法并尝试获取sy-subrc值时,它总是得到0。我的代码是这样的:

代码语言:javascript
复制
...
 data lo_componentcontroller type ref to ig_componentcontroller .
    lo_componentcontroller =   wd_this->get_componentcontroller_ctr( ).

      lo_componentcontroller->execute_bapi_flight_getlist(
       airline = lv_query                          " bapisflkey-airlineid
*       destination_from =                  " bapisfldst
*       destination_to =                    " bapisfldst
*       max_rows =                          " bapisflaux-bapimaxrow
      ).

  if sy-subrc <> 0.
          wd_this->error_check(
          ).
  endif.

即使运营商代码不存在,错误消息也不会显示。方法error_check( )也工作得很好,因为如果我在调用if语句之前使用if语句,消息就会显示出来。希望我已经解释清楚了。谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-09-06 03:10:13

该BAPI没有设置sy-subrc。它使用一个像所有BAPI一样的返回表。

这是BAPI签名。

代码语言:javascript
复制
    FUNCTION BAPI_FLIGHT_GETLIST.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*"  IMPORTING
*"     VALUE(AIRLINE) LIKE  BAPISFLKEY-AIRLINEID OPTIONAL
*"     VALUE(DESTINATION_FROM) LIKE  BAPISFLDST STRUCTURE  BAPISFLDST
*"       OPTIONAL
*"     VALUE(DESTINATION_TO) LIKE  BAPISFLDST STRUCTURE  BAPISFLDST
*"       OPTIONAL
*"     VALUE(MAX_ROWS) LIKE  BAPISFLAUX-BAPIMAXROW OPTIONAL
*"  TABLES
*"      DATE_RANGE STRUCTURE  BAPISFLDRA OPTIONAL
*"      EXTENSION_IN STRUCTURE  BAPIPAREX OPTIONAL
*"      FLIGHT_LIST STRUCTURE  BAPISFLDAT OPTIONAL
*"      EXTENSION_OUT STRUCTURE  BAPIPAREX OPTIONAL
*"      RETURN STRUCTURE  BAPIRET2 OPTIONAL
*"----------------------------------------------------------------------

RETURN将显示您的成功或错误消息,而不是sy-subrc。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12285724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档