HR_INFOTYPE_OPERATION Dellimit operation 'LIS9'

Hey All,
     I am trying to write a report to fix some corrupted HR address data(IT0006) using FM HR_INFOTYPE_OPERATION. I know how to use the FM in INS and MOD mode, but this time I am trying to use the delimit operation.
Due to error we have a lot of records with subtype 'Blank', Instead of deleting the corrupted records, I am trying to delemit the records to a older date so that it doesnt show up at the top.
      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
        EXPORTING
          infty                  = '0006'
          number                 = wa_p0006-pernr
          subtype                = wa_p0006-subty
          objectid               = wa_p0006-objps
          lockindicator          = wa_p0006-sprps
          validityend            = wa_p0006-endda
          validitybegin          = wa_p0006-begda
          recordnumber           = wa_p0006-seqnr
          record                 = wa_p0006
          operation              = 'LIS9'
          tclas                  = 'A'
          dialog_mode            = '0'
       IMPORTING
         return                 = wa_bapiret1.
When i try to change the enddate so that it delimits the record to that date, it gives me a complex application error.
Any input is higly appreciated.
Thanks

Hi Aparna,
try using the operation 'MOD' with e_p0006 having the modified date
chechk this
e_p0006 = wa_p0006.
e_p0006-endda = 'Delimit date'.
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
infty = '0006'
number = wa_p0006-pernr
subtype = wa_p0006-subty
objectid = wa_p0006-objps
lockindicator = wa_p0006-sprps
validityend = wa_p0006-endda
validitybegin = wa_p0006-begda
recordnumber = wa_p0006-seqnr
record = e_p0006
operation = 'MOD'
tclas = 'A'
dialog_mode = '0'
IMPORTING
return = wa_bapiret1.
Edited by: Jacks M on Jul 23, 2008 8:25 PM

