2020 Jul 03 6:41 AM
Hi all.
I want to update IT0021 using standard Function module HR_INFOTYPE_OPERATION with text file.
Any help would be appreciated.
thanks.
2020 Jul 03 8:10 AM
2020 Jul 03 11:04 AM
Hi nawshathj31,
You mean the infotype texts?
If so, I recommend class CL_HRPA_TEXT_CLUSTER.
But you still have to make settings in Customizing for the infotype.
Maybe it'll help you solve your problem.
regards
Andy
2020 Jul 03 11:53 AM
HR_infotype_operation not working. i added below code. But still updation not working
please help with that.
REPORT ZBDC_SCN1.
infotypes : 0021,0412.
*---Types declarations
TYPES: BEGIN OF TY_pa0021,
PERNR TYPE PERNR-PERNR,"Personnel number
SUBTY TYPE SUBTY, "Subtype
ENAME TYPE ENAME, "Employee name
DESGN TYPE DESGN,"Designition
STRAS TYPE STRAS, "Street and House Number
LOCAT TYPE LOCAT, "2nd Address Line
ORT01 TYPE ORT01, "City
END OF TY_pa0021.
DATA: T_FILE TYPE STANDARD TABLE OF TY_pa0021,
WA_FILE TYPE TY_pa0021.
DATA: fs_return TYPE bapireturn1, " Structure to hold Messages
G_FILE TYPE IBIPPARMS-PATH.
selection-screen begin of block B3 with frame title TEXT-003.
parameters : P_FILE1 type STRING modif id M2. "" like rlgrap-filename modif id M2.
selection-screen end of block B3.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR P_File1.
CALL FUNCTION 'F4_FILENAME'
EXPORTING
PROGRAM_NAME = SYST-CPROG
DYNPRO_NUMBER = SYST-DYNNR
FIELD_NAME = 'P_File1'
IMPORTING
FILE_NAME = G_File.
P_File1 = G_File.
START-OF-SELECTION.
*---Fetching Text file from Desktop
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
FILENAME = P_File1
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = 'X'
* HEADER_LENGTH = 0
* READ_BY_LINE = 'X'
* DAT_MODE = ' '
* CODEPAGE = ' '
* IGNORE_CERR = ABAP_TRUE
* REPLACEMENT = '#'
* CHECK_BOM = ' '
* VIRUS_SCAN_PROFILE =
* NO_AUTH_CHECK = ' '
* ISDOWNLOAD = ' '
* IMPORTING
* FILELENGTH =
* HEADER =
TABLES
DATA_TAB = T_FILE
* CHANGING
* ISSCANPERFORMED = ' '
EXCEPTIONS
FILE_OPEN_ERROR = 1
FILE_READ_ERROR = 2
NO_BATCH = 3
GUI_REFUSE_FILETRANSFER = 4
INVALID_TYPE = 5
NO_AUTHORITY = 6
UNKNOWN_ERROR = 7
BAD_DATA_FORMAT = 8
HEADER_NOT_ALLOWED = 9
SEPARATOR_NOT_ALLOWED = 10
HEADER_TOO_LONG = 11
UNKNOWN_DP_ERROR = 12
ACCESS_DENIED = 13
DP_OUT_OF_MEMORY = 14
DISK_FULL = 15
DP_TIMEOUT = 16
OTHERS = 17
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
loop at T_FILe into WA_FILE.
CALL FUNCTION 'BAPI_EMPLOYEE_ENQUEUE'
EXPORTING
NUMBER = P0021-PERNR
IMPORTING
RETURN = FS_RETURN
.
IF FS_RETURN-id NE space.
WRITE: / 'Enqueue failed'.
exit.
ENDIF.
*------------------------------------------------------------------------------*
" CALL HR_INFOTYPE_OPERATION FM
*------------------------------------------------------------------------------*
CALL FUNCTION 'HR_INFOTYPE_OPERATION'
EXPORTING
INFTY = '0021'
NUMBER = P0021-PERNR
SUBTYPE = P0021-SUBTY
* OBJECTID =
* LOCKINDICATOR =
* VALIDITYEND =
* VALIDITYBEGIN =
* RECORDNUMBER =
RECORD = P0021
OPERATION = 'MOD'
* TCLAS = 'A'
DIALOG_MODE = '1'
* NOCOMMIT =
* VIEW_IDENTIFIER =
* SECONDARY_RECORD =
IMPORTING
RETURN = FS_RETURN.
" KEY = KEY1.
if FS_RETURN-id eq SPACE.
append WA_FILE TO T_FILE.
ENDIF.
CALL FUNCTION 'BAPI_EMPLOYEE_DEQUEUE'
EXPORTING
NUMBER = P0021-PERNR
IMPORTING
RETURN = FS_RETURN.
ENDLOOP.