Ver Mensaje Individual
  #7  
Viejo 20/02/07, 15:45:27
Avatar de tomasm
tomasm tomasm is offline
Member
 
Fecha de Ingreso: jun 2006
Localización: Paraiso natural
Mensajes: 87
Un ejemplo vale más que mil palabros.


REPORT ZCHAPUZA .

tables: pa0001, pa0003.


DATA: comilla TYPE x VALUE '27'.

DATA: SALIDA(10) TYPE C.

data: begin of emple occurs 0,
pernr like pa0001-pernr.
data: end of emple.

parameters: divi like pa0001-werks,
subdi like pa0001-btrtl,
f_ini like sy-datum,
f_fin like sy-datum,
f_sele like sy-datum.


select pernr from pa0001 into emple-pernr
where werks = divi
and btrtl = subdi
and begda <= f_fin
and endda >= f_ini.
append emple.
endselect.

loop at emple.

select bderr from pa0003 into pa0003-bderr
where pernr = emple-pernr
and begda <= f_fin
and endda >= f_ini
and bderr <= f_sele
and bderr >= f_ini.
exit.
endselect.

if sy-subrc = 0.
concatenate comilla emple-pernr comilla into salida.
write:/ salida , pa0003-bderr.
clear salida.
endif.

endloop.




chapuza

'00000002' 01.11.2001
'00000002' 01.11.2001
'00000002' 01.11.2001
'00000002' 01.11.2001
'00000002' 01.11.2001
'00000012' 01.10.2006
'00000012' 01.10.2006
'00000012' 01.10.2006
'00000012' 01.10.2006
'00000012' 01.10.2006
'00000012' 01.10.2006
'00000039' 01.12.2001




La chapuza, corregida y aumentada (se chapucea con un campo de fecha).

data: salida1(20) type c.

if sy-subrc = 0.
concatenate comilla emple-pernr comilla into salida.
concatenate comilla pa0003-bderr+3(1) comilla pa0003-bderr+4(4) comilla into salida1.
write:/ salida , salida1.
clear salida.
endif.

chapuza

'00000002' '1'1101'
'00000002' '1'1101'
'00000002' '1'1101'
'00000002' '1'1101'
'00000002' '1'1101'
'00000012' '6'1001'
'00000012' '6'1001'
'00000012' '6'1001'
'00000012' '6'1001'
'00000012' '6'1001'
'00000012' '6'1001'
'00000039' '1'1201'
__________________

Úlima edición por tomasm fecha: 20/02/07 a las 16:03:12.
Responder Con Cita