Ver Mensaje Individual
  #1  
Viejo 19/02/09, 09:05:09
romario2 romario2 is offline
Senior Member
 
Fecha de Ingreso: abr 2006
Mensajes: 233
dudas con un LOOP

Hola,

este loop no acaba de funcionarme bien,
alguien me podría dar algún consejo?

Muchas gracias de antemano


* recorremos tabla interna cuando cliente esté informado
LOOP AT it_bsid WHERE kunnr <> ''.
IF bel_aux <> it_bsid-belnr.
bel_aux = it_bsid-belnr.

* En la selección de documentos se deberán quitar
* todos los documentos que estén anulados, es decir en la tabla BKPF ( con belnr)
* todos aquellos registros que tengan informado el campo STBLG.
SELECT SINGLE *
INTO bkpf
FROM bkpf
WHERE stblg <> ''
AND belnr = it_bsid-belnr
AND gjahr = p_gjahr
AND bukrs = p_bukrs.

SELECT SINGLE *
INTO tgsbt
FROM tgsbt
WHERE gsber IN s_gsber.

SELECT SINGLE *
INTO vbrk
FROM vbrk
WHERE belnr = it_bsid-belnr
AND gjahr = p_gjahr
AND bukrs = p_bukrs.

IF sy-subrc = 0.
p_kunrg = vbrk-kunrg.
ENDIF.

SELECT SINGLE *
INTO kna1
FROM kna1
WHERE kunnr IN rg_kunnr.

IF bkpf-psoak = c_pend.
MOVE-CORRESPONDING it_bsid TO it_alv.
it_alv-zuonr = bsid-zuonr.
it_alv-psoak = bkpf-psoak.
it_alv-dokid = bkpf-dokid.
it_alv-gtext = tgsbt-gtext.
it_alv-vbeln = vbrk-vbeln.
it_alv-name1 = kna1-name1.
* it_alv-zsabe = knb1-zsabe.
it_alv-blart = bsid-blart .
APPEND it_alv.
ELSE.
* DELETE it_bsid WHERE belnr = bkpf-belnr.
ENDIF.
ENDIF.
ENDLOOP.
Responder Con Cita