‎2007 Jul 26 7:06 AM
Hi all,
I need information regarding screen elements.
Screen elements are stored in D021T table but i need the table where its attributes are stored.
Points wiil be rewarded...
Thanks & Regards,
Santosh
‎2007 Jul 26 7:21 AM
structure: DD03P
try this program
&----
*& Report ZSAN_DOWNLOAD_TABLE_FIELDS
*&
&----
*&
*&
&----
report zsan_download_table_fields.
*======================================================================
Tables
*======================================================================
tables: dd03p,dd02v,dd02l,dd09l.
*======================================================================
Internal Tables
*======================================================================
data begin of ddtb.
include structure dd03p.
data: mark(1),
actf(1).
data end of ddtb.
data: dd12 type standard table of dd12v with header line,
t_tab type standard table of rpy_fiel_u with header line,
t_dd02l type standard table of dd02l with header line,
ddxx type standard table of dd02v with header line,
ddxx2 type standard table of dd09l with header line,
ddtb_tab like ddtb occurs 0 with header line,
dd12v_tab type standard table of dd12v with header line.
data: doma_inf type standard table of rpy_doma with header line,
doma_values type standard table of rpy_dval with header line,
w_domname like dd01l-as4local.
data: dtel_inf type standard table of rpy_dtel with header line,
docu_table_user type standard table of rpy_objtab with header line
,
w_as4local like dd01l-as4local.
data: t_dd09l type standard table of dd09l with header line,
w_as4local_de like dd04l-as4local.
*======================================================================
Variables
*======================================================================
data:
got_state like dcobjif-gotstate,
objname like rsdeo-objname,
long type i,
one like pcfile-drive,
two like pcfile-path,
filepath(128) type c,
elemname(128) type c,
domname(128) type c,
dataname(128) type c,
techname(128) type c,
docu like rglif-with_docu,
docutype like rglif-docutype,
language like sy-langu,
activation like dd01l-as4local,
ok type c,
objname_n like rsedd0-ddobjname,
objtype_n like rsedd0-ddobjtype.
data: begin of t_data occurs 0.
include structure bdcdata.
data: end of t_data.
*=======================================================================
Selection screen
*=======================================================================
selection-screen begin of block data with frame title text-t01.
parameters:
tabnam(128) type c,
function(1) type c obligatory,
listname like rlgrap-filename.
selection-screen end of block data.
selection-screen begin of block data2 with frame title text-t02.
parameters:
devclass like rglif-devclass obligatory.
selection-screen end of block data2.
*======================================================================
At Selection Screen
*======================================================================
at selection-screen on value-request for listname.
perform get_filename changing listname.
*======================================================================
Start-of-Selection
*======================================================================
start-of-selection.
perform load_data.
----
FORM LOAD_DATA *
----
Load the data from the source files. *
----
form load_data.
data: w_file like pcfile-path.
w_file = listname.
call function 'PC_SPLIT_COMPLETE_FILENAME'
exporting
complete_filename = w_file
importing
drive = one
path = two
exceptions
invalid_drive = 1
invalid_extension = 2
invalid_name = 3
invalid_path = 4
others = 5.
concatenate one ':' two into filepath.
select single tabname tabclass
into (t_dd02l-tabname,t_dd02l-tabclass)
from dd02l
where tabname eq tabnam.
objname = tabnam.
concatenate filepath objname '_ELEMENTS.txt' into elemname.
concatenate filepath objname '_DOMAINS.txt' into domname.
concatenate filepath objname '_DATAELEMENTS.txt' into dataname.
concatenate filepath objname '_TECHNICAL.txt' into techname.
concatenate filepath objname '.txt' into filepath.
ddxx-tabname = tabnam.
ddxx-tabclass = '$TMP'.
ddxx-ddlanguage = 'S'.
activation = 'M'.
ddxx2-tabname = tabnam.
got_state = 'A'.
*===============================================================
Download Process.
*===============================================================
if function eq 'D'.
select single tabname tabart tabkat
into (t_dd09l-tabname,t_dd09l-tabart,t_dd09l-tabkat)
from dd09l
where tabname eq objname.
append t_dd09l.
perform fill_technicals.
call function 'DDIF_TABL_GET'
exporting
name = objname
state = 'M'
langu = sy-langu
importing
gotstate = got_state
dd02v_wa = ddxx
dd09l_wa = ddxx2
tables
dd03p_tab = ddtb_tab
dd12v_tab = dd12v_tab
exceptions
illegal_input = 1.
clear ddtb_tab.
sort ddtb_tab.
loop at ddtb_tab.
if ddtb_tab-domname ne space.
call function 'RPY_DOMAIN_READ'
exporting
doma_name = ddtb_tab-domname
activation_type_i = 'M'
language = sy-langu
with_docu = ' '
docutype = 'U'
importing
doma_inf = doma_inf
activation_type_o = activation
tables
doma_values = doma_values
exceptions
cancelled = 1
not_found = 2
permission_error = 3
illegal_type = 4.
append doma_inf.
else.
clear doma_inf.
move-corresponding ddtb_tab to doma_inf.
move ddtb_tab-leng to doma_inf-length.
append doma_inf.
endif.
if ddtb_tab-rollname ne space.
call function 'RPY_DATAELEMENT_READ'
exporting
activation_type_i = 'M'
dataelement_name = ddtb_tab-rollname
language = sy-langu
with_docu = ' '
docutype = 'U'
importing
dtel_inf = dtel_inf
activation_type_o = activation
tables
docu_table_user = docu_table_user.
append dtel_inf.
else.
clear dtel_inf.
move-corresponding ddtb_tab to dtel_inf.
append dtel_inf.
endif.
endloop.
perform fill_list.
perform fill_elems.
perform fill_domains.
perform fill_dataelems.
endif.
*===============================================================
Upload Process.
*===============================================================
if function eq 'U'.
perform load_table.
perform load_element.
perform load_domains.
perform load_dataelems.
perform load_technicals.
read table ddxx index 1.
read table t_dd09l index 1.
call function 'DDIF_TABL_PUT'
exporting
name = objname
dd02v_wa = ddxx
dd09l_wa = t_dd09l
tables
dd03p_tab = ddtb_tab
exceptions
tabl_not_found = 1
name_inconsistent = 2
tabl_inconsistent = 3
put_failure = 4
put_refused = 5
others = 6.
clear doma_inf.
loop at doma_inf where domaname ne space.
call function 'RPY_DOMAIN_INSERT'
exporting
doma_name = doma_inf-domaname
doma_inf = doma_inf
language = sy-langu
transport_number = ''
development_class = devclass
with_docu = ' '
docutype = 'T'
tables
doma_values = doma_values
exceptions
cancelled = 1
already_exist = 2
permission_error = 3
name_not_allowed = 4
name_conflict = 5
internal_error = 6.
endloop.
loop at dtel_inf where dtelname ne space.
call function 'RPY_DATAELEMENT_INSERT'
exporting
dataelement_name = dtel_inf-dtelname
dtel_inf = dtel_inf
language = sy-langu
with_docu = ' '
docutype = 'T'
development_class = devclass
transport_number = ''
tables
docu_table_user = docu_table_user
exceptions
cancelled
already_exist = 1
permission_error = 2
name_not_allowed = 3
name_conflict = 4
illegal_type = 5
object_inconsistent = 6
db_access_error = 7.
endloop.
*===============================================================
Activation Process.
*===============================================================
loop at doma_inf where domaname ne space.
select single as4local from dd01l into w_as4local
where domname eq doma_inf-domaname.
if w_as4local ne 'A'.
perform activate_domains.
endif.
endloop.
loop at dtel_inf where dtelname ne space.
select single as4local from dd04l into w_as4local_de
where rollname eq dtel_inf-dtelname.
if w_as4local_de ne 'A'.
perform activate_elems.
endif.
endloop.
perform activate_techs.
perform activation_table.
endif.
endform. "LOAD_DATA
----
FORM GET_FILENAME *
----
Transform the path of the files. *
----
form get_filename changing listname.
call function 'WS_FILENAME_GET'
exporting
def_filename = listname
def_path = 'C:\downloads\list'
mask = ',.,.. '
mode = 'S'
title = 'Save in'
importing
filename = listname
exceptions
inv_winsys = 1
no_batch = 2
selection_cancel = 3
selection_error = 4
others = 5.
endform. "GET_FILENAME
----
FORM FILL_LIST *
----
Fields and attributes of the table. *
----
form fill_list.
call function 'WS_DOWNLOAD'
exporting
filename = filepath
filetype = 'ASC'
tables
data_tab = ddtb_tab
exceptions
file_open_error = 1
file_write_error = 02
invalid_filesize = 03
invalid_table_width = 04
invalid_type = 05
no_batch = 06
unknown_error = 07.
endform. "FILL_LIST
----
FORM FILL_ELEMS *
----
Technical Elements. *
----
form fill_elems.
append ddxx.
call function 'WS_DOWNLOAD'
exporting
filename = elemname
filetype = 'ASC'
tables
data_tab = ddxx
exceptions
file_open_error = 1
file_write_error = 02
invalid_filesize = 03
invalid_table_width = 04
invalid_type = 05
no_batch = 06
unknown_error = 07.
endform. "FILL_ELEMS
----
FORM FILL_DOMAINS *
----
Domains. *
----
form fill_domains.
call function 'WS_DOWNLOAD'
exporting
filename = domname
filetype = 'ASC'
tables
data_tab = doma_inf
exceptions
file_open_error = 1
file_write_error = 02
invalid_filesize = 03
invalid_table_width = 04
invalid_type = 05
no_batch = 06
unknown_error = 07.
endform. "FILL_DOMAINS
----
FORM FILL_DATAELEMS *
----
DATA ELEMENTS. *
----
form fill_dataelems.
append dtel_inf.
call function 'WS_DOWNLOAD'
exporting
filename = dataname
filetype = 'ASC'
tables
data_tab = dtel_inf
exceptions
file_open_error = 1
file_write_error = 02
invalid_filesize = 03
invalid_table_width = 04
invalid_type = 05
no_batch = 06
unknown_error = 07.
endform. "FILL_DATAELEMS
----
FORM FILL_TECHNICALS *
----
Technical Options. *
----
form fill_technicals.
call function 'WS_DOWNLOAD'
exporting
filename = techname
filetype = 'ASC'
tables
data_tab = t_dd09l
exceptions
file_open_error = 1
file_write_error = 02
invalid_filesize = 03
invalid_table_width = 04
invalid_type = 05
no_batch = 06
unknown_error = 07.
endform. "FILL_TECHNICALS
----
FORM LOAD_TABLE *
----
Upload Fields and attributes. *
----
form load_table.
call function 'WS_UPLOAD'
exporting
codepage = 'IBM'
filename = filepath
filetype = 'ASC'
tables
data_tab = ddtb_tab
exceptions
file_open_error = 1
file_read_error = 2
invalid_type = 3
unknown_error = 4.
endform. "LOAD_TABLE
----
FORM LOAD_ELEMENT *
----
Upload Technical data. *
----
form load_element.
call function 'WS_UPLOAD'
exporting
codepage = 'IBM'
filename = elemname
filetype = 'ASC'
tables
data_tab = ddxx
exceptions
file_open_error = 1
file_read_error = 2
invalid_type = 3
unknown_error = 4.
endform. "LOAD_ELEMENT
----
FORM LOAD_DOMAINS *
----
Upload Domains. *
----
form load_domains.
call function 'WS_UPLOAD'
exporting
codepage = 'IBM'
filename = domname
filetype = 'ASC'
tables
data_tab = doma_inf
exceptions
file_open_error = 1
file_read_error = 2
invalid_type = 3
unknown_error = 4.
endform. "LOAD_DOMAINS
----
FORM LOAD_DATAELEMS *
----
Upload DataElements. *
----
form load_dataelems.
call function 'WS_UPLOAD'
exporting
codepage = 'IBM'
filename = dataname
filetype = 'ASC'
tables
data_tab = dtel_inf
exceptions
file_open_error = 1
file_read_error = 2
invalid_type = 3
unknown_error = 4.
endform. "LOAD_DATAELEMS
----
FORM LOAD_TECHNICALS *
----
Load technical settings. *
----
form load_technicals.
call function 'WS_UPLOAD'
exporting
codepage = 'IBM'
filename = techname
filetype = 'ASC'
tables
data_tab = t_dd09l
exceptions
file_open_error = 1
file_read_error = 2
invalid_type = 3
unknown_error = 4.
endform. "LOAD_TECHNICALS
----
FORM ACTIVATE_DOMAINS *
----
Activate Domains. *
----
form activate_domains.
loop at doma_inf.
objname_n = doma_inf-domaname.
call function 'RS_DD_ACTIVATE'
exporting
objname = objname_n
objtype = 'D'
importing
ok = ok.
endloop.
endform. "ACTIVATE_DOMAINS
----
FORM ACTIVATE_ELEMS *
----
Activate Data Elements. *
----
form activate_elems.
loop at dtel_inf.
objname_n = dtel_inf-dtelname.
call function 'RS_DD_ACTIVATE'
exporting
objname = objname_n
objtype = 'E'
importing
ok = ok.
endloop.
endform. "ACTIVATE_ELEMS
----
FORM ACTIVATE_TECHS *
----
Activate technical settings. *
----
form activate_techs.
if t_dd09l-tabname ne ' '.
t_data-program = 'SAPMSEDS'.
t_data-dynpro = '0010'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'dd09v-tabname'.
t_data-fval = t_dd09l-tabname.
append t_data.
clear t_data.
t_data-fnam = 'bdc_okcode'.
t_data-fval = '=PFLG'.
append t_data.
clear t_data.
t_data-program = 'SAPMSEDS'.
t_data-dynpro = '0050'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'DD09V-tabart'.
t_data-fval = t_dd09l-tabart.
append t_data.
clear t_data.
t_data-fnam = 'DD09V-tabkat'.
t_data-fval = t_dd09l-tabkat.
append t_data.
clear t_data.
t_data-fnam = 'bdc_okcode'.
t_data-fval = '=SICH'.
append t_data.
clear t_data.
t_data-program = 'SAPLSTRD'.
t_data-dynpro = '0100'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'KO007-L_DEVCLASS'.
t_data-fval = devclass.
append t_data.
clear t_data.
t_data-fnam = 'bdc_okcode'.
t_data-fval = '=ADD'.
append t_data.
clear t_data.
t_data-program = 'SAPMSEDS'.
t_data-dynpro = '0050'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'bdc_okcode'.
t_data-fval = '=BACK'.
append t_data.
clear t_data.
t_data-program = 'SAPMSEDS'.
t_data-dynpro = '0010'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'bdc_okcode'.
t_data-fval = '=BACK'.
append t_data.
clear t_data.
call transaction 'SE13' using t_data mode 'N'.
free t_data.
else.
perform activation_table.
endif.
endform. "ACTIVATE_TECHS
&----
*& Form ACTIVATION_TABLE
&----
Activate table.
----
form activation_table.
t_data-program = 'SAPMSRD0'.
t_data-dynpro = '0102'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
if t_dd09l-tabname ne ' '.
t_data-fnam = 'RSRD1-TBMA_VAL'.
t_data-fval = t_dd09l-tabname.
append t_data.
clear t_data.
else.
t_data-fnam = 'RSRD1-TBMA_VAL'.
t_data-fval = objname.
append t_data.
clear t_data.
endif.
t_data-fnam = 'RSRD1-TBMA'.
t_data-fval = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'BDC_OKCODE'.
t_data-fval = '=ACT'.
append t_data.
clear t_data.
t_data-program = 'SAPMSRD0'.
t_data-dynpro = '0102'.
t_data-dynbegin = 'X'.
append t_data.
clear t_data.
t_data-fnam = 'bdc_okcode'.
t_data-fval = '=BACK'.
append t_data.
clear t_data.
call transaction 'SE11' using t_data mode 'N'.
free t_data.
endform. "ACTIVATION_TABLE
REWARD IF USEFUL.
REGARDS.
SANTHOSH REDDY