Professional Documents
Culture Documents
record-endda to tendda.
data: wgtype(20),
amount(20).
* Get Personnel Data
PERFORM GET_PERS_DATA.
clear: pos.
LOOP AT itabn where endda = '99991231'.
pos = pos + 1.
ENDLOOP.
* Move to new line
pos = pos + 1.
* Setting position in Table Control
concatenate 'Q0008-LGART(' pos ')' into wgtype.
concatenate 'Q0008-BETRG(' pos ')' into amount.
perform bdc_dynpro
perform bdc_field
perform bdc_field
*
*perform bdc_field
*
perform bdc_field
perform bdc_field
perform bdc_dynpro
perform bdc_field
perform bdc_field
*
perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
*perform bdc_field
*
perform bdc_field
record-lgart.
*perform bdc_field
using 'Q0008-BETRG(07)'
*
'
500'.
perform bdc_field
using amount
record-amount.
perform bdc_dynpro
using 'MP000800' '2040'.
perform bdc_field
using 'BDC_CURSOR'
'P0008-BEGDA'.
perform bdc_field
using 'BDC_OKCODE'
'=UPD'.
perform bdc_field
using 'P0008-BEGDA'
*
'01.04.2010'.
tbegda.
perform bdc_field
using 'P0008-ENDDA'
*
'31.12.9999'.
tendda.
*perform bdc_field
using 'P0008-TRFAR'
*
'SK'.
*perform bdc_field
using 'P0008-BSGRD'
*
'100.00'.
*perform bdc_field
using 'P0008-TRFGB'
*
'SK'.
*perform bdc_field
using 'P0008-DIVGV'
*
'100.00'.
*perform bdc_field
using 'P0008-TRFGR'
*
'JT MGR'.
*perform bdc_field
using 'P0008-TRFST'
*
'GE'.
*perform bdc_field
using 'P0008-ANCUR'
*
'INR'.
*perform bdc_field
using 'Q0008-IBBEG'
*
'25.05.2010'.
*perform bdc_field
using 'P0008-WAERS'
*
'INR'.
*perform bdc_transaction using 'PA30'.
*
*
*
*
*
*
*
*
*
*
*
*
ENDFORM.
"BDC_DYNPRO
*&---------------------------------------------------------------------*
*&
Form BDC_FIELD
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
FORM BDC_FIELD USING FNAM FVAL.
* IF FVAL <> NODATA.
CLEAR BDCTAB.
BDCTAB-FNAM = FNAM.
BDCTAB-FVAL = FVAL.
APPEND BDCTAB.
* ENDIF.
ENDFORM.
"BDC_FIELD
*&---------------------------------------------------------------------*
*&
Form UPLOAD
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
FORM UPLOAD .
CALL FUNCTION 'UPLOAD'
EXPORTING
FILENAME
FILETYPE
TABLES
DATA_TAB
EXCEPTIONS
CONVERSION_ERROR
FILE_OPEN_ERROR
FILE_READ_ERROR
INVALID_TYPE
NO_BATCH
UNKNOWN_ERROR
= READFILE
= 'DAT'
= record
=
=
=
=
=
=
1
2
3
4
5
6
INVALID_TABLE_WIDTH
GUI_REFUSE_FILETRANSFER
CUSTOMER_ERROR
OTHERS
ENDFORM.
=
=
=
=
7
8
9
10.
" UPLOAD
*&---------------------------------------------------------------------*
*&
Form OPEN_GROUP
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
FORM OPEN_GROUP .
CALL FUNCTION 'BDC_OPEN_GROUP'
EXPORTING
CLIENT
=
GROUP
=
KEEP
=
USER
=
EXCEPTIONS
CLIENT_INVALID
=
DESTINATION_INVALID =
GROUP_INVALID
=
GROUP_IS_LOCKED
=
HOLDDATE_INVALID
=
INTERNAL_ERROR
=
QUEUE_ERROR
=
RUNNING
=
SYSTEM_LOCK_ERROR =
USER_INVALID
=
OTHERS
=
.
SY-MANDT
sy-uname "'HR_DELIMT'
'X'
SY-UNAME
1
2
3
4
5
6
7
8
9
10
11
ENDFORM.
" OPEN_GROUP
*&---------------------------------------------------------------------*
*&
Form GET_PERS_DATA
*&---------------------------------------------------------------------*
*
text
*----------------------------------------------------------------------*
FORM GET_PERS_DATA .
CLEAR : itab1,itab7,itab8,itabn.
REFRESH : itab1,itab7,itab8,itabn.
CALL FUNCTION 'RP_FILL_WAGE_TYPE_TABLE_EXT'
EXPORTING
begda
= record-begda "i0008-begda
endda
= '99991231'
infty
= '0008'
tclas
= 'A'
pernr
= record-pernr "i0008-pernr
TABLES
pp0001
= itab1
pp0007
= itab7
pp0008
= itab8
ppbwla
= itabn
EXCEPTIONS
error_at_indirect_evaluation = 1
OTHERS
= 2.
ENDFORM.
" GET_PERS_DATA