Ver Mensaje Individual
  #4  
Viejo 20/01/14, 16:19:08
Jarpi Jarpi is offline
Senior Member
 
Fecha de Ingreso: abr 2007
Localización: Argentina
Mensajes: 453
La verdad me resulta dificil darme cuenta donde está el problema sin debuggear tu programa.

Primero te diría que lo corras y le pongas A en el mode del call asi ves que es lo que está haciendo y donde puede estar el error.

A simple vista me parece que estas reiniciando el contador del renglon al llegar a 11, y la idea es que lo dejes en 10 en ese momento, ya que tu último renglón es ese.

Te pego mi código para que veas cómo lo hago yo en esa parte de la grilla, capaz te sirva.

iitem = '01'.
LOOP AT t_bi_det.

* [BEGIN] ---- Datos de Cabecera de Segunda Solapa
PERFORM dynpro USING 'X' 'SAPMF05A' '1100'.

PERFORM dynpro USING ' ' 'BDC_OKCODE' '/00'.
CADA NUEVO RENGLON HAGO ESTO
PERFORM dynpro USING ' ' 'BDC_SUBSCR'
'SAPLFDCB 0020PAGE'.
* PERFORM dynpro USING ' ' 'INVFO-ZLSCH' 'Z001'.
PERFORM dynpro USING ' ' 'BDC_SUBSCR'
'SAPLFDCB 0070ADR'.
PERFORM dynpro USING ' ' 'BDC_SUBSCR'
'SAPLFSKB 0100ITEMS'.
* [ END ] ---- Datos de Cabecera de Segunda Solapa

* [BEGIN] ---- Datos de Detalle en Grilla
CONCATENATE 'ACGL_ITEM-KOSTL(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' 'BDC_CURSOR' citem.

CONCATENATE 'ACGL_ITEM-HKONT(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' citem t_bi_det-hkont.

IF usr01-dcpfm EQ space OR usr01-dcpfm EQ 'Y'.
REPLACE '.' WITH ',' INTO t_bi_det-dmbtr.
ENDIF.

CONCATENATE 'ACGL_ITEM-WRBTR(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' citem t_bi_det-dmbtr.

CONCATENATE 'ACGL_ITEM-MWSKZ(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' citem 'C0'.

CONCATENATE 'ACGL_ITEM-ZUONR(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' citem t_bi_det-zuonr.

CONCATENATE 'ACGL_ITEM-SGTXT(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' citem t_bi_det-sgtxt.

CONCATENATE 'ACGL_ITEM-KOSTL(' iitem ')' INTO citem.
PERFORM dynpro USING ' ' citem t_bi_det-kostl.
* [ END ] ---- Datos de Detalle en Grilla

IF iitem < 4. EN MI CASO SON 4 RENGLONES, VOS TENDRIAS QUE PONER EL VALOR 10
ADD 1 TO iitem.
ENDIF.


ENDLOOP.
Responder Con Cita