Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

HR_INFOTYPE_OPERATION Modify problem

Former Member
0 Likes
1,177

Hi All,

I am using HR_INFOTYPE_OPERATION for modifying IT0027 record. I am able to modify the record of a pernr if it has only one record in PA0027, if it has more that one record, even though i give the correct record to search, it is not updating it.

Please let me know how to proceed.

Read statement,


If sy-subrc = 0.
        CALL FUNCTION 'ENQUEUE_EPPRELE'
         EXPORTING
*   MODE_PREL            = 'E'
*   MANDT                = SY-MANDT
           pernr                = ipspar-pernr
         EXCEPTIONS
           foreign_lock         = 1
           system_failure       = 2
           OTHERS               = 3
                  .
        IF sy-subrc <> 0.
          MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                  WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
        ENDIF.
         CALL FUNCTION 'HR_INFOTYPE_OPERATION'
          EXPORTING
            infty                  = '0027'
            number                 = ipspar-pernr
           subtype                 = wa_pa0027-subty
           objectid                = wa_pa0027-objps
           lockindicator           = wa_pa0027-sprps
           validityend             = l_endda
           validitybegin           = wa_pa0027-begda
           recordnumber            = wa_pa0027-seqnr
            record                 = p0027
            operation              = 'MOD'
           tclas                   = 'A'
           dialog_mode             = '0'
*           NOCOMMIT               =
*           VIEW_IDENTIFIER        =
*           SECONDARY_RECORD       =
         IMPORTING
           return                 =  wt_return
           key                    = wl_key.

        CALL FUNCTION 'DEQUEUE_EPPRELE'
          EXPORTING
            pernr = ipspar-pernr.
ENDIF.

3 REPLIES 3
Read only

maulik
Contributor
0 Likes
546

Step 1: Check what is returned back from the FM via WT_Return in your code.

return                 =  wt_return

Step 2: Remove the Lock Indicator, you don't need it since it is optional.

lockindicator           = wa_pa0027-sprps

Step 3: record = p0027, instead use like a local variable

data: lv_p0027 type p0027
record = lv_p0027

Post the results on this thread.

Read only

Former Member
0 Likes
546

Hi,

Why didn't use the HR_EMPLOYEE_ENQUEUE and HR_EMPLOYEE_DEQUEUE function modules???

Read only

Former Member
0 Likes
546

Moderator message - Duplicate post locked Rob