report ztest001_xch.tables: makt.
data where_tab(
80) occurs 10
with header line.
data : wa_itab like makt occurs
10with header line.
parameters: s_trx like makt-matnr obligatory,
lan like makt-spras obligatory.
initialization.
move 'en
'to lan.
start-of-selection.
call function
'conversion_exit_alpha_output
'exporting
input =s_trx
importing
output =s_trx.
concatenate
'matnr like ''%
' s_trx '
%'''
into where_tab.
concatenate
'and spras =
''' lan ''''
into where_tab.
clear where_tab.
select *from makt into table wa_itab where (where_tab).
end-of-selection.
loop at wa_itab.
write:/ wa_itab-matnr,wa_itab-spras.
endloop.
一些教訓:單引號是特殊字元,如果要用到單引號,必須得轉義,'',即兩個單引號。sql語句查詢條件為字元時,需要加單引號。concatenate ' and spras = ''' lan '''' into where_tab. 實際上是三個字串連線成乙個字串存放到內錶中,and spras = '變數',前面是乙個字串,and spras = '',中間是乙個變數 lan,後面是乙個單引號'' ,所以合起來就是 concatenate ' and spras = ''' lan '''' into where_tab.
關於字串的連線和單引號的使用,需要去體會和實踐一下。這是關於在sap中如何多條件語句的使用示例。
注意:where (where_tab) 。括號必須緊跟著這個內錶,不能有空格。
ABAP動態內錶
定義的動態內錶,對應內錶一行的工作區 field symbols type standard table type any.form create dynamic table data lt fcat type slis t fieldcat alv,ls fcat like line of lt ...
ABAP動態取得資料
abap 動態查詢的實現 可以完全實現動態查詢,每個欄位都可以動態。1 利用巨集 2 利用abap指標 3 利用 field symbol 具體實現 1.結構的動態查詢 define select data to wa.select 1 from 2 into corresponding field...
ABAP 動態內錶排序
動態內錶要排序時,因為不知道內錶中的欄位名字,所以不能直接用sort table by field1 field2.可以使用下面的方法來實現 sort table by sorttable 表型別 abap sortorder tab 結構型別 abap sortorder 示例 data w it...