SAP ABAP 里用select 从三个相关联的表同时取数到一个TABLE里怎么写。

如题所述

"定义内表:gt_data
data:begin of wa_data,
werks type afpo-werks,
aufnr type afpo-aufnr,
vornr type afru-vornr,
auart type aufk-auart,
end of wa_data,
gt_data like table of wa_data.
SELECT A~dwerk as werks
a~aufnr "工单号码
b~vornr "作业
c~auart "订单类型
FROM afpo as a
INNER JOIN afru as b ON a~aufnr = b~aufnr
inner join AUFK as c on a~aufnr = c~aufnr
INTO CORRESPONDING FIELDS OF TABLE gt_data
WHERE a~dwerk = '工厂' .
温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-08
首先定义一个内表
DATA: BEGIN OF GWA_OUT,
MATNR LIKE MARA-MATNR,
WERKS LIKE MARC-WERKS,
LABST LIKE MARD-LABST,
END OF GWA_OUT.
DATA: GT_OUT LIKE TABLE OF GWA_OUT.
现在我从MARA里面取物料号从MARC里面取工厂从MRAD里面取库存
select a~matnr c~werks d~labst
into table gt_out
form mara as a
inner join marc as c on a~matnr = c~matnr
inner join mard as d on c-matnr = d~matnr
and c~werks = d~werks
where a~matnr = p_matnr
第2个回答  2011-12-08
data:begin of wa_data,
werks type afpo-werks,
aufnr type afpo-aufnr,
vornr type afru-vornr,
auart type aufk-auart,
end of wa_data,
gt_data like table of wa_data.
SELECT A~dwerk as werks
a~aufnr "工单号码
b~vornr "作业
c~auart "订单类型
FROM afpo as a
INNER JOIN afru as b ON a~aufnr = b~aufnr
inner join AUFK as c on a~aufnr = c~aufnr
INTO CORRESPONDING FIELDS OF TABLE gt_data
WHERE a~dwerk = '工厂' .
第3个回答  2011-12-12
顶楼上

...从三个相关联的表同时取数到一个TABLE里怎么写。
WHERE a~dwerk = '工厂' .

ABAP如何将3个结构中获得数据放入一个SAP 内表中
DATA : IT_TAB TYPE TABLE OF LTAK.DATA : LV_TABIX TYPE SY-TABIX.SELECT A~LGNUMB~TANUMC~TBNUMINTO TABLE IT_TABFROM LTAK AS AINNER JOIN LTAP AS BON A~LGNUM = B~LGNUMAND A~TANUM = B~TANUMINNER JOIN LTBK AS CON A~LGNUM = C~LGNUMAND A~TBNUM = C~TBNUMWHERE A...

SAP ABAP 里使用select 筛选条件里 在另一个表里查找结果为真或假的怎 ...
第一步: 到出作为筛选条件的数据放入内表:SELECT vbeln FROM vbfa INTO TABLE gt_vbfa WHERE vbtyp_n = 'J' .第二步: 用FOR ALL ENTRIES IN 前要先判断是否为空 IF gt_vbfa IS NOT INITIAL .SELECT matnr lfimg vrkme FROM lips INTO gt_lips FOR ALL ENTRIES IN gt_vbfa WHERE ...

SAP ABAP从EKBE取值,当 其中三个字段相同时 如PO号 PO项目 参考凭证相 ...
从表EKBE中SELECT出数据到ITAB1中,然后:LOOP AT ITAB1.COLLECT ITAB1 INTO ITAB2.ENDLOOP.这样就得到你想要的数据了

abap怎样抽取数据到内表? 顺便想求教关于ABAP程序执行效率和优化_百 ...
上面的表示一个内表gt_data定义出来了。然后我们在把对应的数据提取出来,select matnr werks lgort labst into table gt_data from mard where werks = '1100'.这样的话,数据就会按照物料号、工厂、库存地点、非限制库存 提取放到内表gt_data中了。也可以写成:select into corresponding fields of ...

SAP ABAP 中有关数据查询与计算问题
代码你自己都贴出来了...建议:SELECT EKKO~BEDAT EKKO~EBELN EKPO~EBELP EKPO~AFNAM EKPO~MENGE EKPO~MEINS EKET~EINDT MAKT~MATNR MAKT~MAKTX LFA1~ LIFNR LFA1~ NAME1 INTO CORRESPONDING FIELDS OF TABLE ITAB From LFAL inner join EKKO on LFAL~LIFNR = EKKO~LIFNR Inner join EKET on ...

用SAP ABAP如何转换输入字串为数值并输出!
1.先定义画面元素来接这个输入的字串,假设定义为c1 SELECTION-SCREEN BEGIN OF BLOCK BLK2 WITH FRAME TITLE TEXT-002.PARAMETERS : c1(100) type c. SELECTION-SCREEN END OF BLOCK BLK2. 2.再定义一个table: itab types: begin of itab_type,num(3) type n, end of itab_type.da...

ABAP SQL分页问题:在SAP里面可以通过传入当前页码和每页数量来进行分页...
可以通过循环取值来实现,关键词是package size <number>,用在select...from 的后面。话说楼上那位仁兄说的也很有道理,一般都是从数据库先把所有需要的数据取出来,然后对内表进行特别的处理,这样保证了最少量的数据库交互,能够大大减少因为取数而浪费的效率。

SAP ABAP select 语句为什么取不到数据(确认后台表中有数据)
你检查一下L_COSS-GJAHR,L_COSS-BUKRS,L_COSS-WRTTP,L_COSS-KSTAR等字段的值,取出的数应该在这些字段里面

ABAP SAP 如何将一个内表中的某一行分配给一个field-symbol
ITAB-COL3 = 3.APPEND ITAB.DATA: ITAB2 LIKE TABLE OF ITAB WITH HEADER LINE.DATA: ITAB3 LIKE TABLE OF ITAB WITH HEADER LINE.LOOP AT ITAB.READ TABLE ITAB2 WITH KEY COL1 = ITAB-COL1 COL2 = ITAB-COL2.IF SY-SUBRC <> 0.APPEND ITAB TO ITAB2.ELSE.APPEND ITAB ...

相似回答