此 ABAP 代码有效:
select *
into table <sub_result>
from ADRC
WHERE ADDRNUMBER
in ( select ADRNRA from AUFK where (cond_string) ).
Run Code Online (Sandbox Code Playgroud)
但这不会:
select *
into table <sub_result>
from ADRC
WHERE (ADDRNUMBER, MANDT)
in ( select ADRNRA, MANDT from AUFK where (cond_string) ).
Run Code Online (Sandbox Code Playgroud)
AFAIK元组语法(ADDRNUMBER, MANDT)
对SQL有效。这在 ABAP 的 Open SQL 中无效吗?
如果不允许元组语法,我该怎么办?
PS在 Open SQL 中不需要检查 MANDT,所以这只是示例查询。
我找到了这段代码:
FUNCTION /FOO/BAR.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(IV_XYZ) TYPE STRING
*" EXPORTING
*" VALUE(EV_RESULT_JSON) TYPE STRING
*"----------------------------------------------------------------------
*-- Initialization
clear ev_result_json.
Run Code Online (Sandbox Code Playgroud)
需要clear ev_result_json
吗?
有没有办法获得当前用户可以看到的所有BUKRS列表?
我想在open sql中使用此列表作为过滤器.想象一下我搜索存储结果的方法的结果bk_list
.然后我可以bk_list
像这样使用:
SELECT * FROM some_table WHERE bukrs IN bk_list
Run Code Online (Sandbox Code Playgroud) 我在abap中创建了一个新函数模块,它应返回数据元素的列表AGVAL
.
AFAIK现在有两种方式:
怎么做这种反省?我想现在,如果已经有一个包含一列的表类型,它是AGVAL类型的?
我创建了一个自定义表.编辑通过se16n在SAP dev系统中工作.但编辑在质量保证体系中不起作用.
有没有办法编辑表格呢?
如果我使用Ubuntu 18.04创建virtualenv,则会local
创建一个名为gets 的目录.
virtualenv test-env
cd test-env
ls -l local/
Run Code Online (Sandbox Code Playgroud)
输出:
lrwxrwxrwx 1 foo foo 30 Jan 30 10:47 bin -> /home/foo/tmp/test-env/bin
lrwxrwxrwx 1 foo foo 34 Jan 30 10:47 include -> /home/foo/tmp/test-env/include
lrwxrwxrwx 1 foo foo 30 Jan 30 10:47 lib -> /home/foo/tmp/test-env/lib
Run Code Online (Sandbox Code Playgroud)
版:
virtualenv --version
15.0.3
Run Code Online (Sandbox Code Playgroud)
这在其他机器上不会发生(例如企业SuSE Linux)
AFAIK不需要此目录.
有没有办法避免这个目录被调用local
哪个不需要?
(这是关于Python 2.7)
我想抓住并处理SAPSQL_DATA_LOSS
我的ABAP代码。
我尝试了这个:
try.
SELECT *
FROM (rtab_name) AS rtab
WHERE (sub_condition)
into table @<sub_result>
.
catch SAPSQL_DATA_LOSS into error.
...
endtry.
Run Code Online (Sandbox Code Playgroud)
但以上代码无效。我收到此消息:
类型“ SAPSQL_DATA_LOSS”无效
我尝试了这个:
catch SYSTEM-EXCEPTIONS SAPSQL_DATA_LOSS = 123.
SELECT *
...
.
endcatch.
if sy-subrc = 123.
...
endif.
Run Code Online (Sandbox Code Playgroud)
但是上面的代码给了我:
而不是“ SAPSQL_DATA_LOSS”预期的“系统例外”(由我从德语翻译为英语)
怎么抓SAPSQL_DATA_LOSS
?
这个问题不是关于“为什么会发生这种异常?”。这已经解决了。我的代码应处理该异常。
我有以下代码:
cl_abap_conv_in_ce=>create( )->convert(
EXPORTING
input = lo_json_writer->get_output( )
IMPORTING
data = json ).
Run Code Online (Sandbox Code Playgroud)
JSON
是我的变量,我想为其选择匹配类型。
我双击convert方法进行调查:
我在签名中convert()
看到export参数data
是内置类型SIMPLE
。
不幸的是,我找不到SIMPLE
带有我最喜欢的搜索引擎的有关该类型的规范文档。
我应该为变量使用哪种数据类型JSON
?
我正在转换一些代码。过去使用过字符串,现在应该使用rawstring。
这适用于字符串,但现在无法使用rawstring:
data my_table TYPE TABLE OF rawstring.
concat_lines_of( table = my_table sep = `, `)
Run Code Online (Sandbox Code Playgroud)
如何使以上线条起作用?
在我的情况下,rawstring包含utf8编码的数据。
结果应为xstring(字节序列)
在这里并不重要,但是在Python中看起来像这样:
my_list = [my_byte_sequence1, my_byte_sequence2, my_byte_sequence3]
big_byte_sequence = b', '.join(my_list)
Run Code Online (Sandbox Code Playgroud) 我知道如何用lineTo()画一条线:
var c = document.getElementById("myCanvas");
var ctx = c.getContext("2d");
ctx.beginPath();
ctx.moveTo(0, 0);
ctx.lineTo(300, 150);
ctx.stroke();
Run Code Online (Sandbox Code Playgroud)
有没有办法将动画(例如anime.js)应用于行?
abap ×8
sap ×5
opensql ×2
animation ×1
exception ×1
html5-canvas ×1
javascript ×1
parameters ×1
python ×1
python-2.7 ×1
try-catch ×1
ubuntu-18.04 ×1
virtualenv ×1