我想搜索所有程序 - 在一个包中 - 使用以下语句:
从 wa_itab_xyz 修改 itab_xyz
最好,应该使用通配符(如 itab*)搜索字符串以获取 itab_(values) 范围,如 itab_abc、itab_def、itab_ghi 等。
我如何在 SAP ABAP 中执行此操作?
下面是一个可以搜索的包中所有程序的屏幕截图。
以下ABAP程序抛出错误Statement is not accessible.该程序包含一个接口和两个类:c2继承自c1.语句中抛出错误CREATE OBJECT cref1.
REPORT z_upcast_downcast_objref.
INTERFACE i1.
DATA a1 TYPE i.
ENDINTERFACE. "i1
INTERFACE i2.
INTERFACES i1.
ALIASES a1 FOR i1~a1.
DATA a2 TYPE i.
ENDINTERFACE. "i2
CLASS c1 DEFINITION.
PUBLIC SECTION.
INTERFACES i2.
ENDCLASS. "c1 DEFINITION
CLASS c2 DEFINITION INHERITING FROM c1.
PUBLIC SECTION.
METHODS m1.
ENDCLASS. "c2 DEFINITION
CLASS c2 IMPLEMENTATION.
METHOD m1.
WRITE : / 'In c2->m1 method'.
ENDMETHOD. "c2
ENDCLASS. "c2 DEFINITION
DATA: iref TYPE REF …Run Code Online (Sandbox Code Playgroud) 如何在不使用消息类的情况下在消息语句中显示变量?
IF acct_bal < min_bal.
MESSAGE 'customer balance less than minimum. Balance-->', acct_bal TYPE 'E'.
ENDIF.
Run Code Online (Sandbox Code Playgroud)
我的程序有语法错误,因为系统不允许acct_bal进入消息语句。我不想使用带有占位符的消息类来执行此操作:
Program z_test.
DATA: acct_bal TYPE 'I' value 10,
min_bal TYPE 'I' value 100.
IF acct_bal < min_bal.
MESSAGE 'customer balance less than minimum. Balance-->', acct_bal type 'E'.
ENDIF.
Run Code Online (Sandbox Code Playgroud) 我有两个表:ZDEPARTMENT01和ZEMPLOY01。
ZDEPARTMENT01有一个外键DEPHEAD,其数据元素是ZPERSONNEL_NO域ZPERSONNEL_NO(NUMC, 10)。ZEMPLOY01有一个主键EMP_NUM,其数据元素是ZEMP_NUM域ZEMP_NUM(NUMC, 10)。
ZDEPARTMENT01-DEPHEAD是外键,ZEMPLOY01-EMP_NUM是检查键, ZDEPARTMENT01-DEPHEAD域ZPERSONNEL_NO有值表:ZEMPLOY01。
在为ZDEPARTMENT01-DEPHEAD我设置检查表时出现错误检查表 ZEMPLOY01 没有键字段,域 ZPERSONNEL_NO 的域为 DEPHEAD
即使两个域具有相同的数据类型和长度(但域不同),系统也无法识别外键表和检查表关系。
文档说:系统尝试将检查表的关键字段分配给具有相同域的表的字段。是不是除了数据类型和长度外,外键表和校验表的域名应该是一样的?
如何解决这个问题?
以下 SAP ABAP 帮助文档有什么区别。
为什么他们的两套文档是同一个产品——ABAP
http://help.sap.com/abapdocu_702/en/ 和 http://help.sap.com/saphelp_nw73ehp1/helpdata/en/43/41341147041806e10000000a1553f6/frameset.htm
为什么 SAP 要为 ABAP 维护 2 套独立的文档?
REPORT zbc400_figure157.
TYPES: BEGIN OF t_conn,
cityfrom TYPE spfli-cityfrom,
cityto TYPE spfli-cityto,
carrid TYPE spfli-carrid,
connid TYPE spfli-connid,
END OF t_conn.
DATA:
conn_list LIKE STANDARD TABLE OF t_conn,
startline LIKE sy-tabix,
BEGIN OF wa_travel,
dest TYPE spfli-cityto,
cofl_list LIKE conn_list,
END OF wa_travel,
travel_list LIKE SORTED TABLE OF wa_travel WITH UNIQUE KEY dest.
FIELD-SYMBOLS:
<fs_conn> TYPE t_conn,
<fs_conn_int> TYPE t_conn,
<fs_travel> TYPE wa_travel.
PARAMETERS pa_start TYPE spfli-cityfrom DEFAULT 'FRANKFURT'.
SELECT carrid cityfrom cityto
FROM spfli
INTO CORRESPONDING FIELDS OF TABLE …Run Code Online (Sandbox Code Playgroud) 我想显示一条 E 类型的消息,我必须首先为其创建一个字符串。该字符串具有要连接的混合字符串和整数变量。
由于只能连接字符串,因此我将整数变量复制到字符串变量中,生成整个字符串并连接。
是否有诸如 to_string(integer_variable) 之类的转换函数可以将整数转换为字符串?
PROGRAM abc.
DATA: im_acc_no TYPE i VALUE 100,
lv_acc_no TYPE string,
lv_msg TYPE string.
START-OF-SELECTION.
lv_acc_no = im_acc_no.
CONCATENATE 'Acnt# ' lv_acc_no ' does not exist' INTO lv_msg.
MESSAGE lv_msg TYPE 'E'.
Run Code Online (Sandbox Code Playgroud)