J'ai pas très sophistiqué proposition en raison des exigences manquantes ...
DATA:
lro_struc_a TYPE REF TO cl_abap_structdescr,
lro_struc_b TYPE REF TO cl_abap_structdescr,
lro_struc_c TYPE REF TO cl_abap_structdescr,
lro_struc_o TYPE REF TO cl_abap_structdescr,
lt_data_comp_a TYPE cl_abap_structdescr=>component_table,
lt_data_comp_b TYPE cl_abap_structdescr=>component_table,
lt_data_comp_c TYPE cl_abap_structdescr=>component_table,
lt_data_comp_o TYPE cl_abap_structdescr=>component_table.
"analyze every structure
lro_struc_a ?= cl_abap_typedescr=>describe_by_data(ls_struc_a).
lro_struc_b ?= cl_abap_typedescr=>describe_by_data(ls_struc_b).
lro_struc_c ?= cl_abap_typedescr=>describe_by_data(ls_struc_c).
lro_struc_o ?= cl_abap_typedescr=>describe_by_data(<fs_it_orignal>).
"get list of fields per structure
lt_data_comp_a = lro_struc_a->get_components().
lt_data_comp_b = lro_struc_b->get_components().
lt_data_comp_c = lro_struc_c->get_components().
lt_data_comp_o = lro_struc_o->get_components().
*insert comparison depending on number of fields, names (respecting order) or types according to your requirement
Avez-vous un certain nombre de types ou pourrait-il en être chose dans votre dictionnaire? –
"Remplir" n'est pas assez précis. Avec =, vous affectez des valeurs, mais pour qu'un champ-symbole fonctionne, vous devez d'abord affecter une variable cible, et c'est ce qui détermine la structure sous-jacente. Alors s'il vous plaît, ne pas seulement poster des fragments incomplets, mais un exemple complet qui démontre le problème réel. – vwegert