Hello everybody,
I have a problem using EXEC SQL. Not the command itself but a conflict with our naming conventions.
In Open SQL I can simply use a field called EKKO~/SOL/BESTNR_EX and get the result. Due to a runtime problem I tried to use Native SQL via EXEC SQL. But as soon as I try to use this field I get a dump.
Does anybody know how to use a field named like this in Native SQL?
TYPES: BEGIN OF ls_test, lifnr TYPE elifn, matnr TYPE matnr, arktx TYPE arktx, werks TYPE werks_d, ean11 TYPE ean11, vgbel TYPE vgbel, posnr TYPE posnr_vl, pstyp type pstyp, bsart type esart, /sol/bestnr_ex TYPE /sol/mm_bestnr_ex, menge TYPE bstmg, elikz TYPE elikz, erekz TYPE erekz, END OF ls_test. DATA: ls_test TYPE ls_test. EXEC SQL. OPEN c1 FOR SELECT EKKO.LIFNR, EKPO.MATNR, EKPO.TXZ01, EKPO.WERKS, EKPO.EAN11, EKKO.EBELN, EKPO.EBELP, EKPO.PSTYP, EKKO.BSART, EKKO./SOL/BESTNR_EX, EKPO.MENGE, EKPO.ELIKZ, EKPO.EREKZ FROM EKKO INNER JOIN EKPO ON EKKO.EBELN = EKPO.EBELN ENDEXEC. DO. EXEC SQL. FETCH NEXT c1 INTO :LS_TEST ENDEXEC. IF sy-subrc <> 0. EXIT. ELSE. WRITE LS_TEST-LIFNR. ENDIF. ENDDO. EXEC SQL. CLOSE c1 ENDEXEC.
Before anyone asks the final SQL statement will be much bigger, but this sample shows the situation.
best regards
Stephan Knecht
Edited by: stknec on Aug 30, 2011 10:51 AM
Edited by: stknec on Aug 30, 2011 10:52 AM