Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Abap 当VBELN查询时,SELECT不返回行_Abap_Opensql - Fatal编程技术网

Abap 当VBELN查询时,SELECT不返回行

Abap 当VBELN查询时,SELECT不返回行,abap,opensql,Abap,Opensql,我试图从一个内部表中显示alv中的表,其中的行是从存储在数据库中的表中添加的。如果没有where条件,我会看到alv中显示的行,但如果select语句中有where条件,则不会返回任何行 代码如下: REPORT ZSAM. DATA: IT_1 TYPE STANDARD TABLE OF VBAK. select vbeln audat netwr waerk vkorg vtweg from VBAK into corresponding fields of Ta

我试图从一个内部表中显示alv中的表,其中的行是从存储在数据库中的表中添加的。如果没有where条件,我会看到alv中显示的行,但如果select语句中有where条件,则不会返回任何行

代码如下:

REPORT  ZSAM.

DATA: IT_1 TYPE STANDARD TABLE OF VBAK.

select vbeln audat netwr waerk vkorg vtweg 
    from VBAK 
    into corresponding fields of Table IT_1 
    where vbeln > 4500 
      and vbeln < 6000.
报告ZSAM。
数据:它是VBAK的1型标准表。
选择vbeln audat netwr waerk vkorg vtweg
来自VBAK
进入表IT_1的相应字段
其中vbeln>4500
vbeln<6000。

知道为什么使用where条件使其不返回任何行以及如何修复吗?

vbeln是一个具有十个位置的字段,并使用
ALPHA
转换例程(请参见数据元素后面的域)。这意味着该值用前导零填充(只要它只包含数字)。由于这是一个字符类型字段,您还必须使用撇号进行比较。因此,
其中
条件必须如下:

WHERE vbeln GT '0000004500'
  AND vbeln LT '0000006000'

你可以尝试使用范围

首次使用

数据:r_vbeln类型vbeln的范围

数据:r_vbeln的s_vbeln样线

s_vbeln-option='BT'

svbeln-sign='I'

s_vbeln-low='000000 4501'

s_vbeln-high='0000005999'

将s_vbeln附加到r_vbeln

选择条件;其中vbeln在ru vbeln中

第二次使用

数据:r_vbeln类型vbeln的范围

数据:r_vbeln的s_vbeln样线

s_vbeln-option='GT'

svbeln-sign='I'

s_vbeln-low='0000004500'

将s_vbeln附加到r_vbeln

s_vbeln-option='LT'

svbeln-sign='I'

s_vbeln-low='0000006000'

将s_vbeln附加到r_vbeln


选择条件;在r_vbeln.

中,请将您的问题减少到最小问题。如果您在第一次
选择
后立即进行调试,您将看到
IT_1
是空的,因此问题不在于ALV,您不需要显示关于ALV的代码(根本不需要谈论ALV)。耶,我认为现在更好了,无法理解为什么不返回或追加行,谢谢。我再次减少了代码,因为SELECT结果的输出与问题无关。虽然这可能是OP问题的答案,但只有代码的答案在StackOverflow上。请考虑对所提供的代码添加一些解释,因为它对OP和未来访问者都有好处。