BDC Code

24
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 =

Transcript of BDC Code

Page 1: 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 =

Page 2: BDC Code

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.

Page 3: BDC Code

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.

Page 4: BDC Code

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.

Page 5: BDC Code

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.

Page 6: BDC Code

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

Page 7: BDC Code

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&

Page 8: BDC Code

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.

Page 9: BDC Code

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

*$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*

Page 10: BDC Code

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.

Page 11: BDC Code

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

Page 12: BDC Code

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-+&

Page 13: BDC Code

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

Page 14: BDC Code

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&.

Page 15: BDC Code

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 

Page 16: BDC Code

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.

Page 17: BDC Code

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.

Page 18: BDC Code

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

Page 19: BDC Code

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<&.

Page 20: BDC Code

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$&

  &&.

Page 21: BDC Code

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.

Page 22: BDC Code

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

  .

Page 23: BDC Code

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&

  &)&.

Page 24: BDC Code

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.