Similar Messages

  • Hr_infotype_operation for operation MOD

    Hi,
    There is a problem again using HR_INFOTYPE_OPERATION , while trying to create a new record it was successful, but when i tried to change a nonkey field the operation i have used is MOD, and it is not working.
    i search for it but found problem with the same one.
    can anyone please help me.
    the message is: No data selected for the period.
    Edited by: xxx xxx on Nov 18, 2010 10:17 PM
    Edited by: xxx xxx on Nov 18, 2010 10:17 PM

    Hi,
    <li>Generally delimitation to ENDDA only. You get the correct record from the existing records, Change ENDDA, modified using the specified function module. Instead of 'LIS9' operation use 'MOD' operation only.
    <li>Get the existing record.
    CALL FUNCTION 'HR_INFOTYPE_GETDETAIL'
           EXPORTING
                INFTY         = '9906'
                NUMBER        = EMPLOYEENUMBER
                SUBTYPE       = SUBTYPE
                OBJECTID      = OBJECTID
                LOCKINDICATOR = LOCKINDICATOR
                VALIDITYEND   = VALIDITYEND
                VALIDITYBEGIN = VALIDITYBEGIN
                RECORDNUMBER  = RECORDNUMBER
                TCLAS         = 'A'
           IMPORTING
                RETURN        = RETURN
                RECORD        = P9906
           EXCEPTIONS
                OTHERS        = 0.
    <li>Change the ENDDA of P9906 record.
      MOVE  DELIMIT_DATE         TO P9906-ENDDA .
      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
           EXPORTING
                INFTY          = '9906'
                NUMBER         = EMPLOYEENUMBER
                SUBTYPE        = SUBTYPE
                OBJECTID       = OBJECTID
                LOCKINDICATOR  = LOCKINDICATOR
                VALIDITYEND    = VALIDITYEND
                VALIDITYBEGIN  = VALIDITYBEGIN
                RECORDNUMBER   = RECORDNUMBER
                RECORD         = P9906
                OPERATION      = CHANGE
                NOCOMMIT       = NOCOMMIT
           IMPORTING
                RETURN         = RETURN
                KEY            = KEY
           EXCEPTIONS
                OTHERS         = 0.
    Regards,
    Venkat.O

  • HR_INFOTYPE_OPERATION - 'MOD' Operation

    I am using HR_INFOTYPE_OPERATION FM for changing a infotype depending on the user input.
    This FM does not change the record with modify operation (MOD).
    Error while trying modify operation is as shown below:
    "Infotype does not exist"
    The infotype does exist with a single record in the system and I am passing the whole key to the record. I am trying it with infotype 0077.
    Any idea why it's not able to modify an existing infotype. If anyone of you have ever used this FM for modify operation then pls let me know.
    Thanks!
    Rush

    Hi Rishi,
    I have done the same task which you are doing now that is IT0077 inserting and modifying operations.
    Check the below parameters...
      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
                    EXPORTING
                      INFTY         = C_0077
                      NUMBER        = WA_0077_FR-PERNR
                      SUBTYPE       = WA_0077_FR-SUBTY
                      OBJECTID      = WA_0077_FR-OBJPS
                      LOCKINDICATOR = WA_0077_FR-SPRPS
                      VALIDITYEND   = WA_0077_FR-ENDDA
                      VALIDITYBEGIN = WA_0077_FR-BEGDA
                      RECORDNUMBER  = WA_0077_FR-SEQNR
                      RECORD        = WA_0077_FR
                      OPERATION     = C_MOD
                      TCLAS         = C_A
                      NOCOMMIT      = C_X
                    IMPORTING
                      RETURN        = R_OPER.
    Reward if useful.
    Thanks,
    Anil.G

  • HR_INFOTYPE_OPERATION ISSUE

    hi
    please give demo code about using HR_INFOTYPE_OPERATION for operation = 'LIS9' ,'COP'.
    thank you advance!

    Hi
    hope this code will help you.
    Pls reward if help.
    try to make use of FM
    'HR_INFOTYPE_OPERATION'
    and see the sample code:-
    https://www.sdn.sap.com/irj/sdn/wiki?path=/pages/viewpage.action&pageid=13160
    REPORT YBDC_NEW_586
    no standard page heading line-size 255.
    data: begin of i_upload occurs 0,
    pernr like pa0586-pernr,
    bedda(10) type c,
    ebdda(10) type c,
    pin01 like pa0586-pin01,
    pin02 like pa0586-pin01,
    pin03 like pa0586-pin01,
    pin04 like pa0586-pin01,
    pin05 like pa0586-pin01,
    pin06 like pa0586-pin01,
    pin07 like pa0586-pin01,
    pin08 like pa0586-pin01,
    pin09 like pa0586-pin01,
    pin11 like pa0586-pin01,
    pin12 like pa0586-pin01,
    pin13 like pa0586-pin01,
    pin14 like pa0586-pin01,
    pin16 like pa0586-pin01,
    pin17 like pa0586-pin01,
    pin18 like pa0586-pin01,
    pin19 like pa0586-pin01,
    pin20 like pa0586-pin01,
    pin21 like pa0586-pin01,
    pin22 like pa0586-pin01,
    pin23 like pa0586-pin01,
    pin24 like pa0586-pin01,
    pin25 like pa0586-pin01,
    ain01 like pa0586-ain01,
    ain02 like pa0586-ain01,
    ain03 like pa0586-ain01,
    ain04 like pa0586-ain01,
    ain05 like pa0586-ain01,
    ain06 like pa0586-ain01,
    ain07 like pa0586-ain01,
    ain08 like pa0586-ain01,
    ain09 like pa0586-ain01,
    ain11 like pa0586-ain01,
    ain12 like pa0586-ain01,
    ain13 like pa0586-ain01,
    ain14 like pa0586-ain01,
    ain16 like pa0586-ain01,
    ain17 like pa0586-ain01,
    ain18 like pa0586-ain01,
    ain19 like pa0586-ain01,
    ain20 like pa0586-ain01,
    ain21 like pa0586-ain01,
    ain22 like pa0586-ain01,
    ain23 like pa0586-ain01,
    ain24 like pa0586-ain01,
    ain25 like pa0586-ain01,
    end of i_upload.
    data: begin of p586 occurs 0,
    icode like pa0586-itc01,
    pinvt like pa0586-pin01,
    ainvt like pa0586-ain01,
    end of p586.
    data: p0586 like p0586 ,
    ia586 like pa0586 occurs 0 with header line,
    return like bapireturn1,
    pin_ainvt type pin_ainvt.
    S E L E C T I O N - S C R E E N D E F I N I T I O N *
    selection-screen begin of block b1 with frame title text-001.
    parameters: p_file like rlgrap-filename obligatory,
    p_begda like pa0586-begda obligatory,
    p_endda like pa0586-endda obligatory.
    selection-screen end of block b1.
    E V E N T H A N D L I N G - B E G I N *
    at selection-screen on value-request for p_file.
    perform get_file using p_file.
    START OF SELECTION - B E G I N *
    start-of-selection.
    data: lines like sy-index.
    *Getting the file data.
    perform upload using p_file.
    loop at i_upload.
    ia586-pernr = i_upload-pernr.
    ia586-endda = p_endda.
    ia586-begda = p_begda.
    perform col_row.
    perform do.
    append ia586.
    clear : ia586,p586.
    refresh : p586.
    endloop.
    loop at ia586.
    move-corresponding ia586 to p0586.
    CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
    EXPORTING
    NUMBER = p0586-pernr.
    CALL FUNCTION 'HR_INFOTYPE_OPERATION'
    EXPORTING
    INFTY = '0586'
    NUMBER = p0586-pernr
    LOCKINDICATOR = ''
    VALIDITYEND = p0586-endda
    VALIDITYBEGIN = p0586-begda
    RECORD = p0586
    OPERATION = 'INS' or MOD or DEL
    NOCOMMIT = ''
    tclas = 'A'
    IMPORTING
    RETURN = RETURN
    EXCEPTIONS
    OTHERS = 0.
    CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
    EXPORTING
    NUMBER = p0586-pernr.
    clear : p0586.
    endloop.
    *& Form GET_FILE
    Show "Open File" dialog box on F4
    -->P_W_FILE Name of the file selected by the user
    form get_file using p_w_file.
    call function 'KD_GET_FILENAME_ON_F4'
    CHANGING
    file_name = p_w_file
    EXCEPTIONS
    mask_too_long = 1
    others = 2.
    if sy-subrc ne 0.
    message id sy-msgid type sy-msgty number sy-msgno
    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    endif.
    endform. "GET_FILE
    *& Form UPLOAD
    Upload the file into the internal table for processing
    -->P_LOADFILE Name of file to upload
    form upload using p_loadfile.
    Read the file into the Internal Table
    CALL FUNCTION 'WS_UPLOAD'
    EXPORTING
    filename = p_loadfile
    filetype = 'DAT'
    TABLES
    data_tab = i_upload.
    if sy-subrc ne 0.
    message id sy-msgid type sy-msgty number sy-msgno
    with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
    endif.
    endform. "UPLOAD
    FORM col_row .
    if i_upload-ain01 is not initial or i_upload-pin01 is not initial.
    p586-icode = '01'.
    p586-pinvt = i_upload-pin01.
    p586-ainvt = i_upload-ain01.
    append p586.
    clear p586.
    endif.
    if i_upload-ain02 is not initial or i_upload-pin02 is not initial.
    p586-icode = '02'.
    p586-pinvt = i_upload-pin02.
    p586-ainvt = i_upload-ain02.
    append p586.
    clear p586.
    endif.
    if i_upload-ain03 is not initial or i_upload-pin03 is not initial.
    p586-icode = '03'.
    p586-pinvt = i_upload-pin03.

  • How to delimit records using FM HR_INFOTYPE_OPERATION  ( in background )

    Hi all,
    Has anyone used HR_INFOTYPE_OPERATION with OPERATION = 'LIS9' to delimit a record? I keep on getting 'A complex application error has occurred' error message. When I go into dialog mode = '2', the FM will go into the Overview Screen and I realized that the Delimit Date on the top right of the screen is not what I specify as the new record's ENDDA but the original record's ENDDA. Also I have to manually click on Delimit icon on the top left of the screen before it gets delimited.
    Question:
    How do I pass in the delimited date to HR_INFOTYPE_OPERATION? I put it in the RECORD-ENDDA field but it doesn't seem to work?
    Thanks

    rohan,
    why dont you use change mode (mod) and just change the default end date to the date you want the record delimited? that is also delimiting.
    is this requirement for batch job?

  • Leaving action infogroup and operations

    Hello experts,
    in leaving action which all infotypes we should delimit by operation LIS9 ? why it is not advicd to delimit actions(0000) and organization assignment(0001) infotypes using this?

    hi,
    It is not advised to delimit 0000 & 0001 bcoz u want to see/analyse/report the details of employees who have seperated. Master data is not deleted for employees who have left the company.
    SKR

  • Status LIS9 of the User interface MP000200 missing

    Hi All,
    While creating leaving action. System is giving error (Status LIS9 of the User interface MP000200 missing.
    Mentions below are my configuration.
    Infogroup
    COP 0001 Org assignment
    LIS9 0002 Personal Data
    LIS9 0006 address
    LIS9 0105 Communication
    And Personnel Action type are:- 0 0 0 MSN20 (Tick) (Tick) (Not tick)
    Let me know how to resolve it.
    Regard
    Ashish

    Hi,
    make sure that LIS9 should not be used to the Infotypes which are having Time  Constraint 1
    Check V_T582A for time constratints and also check V_T588D to remove the operation LIS9 forLeaving/ termination action.
    for your information
    Infotype 0002 should NEVER be delimited as part of the Leaving Action.
    The help text for the Operations field of the Info Group states the following:
    In the Leaving action, use the "delimit" (LIS9) operation to delimit records.
    Please remove the infotype 0002 from the info group, then run the leaving action, you will not find an error message
    The reason why you get the error is because the status LIS9 does not exist on MP000200 .
    You can see this via the menu painter via SE41.
    regards,
    mohammed
    Edited by: 0mohammed1 on Oct 14, 2011 1:51 PM

  • Program for Leaving Action..

    Dear All,
    We have created a leaving action with set of Infotypes and certain actions and we have to carry out this action for about 5,000 employees.
    Now user needs to have a certain program to carry out the action as it's not feasible to carry out manually for 5,000 employees.
    Now my qestions to you all is
    1. Do you have any Std Program which takes care of this
    2. IS their any Std Function Module/BAPI exists which can be used
    3. Do we need to write our own BTC/LSMW/etc
    Kindly suggest.
    FYI : I have already tried one program using the FM - HR_INFOTYPE_OPERATION but this FM is not working for Action - DELIMIT (LIS9) for various Info types so now wondering what to do next. Kindly suggest.
    Thanks and have a nice day ahead.
    Mit freundlichen Grüßen/Best regards,
    Mangalagi S V

    Dear All,
    Thanks to all those who have responded to this.
    Unfortunately I can't go for BDC also as I was told that they might add/delete certain info types for this particular action.
    In my program, I am reading table T588M for the action and taking all the infotypes and the related action into my own internal table, after that I am generating the dynamic internal table for each infotype and then reading the Infotype using HR_READ_INFOTYPE and proceeding for related operations using HR_INFOTYPE_OPERATION but this LIS9 was not working so I have to check out as Suresh suggested. Hope every things goes fine with my coding...!!, any way it looks to be big exercise and needs lots of testing.
    Thanks for your valuable inputs.
    Regards,
    Mangalagi S V

  • HR_MAINTAIN_MASTERDATA substitutions

    Hi Gurus,
    we are facing a problem using the FM HR_MAINTAIN_MASTERDATA to save substitutions. The problem is the FM doesn't delimit  the substituion if we enter a new one.
    For example, a substitution from 07.02.2011 to 13.02.2011, we try to book a new subtitution for the 09.02.2011. The FM delete the substitution from 07 to 13 and just matain the 09.02.2011.
    I have tried with the operation LIS9, MOD and INS. INS works as I have described before, MOD and LIS9 doesn't work (error: Complex error ...)
    This is very weird becuase sometime works, (10% of the times), but I didn't find anything different.
    In addition, I have tried to use the FM HR_INFOTYPE_OPERATION, but I dind't find the proper values to make it works.
    The same tests have been done for absences with op=INS, and they are delimited.
    Do you know a way to delimit the IT2003?
    Thank you and regards,
    Rodolfo

    A behaviour that has been observed was that, after infotype 0185 was saved, the function module throws me back to infotype 0000, citing, "No authorization to maintain XYZ exists".  Data that I had populated to the screen, either via the FM or by manual input were cleared.  If I skip the next 4 screens, I'll arrive at the Infotype after XYZ, with the data populated.  Subsequent infotypes also have their data filled in.
    Once I complete the sequence, the personnel record will be created.  Upon examination, the frist 4 screens that were skipped in the 2nd pass contains data that were entered in the 1st pass.
    My question, as posted in the original post, is why infotype XYZ is triggered by the function module, as the staffing account does not hae access for it.  If I repeat the process using PA40, the infotype is skipped accordingly.
    Any help would be appreciated.
    Thank you,
    James Wong,

  • Delimit custom infotype.

    Hi All,
    I have created a custom infotype and it  has time constraint 3.
    Now i wat to delimit the records from infotype.
    I have used FM HR_INFOTYPE_OERATION using operation 'LIS9'. But it doesn't work for me.
    Can anybdy please let me how can i do this.
    Thanks

    Hi,
    First lock the employee number before callin HR_INFOTYPE_operation using function module BAPI_EMPLOYEE_ENQUEUE
    then call HR_INFOTYPE_OPERATION
    after that unlock the employee using function module BAPI_EMPLOYEE_DEQUEUE
    and also try to pass all exporting parameters to FM HR_INFOTYPE_OPERATION
    Regards
    Krishna

  • FM for delimit the infotype record

    Hi
    I'm new to HR-ABAP.I need to develop function modules to delimit the some infotype records (eg: 0167,0168,0014,2006 etc)
    Presently i developed the function module that has following source code.
    CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
        EXPORTING
          number        = empno
    CALL FUNCTION 'HR_READ_INFOTYPE'
        EXPORTING
         tclas                 = 'A'
          pernr                 = empno
          infty                 = '0167'
          begda                 = delimitdate
          endda                 = delimitdate
      BYPASS_BUFFER         = ' '
      LEGACY_MODE           = ' '
    IMPORTING
      SUBRC                 =
        TABLES
          infty_tab             = itab "itab is of the structure p0167
    enddate = itab-endda.
    MOVE delimitdate TO itab-endda.
    CALL FUNCTION 'HR_INFOTYPE_OPERATION'
        EXPORTING
          infty                  = '0167'
          number                 = empno
          subtype                = itab-subty
          objectid               = itab-objps
          lockindicator          = itab-sprps
          validityend            = enddate
          validitybegin          = itab-begda
          recordnumber           = itab-seqnr
          record                 = itab
          operation              = 'LIS9'
          tclas                  = 'A'
          dialog_mode            = '0'
      NOCOMMIT               =
      VIEW_IDENTIFIER        =
      SECONDARY_RECORD       =
       IMPORTING
         return                 = return
      KEY                    =
    CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
        EXPORTING
          number        = empno
    when i use 'MOD' operation in FM 'HR_INFOTYPE_OPERATION' that FM runs perfectly.it changes the enddate to delimit date in the table PA0167.
    But, when i use 'LIS9' (delimiting) operation FM is throwing following error message
    "E PG  428 A complex application error has occurred".
    I need help regarding this error statement.can i use 'MOD' operation to delimit the records (time constraint of most of the infotype record to be delimited is 2).In which case we use 'LIS9'??
    Also any SAP function modules for delimiting IT2006 infotypes????
    Pls suggest.
    Thank u,
    shrinivas
    Message was edited by: Shrinivas

    For 167 & 168 have you looked at HR_BEN_TERMINATE_HEALTH_PLAN & HR_BEN_TERMINATE_INSURE_PLAN?
    The error message you got is actually mapped to (00)344 ie "No batch input data for screen & &"
    For the delimit operation, you probably,need to pass the delimit date separately..
    I have a feeling this function call cannot be used for the delimit operation le 'LIS9'.AS the delimit date is usually entered on a pop-up box when you do it via PA30.
    ~Suresh

  • BAPI to delimit Infotype 0017.

    Hi All
    Is there any BAPI to delimit the Infotype 0017? Is yes, please provide me with a sample code of what all values to pass.
    I tried searching on the forums but couldn't get it.
    Thanks in advance.
    Harsh

    Hi,
    1.Check the time Constraint of infotype 17.
    2.You can use Function Module -
        call function 'HR_INFOTYPE_OPERATION'
             exporting
                  infty         = '0017'
                  number        = employeenumber
                  validityend   =   validityend ( delimit date
                  validitybegin =  validitybegin
                  record        = p0017 (infotype 17 record)
                  operation     = 'MOD'
                      tclas         = 'A'
             importing
                  return        = ls_return
                    key           = lv_emplcommkey.
             exceptions
                  others        = 0.
    Or operation 'LIS9'
    Regards,
    Manoj.

  • Data upload into infotype 2003

    Hiii
       I have a customer requirement to upload flat file containing
    below fileds into IT2003
    PersNo,
    Begindate,
    Endate,
    Daily work schedule.
    currently they are using LSMW.
    Can i use Function Module  HR_INFOTYPE_OPERATION'
    to upload in to IT2003
    Regards,
    nazi

    Yes. for data which u have for Upload ,U can surely use the FM HR_INFOTYPE_OPERATION
    with Operation  options :
    COP     Copy
    DEL     Delete
    DIS     Display
    EDQ     Lock/unlock
    INS     Create
    LIS9     Delimit
    MOD     Change
    INSS     Create for Actions is not converted to Change
    Apart this u will be reqd to Use  BAPI_EMPLOYEE_ENQUEUE : so that the records stored for this
    person cannot be accessed.
    Once done with operation ,end it with BAPI_EMPLOYEE_DEQUEUE.
    Regds,
    AS

  • Update PA0008 in sap abap hr

    Hi Experts,
    I want to update the existing record in table PA0008. In table, for one existing pernr, it has wage types(LGA01). I want to add one or two wage for that existing pernr without effecting the  existing wage type and other values.
    How to get this? Is there any function module to update the PA0008 table?
    Thanks in advanced..
    Regards,
    Arindam Samanta.

    Hi Arindam.
    Claudia is right. To Insert, Update, Delete a HR infotype entry you can use function Module 'HR_INFOTYPE_OPERATION' with operations INS, UPD, DEL.
    To enque/deque the personal number I use the Function Modules 'HR_EMPLOYEE_ENQUEUE' and 'HR_EMPLOYEE_DEQUEUE'.
    But before you can update the existing entry, you have to check how much wagetypes (LGAxx) are already filled to add the new wagetype at the right position.
    Regards
    Michael

  • Update Infotype 24 with Qualification

    Hi Friends,
    I have to update infotype 24(qualifications).  I am using function module Rh_insert_infty_1001_ext to update but this function only creates a record in hrp1001(i.e. OM side) but does not create any record in PA side i.e.  infotype 24.
    Is there a different way to update infotype 24?
    Thanks
    Nazish

    Hello Nazish,
    check this  HR_INFOTYPE_OPERATION with operation = 'COP'
    For PD tables,FM - BAPI_HRMASTER-SAVE_REPL_MULT is used and after PD tables are updated , for PA Tables use
    FM - HR_INFOTYPE_OPERATION
    Check FM - RH_INSERT_INFTY_1001_EXT  and also FM - BAPI_HRMASTER-SAVE_REPL_MULT
    regards

Maybe you are looking for