Caso curioso de PROVIDE BETWEEN infotipo 2001

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • pirri
    Senior Member
    • dic
    • 127

    #1

    Caso curioso de PROVIDE BETWEEN infotipo 2001

    Hola

    No sé si estoy haciendo algo mal o desconozco algo de RRHH que provoca este caso.

    Tengo un empleado que tiene un absentismo en el infotipo 2001. El absentismo está registrado desde el 23/9/2018 al 12/1/2019.

    En un programa Z recojo si tiene algún absentismo para tratarlo. Para PN-BEGDA = 20181201 y PN-ENDD = 20181201, para este periodo da PROVIDE SY-SUBRC = 4. Da que no existe. Pero si pruebo para meses completos poniendo la fecha de inicio y fin, como para el mes 9,10,11 e incluso 1/2019 sí encuentra el registro de baja entre las fechas. Sólo falla para el mes 12

    El código es bien sencillo.

    CLEAR P2001.
    PROVIDE * FROM P2001 BETWEEN PN-BEGDA AND PN-ENDDA.
    IF SY-SUBRC EQ 0.
    .....
    ENDIF.
    ENDPROVIDE.

    No encuentro el problema, ¿sabe alquien que puede ser?

    Agradecería cualquier ayuda.
  • pirri
    Senior Member
    • dic
    • 127

    #2
    Me respondo

    Estoy usando SY-SUBRC que no se debe usar con PROVIDE, y está recogiendo el valor de anteriores sentencias.

    Un saludo

    Comentario

    Trabajando...