BDC Code
-
Upload
karthik-ram -
Category
Documents
-
view
218 -
download
0
Transcript of BDC Code
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 1/24
report zhr_kar1_bdc_emp
no standard page heading line-size 255.
type-pools: truxs.
types:begin of zemp,
pernr type pspar-pernr, begda type string, "p0002begda,
endda type string, "p0002endda,
massn type massn,
massg type massg,
erks type erks,
persg type persg,
persk type persk,
anrex type anrex,
nachn type nachn,
!orna type !orna,
gbpas type gbpas,
sprsl type sprsl,
natio type natio, end of zemp.
data: it_tab type table of zemp,
a type zemp,
field_name like dynpread-fieldname,
it_tab1 type table of bdcdata,
a1 type bdcdata,
it_bdcmsg type table of bdcmsgcoll,
_struct type truxs_t_text_data.
parameters: z_excel"12#$ type c obligatory.
at selection-screen on !alue-re%uest for z_excel.
call function &'(_')*++&
exporting
program_name / syst-cprog
dynpro_number / syst-dynnr
field_name / field_name
importing
file_name / z_excel .
call function &0+0_34+0_*6_03_67&
exporting* I_FIELD_SEPERATOR =
* I_LINE_HEADER =
i_tab_ra_data / _struct
i_filename / z_excel
tables
i_tab_con!erted_data / it_tab
* EXCEPTIONS
* CONVERSION_FAILED =
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 2/24
* OTHERS = 2
.
if sy-subrc 89 .
* !ESSAE ID S#$!SID T#PE S#$!ST# N%!&ER S#$!SNO
* 'ITH S#$!SV S#$!SV2 S#$!SV( S#$!SV)
endif.
*+n-.de bd/e
start-of-selection.
loop at it_tab into a.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_=63&
&75>-7+&.
perform bdc_field using &;<_3?3<+& &@&.
perform bdc_field using &75>-7+&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
&&.
perform bdc_field using &;<_=63&
&05#26-)0+0"1$&.
perform bdc_field using &75>-6+*+"1$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &7& &2&.
perform bdc_field using &;<_=63&
&7-66>&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &767-7+&
a-pernr.
perform bdc_field using &7-;+><&
a-begda.perform bdc_field using &7-+<<&
a-endda.
perform bdc_field using &7-66&
a-massn.
perform bdc_field using &7-66>&
a-massg.
perform bdc_field using &767-B+?6&
a-erks.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 3/24
perform bdc_field using &767-7+6>&
a-persg.
perform bdc_field using &767-7+6?&
a-persk.
perform bdc_dynpro using &72& &21&.
perform bdc_field using &;<_=63&
&C2->;76&.perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &72-;+><&
a-begda.
perform bdc_field using &72-+<<&
a-endda.
perform bdc_field using &C2-+&
a-anrex.
perform bdc_field using &72-D&
a-nachn.
perform bdc_field using &72-43&
a-!orna.
perform bdc_field using &C2->;76& a-gbpas.
perform bdc_field using &72-676*&
a-sprsl.
perform bdc_field using &72-0)3&
a-natio.
perform bdc_dynpro using &71& &2&.
perform bdc_field using &;<_3?3<+&
&@+;?&.
perform bdc_field using &;<_=63&
&71-;+><&.
perform bdc_dynpro using &67*6731& &2&.
perform bdc_field using &;<_3?3<+&
&/E+6&.
call transaction &7F& using it_tab1 mode && update &6&
messages into it_bdcmsg.
refresh it_tab1.
endloop.
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
*1 F/3 &DC_D#NPRO
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* 4e4*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* $$5P_067 4e4
* $$5P_066 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
form bdc_dynpro using program dynpro.
clear a1.
a1-program / program.
a1-dynpro / dynpro.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 4/24
a1-dynbegin / &&.
append a1 to it_tab1.
endform. " &DC_D#NPRO
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
*1 F/3 &DC_FIELD
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$** 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* $$5P_0280 4e4
* $$5P_'A_&EDA 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
form bdc_field using fnam f!al.
clear a1.
a1-fnam / fnam.
a1-f!al / f!al.
append a1 to it_tab1.
endform. " &DC_FIELD
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
*1 Rep/4 9HR_:AR2_&DC_E!P
*1
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
*1
*1
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
report zhr_kar2_bdc_emp.
type-pools: truxs.
types: begin of zstruct,
pernr type pspar-pernr,
begda type string, "p0002begda,
endda type string, "p0002endda,
massn type massn,
massg type massg,
erks type erks,
persg type persg,
persk type persk, anrex type anrex,
nachn type nachn,
!orna type !orna,
gbpas type gbpas,
sprsl type sprsl,
natio type natio,
end of zstruct.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 5/24
types:begin of st_!alid,
pernr type rp5g-pernr,
end of st_!alid.
data: it_file type table of zstruct,
a_file type zstruct,
it_file1 type table of bdcdata, a_file1 type bdcdata,
field_name like dynpread-fieldname,
_struct type truxs_t_text_data,
it_bdcmsg type table of bdcmsgcoll,
it_!alid type table of st_!alid,
a_!alid type st_!alid.
parameters: p_file"12#$ type c obligatory.
parameters : p_create radiobutton group rb1.
parameters : p_update radiobutton group rb1.
at selection-screen on !alue-re%uest for p_file.
call function &'(_')*++&
exporting
program_name / syst-cprog
dynpro_number / syst-dynnr
field_name / field_name
importing
file_name / p_file.
call function &0+0_34+0_*6_03_67&
exporting
* I_FIELD_SEPERATOR =
* I_LINE_HEADER =
i_tab_ra_data / _struct
i_filename / p_file
tables
i_tab_con!erted_data / it_file
* EXCEPTIONS
* CONVERSION_FAILED =
* OTHERS = 2
.
if sy-subrc 89 .* !ESSAE ID S#$!SID T#PE S#$!ST# N%!&ER S#$!SNO
* 'ITH S#$!SV S#$!SV2 S#$!SV( S#$!SV)
endif.
* C/ea4+n
start-of-selection.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 6/24
if p_create / && .
loop at it_file into a_file.
* PERFOR! bd_d;np/ %SIN <SAP!P70A< <000<
* PERFOR! bd_+e-d %SIN <&DC_O:CODE<
* <=INS<* PERFOR! bd_+e-d %SIN <RP70$PERNR<
* >a_+-e$pe/n/
* PERFOR! bd_+e-d %SIN <&DC_C%RSOR<
* <T7?2S$ITEXT@0<
* PERFOR! bd_+e-d %SIN <RP70$SELEC@0<
* <X<
* PERFOR! bd_+e-d %SIN <RP70$TI!R6<
* <X<
* PERFOR! bd_d;np/ %SIN <!P000000< <2000<
* PERFOR! bd_+e-d %SIN <&DC_C%RSOR<
* <PSPAR$PERS:<
* PERFOR! bd_+e-d %SIN <&DC_O:CODE<
* <=%PD<* PERFOR! bd_+e-d %SIN <PSPAR$PERNR<
* >a_+-e$pe/n/
* PERFOR! bd_+e-d %SIN <P0000$&EDA<
* >a_+-e$begda
* PERFOR! bd_+e-d %SIN <P0000$ENDDA<
* >a_+-e$endda
* PERFOR! bd_+e-d %SIN <P0000$!ASSN<
* >a_+-e$3aBBn
* PERFOR! bd_+e-d %SIN <P0000$!ASS<
* >a_+-e$3aBBg
* PERFOR! bd_+e-d %SIN <PSPAR$'ER:S<
* >a_+-e$>e/B
* PERFOR! bd_+e-d %SIN <PSPAR$PERS<
* >a_+-e$pe/Bg
* PERFOR! bd_+e-d %SIN <PSPAR$PERS:<
* >a_+-e$pe/B
* PERFOR! bd_d;np/ %SIN <!P000200< <200<
* PERFOR! bd_+e-d %SIN <&DC_C%RSOR<
* <P0002$NATIO<
* PERFOR! bd_+e-d %SIN <&DC_O:CODE<
* <=%PD<
* PERFOR! bd_+e-d %SIN <P0002$&EDA<
* >a_+-e$begda
* PERFOR! bd_+e-d %SIN <P0002$ENDDA<
* >a_+-e$endda* PERFOR! bd_+e-d %SIN <0002$ANREX<
* >a_+-e$an/e
* PERFOR! bd_+e-d %SIN <P0002$NACHN<
* >a_+-e$nan
* PERFOR! bd_+e-d %SIN <P0002$VORNA<
* >a_+-e$/na
* PERFOR! bd_+e-d %SIN <0002$&PAS<
* >a_+-e$gbpaB
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 7/24
* PERFOR! bd_+e-d %SIN <P0002$SPRSL<
* >a_+-e$Bp/B-
* PERFOR! bd_+e-d %SIN <P0002$NATIO<
* >a_+-e$na4+
* PERFOR! bd_d;np/ %SIN <!P00000< <2000<
* PERFOR! bd_+e-d %SIN <&DC_O:CODE<
* <GE&C:<* PERFOR! bd_+e-d %SIN <&DC_C%RSOR<
* <P000$&EDA<
* PERFOR! bd_d;np/ %SIN <SAPLSPO< <0200<
* PERFOR! bd_+e-d %SIN <&DC_O:CODE<
* <=#ES<
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
a_file-pernr.
perform bdc_field using &;<_=63&
&05#26-)0+0"1$&.perform bdc_field using &75>-6+*+"1$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &7& &2&.
perform bdc_field using &;<_=63&
&767-7+6?&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &7-;+><&
&1A.F.21A&.
perform bdc_field using &7-66&
&1&.
perform bdc_field using &767-B+?6&
&1&.
perform bdc_field using &767-7+6>&
a_file-persg.
perform bdc_field using &767-7+6?&
a_file-persk.
perform bdc_dynpro using &72& &21&.
perform bdc_field using &;<_=63&
&C2->;76&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &72-;+><& &1A.F.21A&.
perform bdc_field using &72-+<<&
&F1.12.GGGG&.
perform bdc_field using &C2-+&
&r.&.
perform bdc_field using &72-D&
a_file-nachn.
perform bdc_field using &72-43&
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 8/24
a_file-!orna.
perform bdc_field using &C2->;76&
a_file-gbpas.
perform bdc_field using &72-676*&
&+&.
perform bdc_dynpro using &71& &2&.
perform bdc_field using &;<_3?3<+& &@++<&.
perform bdc_field using &;<_=63&
&71-;+><&.
perform bdc_dynpro using &67*6731& &2&.
perform bdc_field using &;<_3?3<+&
&/E+6&.
*pe//3 bd_4/anBa4+n .B+ng <PA(0<
call transaction &7F& using it_file1 mode && update &6&
messages into it_bdcmsg.
refresh it_file1.
endloop.
elseif p_update / &x& .
select pernr from pa2 into table it_!alid for all entries in it_file
here pernr / it_file-pernr.
loop at it_file into a_file.
read table it_!alid into a_!alid ith key pernr / a_file-pernr.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
a_file-pernr.
perform bdc_field using &;<_=63&
&05#26-)0+0"1$&.
perform bdc_field using &75>-6+*+"1$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &7& &2&.
perform bdc_field using &;<_=63&
&767-7+6?&. perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &7-;+><&
a_file-begda.
perform bdc_field using &7-66&
a_file-massn.
perform bdc_field using &7-66>&
a_file-massg.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 9/24
perform bdc_field using &767-B+?6&
a_file-erks.
perform bdc_field using &767-7+6>&
a_file-persg.
perform bdc_field using &767-7+6?&
a_file-persk.
perform bdc_dynpro using &72& &21&. perform bdc_field using &;<_=63&
&72-0)3&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &72-;+><&
a_file-begda.
perform bdc_field using &72-+<<&
a_file-endda.
perform bdc_field using &C2-+&
a_file-anrex.
perform bdc_field using &72-D&
a_file-nachn.
perform bdc_field using &72-43& a_file-!orna.
perform bdc_field using &C2->;76&
a_file-gbpas.
perform bdc_field using &72-676*&
a_file-sprsl.
perform bdc_field using &72-0)3&
a_file-natio.
perform bdc_dynpro using &71& &2&.
perform bdc_field using &;<_3?3<+&
&@+;?&.
perform bdc_field using &;<_=63&
&71-;+><&.
perform bdc_dynpro using &67*6731& &2&.
perform bdc_field using &;<_3?3<+&
&/E+6&.
call transaction &7F& using it_file1 mode && update &6&
messages into it_bdcmsg.
refresh it_file1.
endloop.
endif.
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
*1 F/3 &DC_D#NPRO
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* $$5P_0( 4e4
* $$5P_0(? 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 10/24
form bdc_dynpro using program dynpro.
clear a_file1.
a_file1-program / program.
a_file1-dynpro / dynpro.
a_file1-dynbegin / &&.
append a_file1 to it_file1.
endform. " &DC_D#NPRO
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
*1 F/3 &DC_FIELD
*1$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* $$5P_072 4e4
* $$5P_07( 4e4
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
form bdc_field using fnam f!al.
clear a_file1.
a_file1-fnam / fnam.
a_file1-f!al / f!al. append a_file1 to it_file1.
endform. " &DC_FIELD
+730 HD_?_;<F no standard page heading line-size 255.
type-pools : truxs.
types: begin of zstruct_cre, empno type pspar-pernr,
earea type pspar-erks,
egroup type pspar-persg,
esubgrp type pspar-persk,
title type p2-titel,
lname type p2-nachn,
fname type p2-!orna,
bdate type %2-gbpas,
langu type p2-sprsl,
nation type p2-natio,
end of zstruct_cre.
types: begin of zstruct_upd,
llname type p2-nachn,
ffname type p2-!orna,
end of zstruct_upd.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 11/24
parameters : pa_file like rlgrap-filename.
parameters : p_create radiobutton group rb1.
parameters : p_update radiobutton group rb1.
data g_ra_data type truxs_t_text_data.
data itab_cre type table of zstruct_cre.
data a_cre type zstruct_cre.
data itab_upd type table of zstruct_upd.
data a_upd type zstruct_upd.
data it_bdcdata type table of bdcdata.
data a_bdcdata type bdcdata.
data it_msglog type table of bdcmsgcoll.
data a_msglog type bdcmsgcoll.
types: begin of zstruct_log,
msgid type bdcmsgcoll-msgid,
msgnr type bdcmsgcoll-msgnr,
msg!1 type bdcmsgcoll-msg!1,
end of zstruct_log.
data: it_msgal! type table of zstruct_log,
a_msgal! type zstruct_log.
at selection-screen on !alue-re%uest for pa_file. " F! .Bed 4 ge4 F) e-p
+n +np.4 pa/a3e4e/
call function &'(_')*++&
exporting
field_name / &7_')*+&
importing
file_name / pa_file.
. " F)_FILENA!E
start-of-selection.
if p_create / &&.
call function &0+0_34+0_*6_03_67&
exporting
* I_FIELD_SEPERATOR = * I_LINE_HEADER =
i_tab_ra_data / g_ra_data
i_filename / pa_file
tables
i_tab_con!erted_data / itab_cre.
* EXCEPTIONS
* CONVERSION_FAILED =
* OTHERS = 2
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 12/24
.
if sy-subrc / .
message &+7*3E++ +3<6 =7*3<+< 6=+66'=**E& type &)&.
* !ESSAE ID S#$!SID T#PE S#$!ST# N%!&ER S#$!SNO
* 'ITH S#$!SV S#$!SV2 S#$!SV( S#$!SV)
endif.
*+n-.de bd/e
loop at itab_cre into a_cre.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
&&.
perform bdc_field using &;<_=63&
&05#26-)0+0"1$&. perform bdc_field using &75>-6+*+"1$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &7& &2&.
perform bdc_field using &;<_=63&
&767-7+6?&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &767-7+&
a_cre-empno.
perform bdc_field using &7-;+><&
&1.1.21A&.
perform bdc_field using &7-+<<&
&F1.12.GGGG&.
perform bdc_field using &7-66&
&1&.
perform bdc_field using &767-B+?6&
a_cre-earea.
perform bdc_field using &767-7+6>&
a_cre-egroup.
perform bdc_field using &767-7+6?&
a_cre-esubgrp.
perform bdc_dynpro using &72& &21&.
perform bdc_field using &;<_=63& &C2->;76&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &72-;+><&
&1.1.21A&.
perform bdc_field using &72-+<<&
&F1.12.GGGG&.
perform bdc_field using &C2-+&
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 13/24
a_cre-title.
perform bdc_field using &72-D&
a_cre-lname.
perform bdc_field using &72-43&
a_cre-fname.
perform bdc_field using &C2->;76&
a_cre-bdate. perform bdc_field using &72-676*&
a_cre-langu.
perform bdc_field using &72-0)3&
a_cre-nation.
perform bdc_dynpro using &71& &2&.
perform bdc_field using &;<_3?3<+&
&@+;?&.
perform bdc_field using &;<_=63&
&71-;+><&.
perform bdc_dynpro using &67*6731& &2&.
perform bdc_field using &;<_3?3<+&
&/3&.
perform bdc_dynpro using &71& &2&. perform bdc_field using &;<_=63&
&71-;+><&.
perform bdc_field using &;<_3?3<+&
&@&.
perform bdc_field using &71-;+><&
&1.1.21A&.
perform bdc_field using &71-+<<&
&F1.12.GGGG&.
perform bdc_field using &71-;?6&
&<2&.
perform bdc_dynpro using &71& &2&.
perform bdc_field using &;<_=63&
&71-;+><&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &71-;+><&
&1.1.21A&.
perform bdc_field using &71-+<<&
&F1.12.GGGG&.
perform bdc_field using &71-;?6&
&<2&.
perform bdc_field using &71-4<6?1&
&1&.
perform bdc_dynpro using &7A& &21&.
perform bdc_field using &;<_3?3<+& &@+;?&.
perform bdc_field using &;<_=63&
&7A-;+><&.
*pe//3 bd_4/anBa4+n .B+ng <PA(0<
*pe//3 -Be_g/.p
call transaction &7F& using it_bdcdata mode && update &6& messages in
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 14/24
to it_msglog.
refresh it_bdcdata.
endloop.
loop at it_msglog into a_msglog.
a_msgal!-msgid / a_msglog-msgid.
a_msgal!-msgnr / a_msglog-msgnr.
a_msgal!-msg!1 / a_msglog-msg!1. append a_msgal! to it_msgal!.
clear: a_msgal!, a_msglog.
endloop.
elseif p_update / &&.
call function &0+0_34+0_*6_03_67&
exporting
* I_FIELD_SEPERATOR = * I_LINE_HEADER =
i_tab_ra_data / g_ra_data
i_filename / pa_file
tables
i_tab_con!erted_data / itab_upd.
* EXCEPTIONS
* CONVERSION_FAILED =
* OTHERS = 2
.
if sy-subrc / .
* !ESSAE <E!PLO#EE RECORDS %PLOADED S%CCESSF%LL#< T#PE <I<
* !ESSAE ID S#$!SID T#PE S#$!ST# N%!&ER S#$!SNO
* 'ITH S#$!SV S#$!SV2 S#$!SV( S#$!SV)
endif.
loop at itab_upd into a_upd.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
&A1A2AF&.
perform bdc_field using &;<_=63& &05#26-)0+0"F$&.
perform bdc_field using &75>-6+*+"F$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &72& &21&.
perform bdc_field using &;<_=63&
&72-43&.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 15/24
perform bdc_field using &;<_3?3<+&
&=7<&.
perform bdc_field using &72-;+><&
&2(.F.1GG2&.
perform bdc_field using &72-+<<&
&F1.12.GGGG&.
perform bdc_field using &C2-+& &r.&.
perform bdc_field using &72-D&
a_upd-llname.
perform bdc_field using &72-43&
a_upd-ffname.
perform bdc_field using &C2->;76&
&2(.F.1GG2&.
perform bdc_field using &72-676*&
&+&.
perform bdc_field using &72-0)3&
&)&.
*pe//3 bd_4/anBa4+n .B+ng <PA(0<
*pe//3 -Be_g/.p
call transaction &7F& using it_bdcdata mode && update &6& messages in
to it_msglog.
refresh it_bdcdata.
endloop.
endif.
type-pools: slis.
data: it_fieldcat type slis_t_fieldcat_al!, a_fieldcat type
slis_fieldcat_al!.
a_fieldcat-fieldname / &6>)<&. " F+e-dna3e +n 4e da4a 4ab-e
a_fieldcat-seltext_m / &sg )d&. " C-.3n deB/+p4+n Gp
append a_fieldcat to it_fieldcat.
a_fieldcat-fieldname / &6>&.
a_fieldcat-seltext_m / &sg umber.&.
append a_fieldcat to it_fieldcat.
a_fieldcat-fieldname / &6>41&.
a_fieldcat-seltext_m / &+n!&. append a_fieldcat to it_fieldcat.
call function &+=6+_*4_>)<_<)67*E&
exporting
it_fieldcat / it_fieldcat
tables
t_outtab / it_msgal!.
* EXCEPTIONS
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 16/24
* PRORA!_ERROR =
* OTHERS = 2
.
if sy-subrc 89 .
rite &o msg&.
* !ESSAE ID S#$!SID T#PE S#$!ST# N%!&ER S#$!SNO
* 'ITH S#$!SV S#$!SV2 S#$!SV( S#$!SV) endif.
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
* S4a/4 ne> B/een *
*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*
form bdc_dynpro using program dynpro.
clear a_bdcdata.
a_bdcdata-program / program.
a_bdcdata-dynpro / dynpro.
a_bdcdata-dynbegin / &&.
append a_bdcdata to it_bdcdata.
endform. "bd_d;np/
**$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
*
** InBe/4 +e-d
**$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
form bdc_field using fnam f!al.
clear a_bdcdata.
a_bdcdata-fnam / fnam.
a_bdcdata-f!al / f!al.
append a_bdcdata to it_bdcdata.
endform. "bd_+e-d
report zhr_ns_bdc_det no standard page heading line-size 255.
type-pools: truxs.
types: begin of ty_emp,
pernr type rp5g-pernr, "pe/Bnne- n
begda type %2-gbpas, "B4a/4 da4e
erks type pspar-erks, "pe/Bnne- a/ea
persg type pspar-persg, "e3p-;ee g/.p
persk type pspar-persk, "e3p-;ee B.bg/.p
nachn type p2-nachn, "LaB4 na3e
!orna type p2-!orna, "F+/B4 na3e
gbpas type %2-gbpas, "DO&
sprsl type p2-sprsl, "Lang.age
natio type p2-natio, "Na4+n
end of ty_emp.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 17/24
types: begin of ty_!alid,
pernr type rp5g-pernr,
end of ty_!alid.
types: begin of ty_status,
msg1 type c,
end of ty_status.
types: begin of ty_emp1,
pernr type rp5g-pernr, "pe/Bnne- n
* a44 T#PE 0002$a44,
anzkd type p2-anzkd,
end of ty_emp1.
data: it_emp type table of ty_emp,
a_emp type ty_emp.
data: x_stru type truxs_t_text_data.
*DATAJ +4_bdda4a T#PE TA&LE OF bdda4a,
* >a_bdda4a T#PE bdda4a
data: it_!alid type table of ty_!alid,
a_!alid type ty_!alid.
data: it_status type table of ty_status,
a_status type ty_status.
clear it_emp.
refresh it_emp.
data: it_emp1 type table of ty_emp1,
a_emp1 type ty_emp1,
it_bdcmsg1 type table of bdcmsgcoll.
data: x_stru1 type truxs_t_text_data.
clear it_emp1.
refresh it_emp1.
selection-screen begin of block blck ith frame title text-11.
parameters: up_file type localfile obligatory.
parameters: up_file1 type localfile obligatory.
selection-screen end of block blck.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 18/24
parameters : p_create radiobutton group rb1.
parameters : p_update radiobutton group rb1.
include bdcrecx1.
at selection-screen on !alue-re%uest for up_file.
call function &'(_')*++&
exporting
program_name / syst-cprog
dynpro_number / syst-dynnr
field_name / &'ilename &
importing
file_name / up_file.
start-of-selection.
call function &0+0_34+0_*6_03_67& exporting
* I_FIELD_SEPERATOR =
* I_LINE_HEADER =
i_tab_ra_data / x_stru
i_filename / up_file
tables
i_tab_con!erted_data / it_emp
exceptions
con!ersion_failed / 1
others / 2
.
if sy-subrc 89 .
message id sy-msgid type sy-msgty number sy-msgno
ith sy-msg!1 sy-msg!2 sy-msg!F sy-msg!(.
endif.
at selection-screen on !alue-re%uest for up_file1.
call function &'(_')*++&
exporting
program_name / syst-cprog
dynpro_number / syst-dynnr
field_name / &'ilename &
importing
file_name / up_file1.
call function &0+0_34+0_*6_03_67&
exporting
* I_FIELD_SEPERATOR =
* I_LINE_HEADER =
i_tab_ra_data / x_stru1
i_filename / up_file1
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 19/24
tables
i_tab_con!erted_data / it_emp1
exceptions
con!ersion_failed / 1
others / 2
.
if sy-subrc 89 . message id sy-msgid type sy-msgty number sy-msgno
ith sy-msg!1 sy-msg!2 sy-msg!F sy-msg!(.
endif.
if p_create / && .
loop at it_emp into a_emp.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+& &/)6&.
perform bdc_field using &75>-7+&
a_emp-pernr.
perform bdc_field using &;<_=63&
&05#26-)0+0"1$&.
perform bdc_field using &75>-6+*+"1$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &7& &2&.
perform bdc_field using &;<_=63&
&7-;+><&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
perform bdc_field using &767-7+&
a_emp-pernr.
perform bdc_field using &7-;+><&
a_emp-begda.
perform bdc_field using &7-+<<&
&F1.12.GGGG&.
perform bdc_field using &7-66&
&1&.
perform bdc_field using &767-B+?6&
a_emp-erks.
perform bdc_field using &767-7+6>& a_emp-persg.
perform bdc_field using &767-7+6?&
a_emp-persk.
perform bdc_dynpro using &72& &21&.
perform bdc_field using &;<_=63&
&C2->;76&.
perform bdc_field using &;<_3?3<+&
&/=7<&.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 20/24
perform bdc_field using &72-;+><&
a_emp-begda.
perform bdc_field using &72-+<<&
&F1.12.GGGG&.
perform bdc_field using &C2-+&
&r.&.
perform bdc_field using &72-D& a_emp-nachn.
perform bdc_field using &72-43&
a_emp-!orna.
perform bdc_field using &C2->;76&
a_emp-gbpas.
perform bdc_field using &72-676*&
a_emp-sprsl.
perform bdc_field using &72-0)3&
a_emp-natio.
perform bdc_dynpro using &71& &2&.
perform bdc_field using &;<_3?3<+&
&@++<&.
perform bdc_field using &;<_=63& &71-;+><&.
perform bdc_dynpro using &67*6731& &2&.
perform bdc_field using &;<_3?3<+&
&/E+6&.
perform bdc_transaction using &7F&.
**********************
* Ca-- 4/anBa4+n <PA(0< .B+ng bdda4a 3de <N< .pda4e <S< 3eBBageB +n4
+4_B4a4.B
*
* REFRESH +4_B4a4.B
endloop.
elseif p_update / && .
loop at it_emp1 into a_emp1.
perform bdc_dynpro using &6775& &1&. perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
a_emp1-pernr.
perform bdc_field using &;<_=63&
&05#26-)0+0"F$&.
perform bdc_field using &75>-6+*+"F$&
&&.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 21/24
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &72& &2&.
perform bdc_field using &;<_=63&
&72-H?<&.
perform bdc_field using &;<_3?3<+&
&=7<&. perform bdc_field using &72-;+><&
&F.F.1GG2&.
perform bdc_field using &72-+<<&
&F1.12.GGGG&.
perform bdc_field using &C2-+&
&r.&.
perform bdc_field using &72-D&
&Dooper&.
perform bdc_field using &72-43&
&?ingsley&.
perform bdc_field using &72->;<0&
&F.F.1GG2&.
perform bdc_field using &72-676*& &+&.
* DATAJ _a/ T#PE &DCDATA$FVAL
* -ea/ _a/
* _a/ = >a_e3p$anKd
* CONDENSE _a/
perform bdc_field1 using &72-H?<&
a_emp1-anzkd .
perform bdc_field using &72-0)3&
&)&.
* PERFOR! bd_4/anBa4+n %SIN <PA(0<
call transaction &7F& using bdcdata mode && update &6&
messages into it_bdcmsg1.
refresh bdcdata.
endloop.
perform close_group.
endif.
form bdc_field1 using fnam f!al.
if f!al 89 nodata.
clear bdcdata. bdcdata-fnam / fnam.
bdcdata-f!al / f!al.
condense bdcdata-f!al.
append bdcdata.
endif.
endform.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 22/24
report zhr_kar_bdc_update
no standard page heading line-size 255.
type-pools: truxs.
types: begin of ty_emp1,
pernr type rp5g-pernr, "pe/Bnne- n
* a44 T#PE 0002$a44,
anzkd type p2-anzkd, end of ty_emp1.
data: it_emp1 type table of ty_emp1,
a_emp1 type ty_emp1,
it_bdcmsg1 type table of bdcmsgcoll.
data: x_stru1 type truxs_t_text_data.
clear it_emp1.
refresh it_emp1.
selection-screen begin of block blck ith frame title text-11.
parameters: up_file1 type localfile obligatory.
selection-screen end of block blck.
at selection-screen on !alue-re%uest for up_file1.
call function &'(_')*++&
exporting
program_name / syst-cprog
dynpro_number / syst-dynnr
field_name / &'ilename &
importing
file_name / up_file1.
start-of-selection.
call function &0+0_34+0_*6_03_67&
exporting
* I_FIELD_SEPERATOR =
* I_LINE_HEADER = i_tab_ra_data / x_stru1
i_filename / up_file1
tables
i_tab_con!erted_data / it_emp1
exceptions
con!ersion_failed / 1
others / 2
.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 23/24
if sy-subrc 89 .
message id sy-msgid type sy-msgty number sy-msgno
ith sy-msg!1 sy-msg!2 sy-msg!F sy-msg!(.
endif.
include bdcrecx1.
start-of-selection.
perform open_group.
loop at it_emp1 into a_emp1.
perform bdc_dynpro using &6775& &1&.
perform bdc_field using &;<_3?3<+&
&/)6&.
perform bdc_field using &75>-7+&
a_emp1-pernr.
perform bdc_field using &;<_=63& &05#26-)0+0"F$&.
perform bdc_field using &75>-6+*+"F$&
&&.
perform bdc_field using &75>-0)A&
&&.
perform bdc_dynpro using &72& &2&.
perform bdc_field using &;<_=63&
&72-H?<&.
perform bdc_field using &;<_3?3<+&
&=7<&.
perform bdc_field using &72-;+><&
&F.F.1GG2&.
perform bdc_field using &72-+<<&
&F1.12.GGGG&.
perform bdc_field using &C2-+&
&r.&.
perform bdc_field using &72-D&
&Dooper&.
perform bdc_field using &72-43&
&?ingsley&.
perform bdc_field using &72->;<0&
&F.F.1GG2&.
perform bdc_field using &72-676*&
&+&.
* DATAJ _a/ T#PE &DCDATA$FVAL* -ea/ _a/
* _a/ = >a_e3p$anKd
* CONDENSE _a/
perform bdc_field1 using &72-H?<&
a_emp1-anzkd .
perform bdc_field using &72-0)3&
&)&.
7/26/2019 BDC Code
http://slidepdf.com/reader/full/bdc-code 24/24
* PERFOR! bd_4/anBa4+n %SIN <PA(0<
call transaction &7F& using bdcdata mode && update &6&
messages into it_bdcmsg1.
refresh bdcdata.
endloop. perform close_group.
form bdc_field1 using fnam f!al.
if f!al 89 nodata.
clear bdcdata.
bdcdata-fnam / fnam.
bdcdata-f!al / f!al.
condense bdcdata-f!al.
append bdcdata.
endif.
endform.
types: begin of ty_!alid,
pernr type rp5g-pernr,
end of ty_!alid.