select single msku~kulab marm~umrez into (w_kulab, w_umrez)
from mara
inner join msku on mara~matnr = msku~matnr
inner join marm on mara~matnr = marm~matnr
where meinh in ('CJA', 'KEG')
and msku~kunnr = it_vacio-kunnr
and msku~werks = it_vacio-werks
and msku~sobkz = 'V'
and msku~matnr = it_vacio-matnr.
Prueba de la siguiente manera amigo:
select single msku~kulab marm~umrez into (w_kulab, w_umrez)
from mara
inner join msku on mara~matnr = msku~matnr
inner join marm on mara~matnr = marm~matnr
where msku~kunnr = it_vacio-kunnr and
msku~werks = it_vacio-werks and
msku~sobkz = 'V' and
msku~matnr = it_vacio-matnr and
meinh in ('CJA', 'KEG').
La única y GRAN diferencia es que PRIMERO ACCEDES POR LA LLAVE y después por campos NO llave, así optimizas el performance, y como tu selección es para un sólo registro, no importa que uses el inner join, trabaja bien...
Prueba y si no te funciona, me avisas para enviarte un código más optimizado.
Saludos!
|