06-14-2005 8:34 AM
HI all,
when i run the attached native sql query i have written in my program i get a dump error can anyone help me.
*******************************************************
exec sql.
select ( select bdmng from resb
where bdter = lk_wk1_1 )
( select bdmng from resb
where bdter = lk_wk2_1 )
( select bdmng from resb
where bdter = lk_wk3_1 )
( select bdmng from resb
where bdter = lk_wk4_1 )
( select bdmng from resb
where bdter = lk_wk5_1 )
( select bdmng from resb
where bdter = lk_wk6_1 )
( select bdmng from resb
where bdter = lk_wk7_1 )
( select bdmng from resb
where bdter = lk_wk8_1 )
from resb
into :l_powk1,:l_powk2,:l_powk3,:l_powk4,
:l_powk5,:l_powk6,:l_powk7,:l_powk8
where BDART = 'F'
and matnr eq it_mard-matnr
and werks eq it_mard-werks
and aufnr eq space.
endexec.
******************************************************
Regards
Guhapriyan
06-14-2005 9:19 AM
Hi,
As far I know,it's not possible to use as you told.
Moreover I think it_mard-matnr is internaltable-field.
I don't think you can use this here.If you want to join two database tables , you can use joins.
Try like this.
exec sql.
select bdmng into :l_powk1 from resb
where bdter = :lk_wk1_1
and BDART = 'F'
and aufnr eq space.
select bdmng into :l_powk2 from resb
where bdter = :lk_wk2_1
and BDART = 'F'
and aufnr eq space.
.....
*try like this
endexec.
Regards,
J.Jayanthi
Message was edited by: Jayanthi Jayaraman
06-14-2005 10:06 AM
Hi,
Check these links for information about Native SQL.
http://help.sap.com/saphelp_46c/helpdata/en/34/8e73dc6df74873e10000009b38f9b8/frameset.htm
12-20-2006 12:28 PM
Hi, Guhapriyan
You can try this:
EXEC SQL.
SELECT
...
AND AUFNR EQ SPACE
ENDEXEC.
Don't use the "." at the end of native query.
Good Luck, Miguel
12-20-2006 1:11 PM
You need to place a semi-column before all variables that come from ABAP,
input as well as output :
exec sql.
select ( select bdmng from resb
where bdter = <b>:lk_wk1_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk2_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk3_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk4_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk5_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk6_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk7_1</b> )
( select bdmng from resb
where bdter = <b>:lk_wk8_1</b> )
from resb
into :l_powk1,:l_powk2,:l_powk3,:l_powk4,
:l_powk5,:l_powk6,:l_powk7,:l_powk8
where BDART = 'F'
and matnr eq <b>:it_mard-matnr</b>
and werks eq <b>:it_mard-werks</b>
and aufnr eq space.
endexec.
Besides, you should check that "space" is a valid constant
in your DB.
12-20-2006 2:03 PM
Sorry for the little mistake. I feel confident you understood I was meaning :
colon, and not semi-colon...