Problema con función RH_UPDATE_INFTY

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • kilofafeure
    Member
    • oct
    • 42

    #1

    Problema con función RH_UPDATE_INFTY

    Hola, estoy utilizando esta función y tengo el problema que siempre me devuelve un subrc = 3, que es: repid_form_initial. He estado buscando por internet y a parte que no he encontrado casi nada lo que he encontrado no funciona.

    Código:
      CALL FUNCTION 'RH_UPDATE_INFTY'
        EXPORTING
          vtask               = 'B'
          authy               = ' '
          repid               = sy-cprog
          form                = ' '
        TABLES
          innnn               = p_object1035
        EXCEPTIONS
          error_during_update = 1
          no_authorization    = 2
          repid_form_initial  = 3
          corr_exit           = 4
          OTHERS              = 5.
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    He estado debugando la función y el problema viene porqué e el campo FORM pasa vacío. ¿Alguna idea de que debo poner?

    Por internet he encontrado que debia poner sy-cprog o sy-repid en el campo REPID y el FORM con un espacio en blanco, pero así no funciona y siempre me da un SUBRC de 3.

    Con la función RH_INSERT_INFTY sucede lo mismo.

    Espero me puedan ayudar. Muchas gracias!
  • jesusrodriguez
    Junior Member
    • mar
    • 8

    #2
    Existe una función que te formatea de forma correcta la tabla de entrada a la función.

    Te pongo un ejemplo:
    data: ins_tab type wplog
    * local data
    DATA : BEGIN OF u1001.
    INCLUDE STRUCTURE p1001.
    DATA : END OF u1001.

    * F¸llen der Feldleiste Infotyp 1001 A020
    u1001-mandt = sy-mandt.
    u1001-plvar = '01'.
    u1001-otype = p_otype1.
    u1001-objid = fp_1000-objid.
    u1001-infty = '1001'.
    u1001-rsign = 'A'.
    u1001-relat = '020'.
    u1001-istat = c_plan.
    u1001-begda = fp_1000-begda.
    u1001-endda = fp_1000-endda.
    u1001-aedtm = sy-datum.
    u1001-uname = sy-uname.
    u1001-sclas = p_otype2.
    u1001-sobid = p_objid.

    CLEAR : ins_tab.
    CALL METHOD cl_hr_pnnnn_type_cast=>pnnnn_to_wplog
    EXPORTING
    pnnnn = u1001
    IMPORTING
    wplog = ins_tab.

    APPEND ins_tab.

    Comentario

    • luisa_camara
      Junior Member
      • dic
      • 13

      #3
      Salto Pagina PE51

      Saludos;
      Realice un formato o recibo de pago por la tx. PE51 y me preguntaba si existe y que instrucciones hay que realizar para el salto de pagina desntro del mismo. Existe ya un formato preimpreso y deseo saber como realizar el salto de pagina en la linea 40(aclaro que se creo un ZFORMATO_EDICION con las medidas en MM del dicho formato.
      A esperas de sus comentarios....[/

      Comentario

      • kilofafeure
        Member
        • oct
        • 42

        #4
        Originalmente publicado por jesusrodriguez
        Existe una función que te formatea de forma correcta la tabla de entrada a la función.

        Te pongo un ejemplo:
        data: ins_tab type wplog
        * local data
        DATA : BEGIN OF u1001.
        INCLUDE STRUCTURE p1001.
        DATA : END OF u1001.

        * F¸llen der Feldleiste Infotyp 1001 A020
        u1001-mandt = sy-mandt.
        u1001-plvar = '01'.
        u1001-otype = p_otype1.
        u1001-objid = fp_1000-objid.
        u1001-infty = '1001'.
        u1001-rsign = 'A'.
        u1001-relat = '020'.
        u1001-istat = c_plan.
        u1001-begda = fp_1000-begda.
        u1001-endda = fp_1000-endda.
        u1001-aedtm = sy-datum.
        u1001-uname = sy-uname.
        u1001-sclas = p_otype2.
        u1001-sobid = p_objid.

        CLEAR : ins_tab.
        CALL METHOD cl_hr_pnnnn_type_cast=>pnnnn_to_wplog
        EXPORTING
        pnnnn = u1001
        IMPORTING
        wplog = ins_tab.

        APPEND ins_tab.
        La verdad que esto ya lo tenía hecho, debería haber puesto todo el código, aún así no consigo que funcione. Pego todo el código:

        Código:
          LOOP AT ref_sched.
            IF sy-tabix EQ 1.
              u1035-mandt  = sy-mandt.
              u1035-uname  = sy-uname.
              u1035-aedtm  = sy-datum.
              u1035-plvar  = '01'.
              u1035-infty  = '1035'.
              u1035-otype  = p_objecte-otype.
              u1035-objid  = p_objecte-objid.
              u1035-istat  = '1'.
              u1035-begda  = p_objecte-begda.
              u1035-endda  = p_objecte-endda.
              u1035-ndays  = ref_sched-ndays.
              u1035-nhours = ref_sched-nhours.
              CLEAR : p_object1035.
              CALL METHOD cl_hr_pnnnn_type_cast=>pnnnn_to_wplog "YSBUNI
                  EXPORTING
                    pnnnn  = u1035
                  IMPORTING
                    wplog  = p_object1035.
              APPEND p_object1035.
            ELSE.
              DATA: BEGIN OF IRV1035A OCCURS 1.
                     INCLUDE STRUCTURE HRV1035A.
              DATA: END   OF IRV1035A.      
              CLEAR irv1035a.
               irv1035a = ref_sched.    
               APPEND irv1035a.  
            ENDIF.
        
          ENDLOOP.
        
          CALL FUNCTION 'RH_UPDATE_INFTY'
            EXPORTING
              vtask               = 'B'
              authy               = ' '
              repid               = sy-cprog
              form                = ' '
            TABLES
              innnn               = p_object1035
            EXCEPTIONS
              error_during_update = 1
              no_authorization    = 2
              repid_form_initial  = 3
              corr_exit           = 4
              OTHERS              = 5.
          IF sy-subrc <> 0.
        * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
          ENDIF.
        Igualmente me estoy mirando como lo hace el estandard ya que tengo que crear un horario por código, cuando lo tenga posteo aquí la solución, pero tengo para rato...
        Editado por última vez por kilofafeure; 03/09/2009, 10:35:29.

        Comentario

        Trabajando...