我有一个设置错误的表(作为应用程序表,但创建了一个维护视图)但它应该是一个自定义表,以便我们能够传输表的条目。
到目前为止,我更改了表的类型和可维护性,现在是类型 C(定制),可以无限制地进行更改。我还在技术设置中将类型更改为 APPL2,因此它是一个自定义表。在这些更改之后,我删除了原始表维护生成器视图并生成了一个新视图。
我的问题是,当我在 sm30 中保存我的新/更改条目时,我不会被要求提供传输请求,并且将它们放入 sm30 中的传输请求的选项(通过菜单)不可用。它过分了。
我如何更改我的表格/我需要做什么,以便我能够传输我的自定义条目?
我想从内部表中删除条目,该表的一列中没有“+”。现在,如果我想像这样删除它:
DELETE internal_table where field1 <> '+'.
Run Code Online (Sandbox Code Playgroud)
它不起作用。这意味着,它将“+”作为正则表达式,只选择长度为 1 的任何字符。
现在我已经尝试了几件事:
DELETE internal_table where field1 <> '\+'.
DELETE internal_table where field1 <> |\+|.
DELETE internal_table where field1 <> `\+`.
Run Code Online (Sandbox Code Playgroud)
这一切都不起作用。使用字符串模板时,|\+|我收到错误“字符串模板中未屏蔽的符号 '\'。
字段 1 是长度为 1 的字符字段。如何转义字段 1 中只有“+”的行的“+”?
是否有功能模块通过功能模块或类调用逻辑数据库?
在我的情况下,我需要 PNPCE,所以它是 HCM 模块。
如果用户设置参数来跳过逻辑数据库的处理,则应跳过该参数。但不幸的是,我找不到办法,因为无论我尝试什么,报告都会完全结束。我尝试过的示例:
REPORT zxxxx.
TABLES: pernr.
NODES peras.
PARAMETERS: p_skip AS CHECKBOX.
START-OF-SELECTION.
IF p_skip = abap_true.
RETURN. " Also tried EXIT.
ENDIF.
GET peras.
WRITE 'ABC'.
end-of-selection.
WRITE 'test'.
Run Code Online (Sandbox Code Playgroud)
我的预期是报告会直接跳转到“END-OF-SELECTION”,但事实并非如此。
我在这里需要使用什么语句?或者有解决方法吗?(否则我必须自己编写LDB的逻辑)
我正在建立一个类的方法调用
DATA: r_info TYPE REF TO zcl_sv_job_offline_ctrl.
CALL METHOD r_info->create
EXPORTING
is_data = lr_test_record.
Run Code Online (Sandbox Code Playgroud)
并收到以下错误:
CX_SY_REF_IS_INITAL
You are trying to access a component with a 'ZERO' object reference (points to nothing). Variable: "R_INFO".
Run Code Online (Sandbox Code Playgroud)
我想念什么吗?