Ayuda limpiar variable

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • minerva0112
    Senior Member
    • nov
    • 116

    #1

    Ayuda limpiar variable

    Tengo el siguiente codigo:


    rp_provide_from_last p0001 space p_fecha_ini p_fecha_fin.

    IF pnp-sw-found = '1'.
    ti_personal-pernr = p0001-pernr.
    ti_personal-kostl1 = p0001-kostl.
    ENDIF.

    CALL FUNCTION 'HR_READ_INFOTYPE'
    EXPORTING
    pernr = pernr-pernr
    infty = '0001'
    begda = p_fecha_ini
    endda = p_fecha_fin
    IMPORTING
    subrc = cod_retorno
    TABLES
    infty_tab = t_p0001.

    LOOP AT t_p0001 WHERE endda <> '99991231' .
    ti_personal-kostl2 = t_p0001-kostl.
    ti_personal-fecha_ceco2 = t_p0001-endda.
    ENDLOOP.
    APPEND TI_PERSONAL.


    trae los registros correctos pero tambien trae los siguientes con informacion del anterior, coloco el clear antes del append pero no funciona

    please me pueden ayudar
    gracias
  • yapbig
    Senior Member
    • may
    • 261

    #2
    entiendo que lo querés hacer es llenar tu tabla interna con los registros que te devolvió la función en la tabla interna t_p0001
    por consiguiente el append debería estar dentro del loop de la tabla interna t_p0001 y el clear inmediatamente después del APPEND.

    LOOP AT t_p0001 WHERE endda <> '99991231' .

    ti_personal-kostl2 = t_p0001-kostl.
    ti_personal-fecha_ceco2 = t_p0001-endda.

    APPEND TI_PERSONAL.
    CLEAR TI_PERSONAL.

    ENDLOOP.

    Saludos...
    Gustavo A. Biglia
    Consultor SAP FI

    Comentario

    • zonanet
      Senior Member
      • mar
      • 195

      #3
      Lo que pasa es que TI_PERSONAL ha de ser una tabla interna y cuando le das append le estás agregando registros, lo que tienes que hacer es dar REFRESH en lugar de CLEAR para limpiar el contenido de la tabla interna.


      Saludos!!!

      Comentario

      • stormshadow
        Senior Member
        • jun
        • 117

        #4
        Así es, el clear sirve solo para limpiar la cabecera, pero si quieres limpiar la tabla completa haces un refresh, para mayor seguridad en los programas yo hago ambas instrucciones para mis ti.
        saludos
        "Si quieres resultados distintos, no hagas siempre lo mismo" .... Einstein

        Comentario

        Trabajando...