<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://sapwiki.cl/wiki/index.php?action=history&amp;feed=atom&amp;title=SAP_PM_BAPI_IE03</id>
	<title>SAP PM BAPI IE03 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://sapwiki.cl/wiki/index.php?action=history&amp;feed=atom&amp;title=SAP_PM_BAPI_IE03"/>
	<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_PM_BAPI_IE03&amp;action=history"/>
	<updated>2026-10-26T13:42:33Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.0</generator>
	<entry>
		<id>https://sapwiki.cl/wiki/index.php?title=SAP_PM_BAPI_IE03&amp;diff=500&amp;oldid=prev</id>
		<title>WikiSysop at 01:15, 5 April 2020</title>
		<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_PM_BAPI_IE03&amp;diff=500&amp;oldid=prev"/>
		<updated>2020-04-05T01:15:13Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;a href=&quot;https://sapwiki.cl/wiki/index.php?title=SAP_PM_BAPI_IE03&amp;amp;diff=500&amp;amp;oldid=400&quot;&gt;Show changes&lt;/a&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://sapwiki.cl/wiki/index.php?title=SAP_PM_BAPI_IE03&amp;diff=400&amp;oldid=prev</id>
		<title>WikiSysop: Created page with &quot; &lt;nowiki&gt; *&amp;---------------------------------------------------------------------*  *&amp; Report  ZQM_EXTDAT_equi  *&amp;  *&amp;---------------------------------------------------------...&quot;</title>
		<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_PM_BAPI_IE03&amp;diff=400&amp;oldid=prev"/>
		<updated>2020-04-04T23:07:40Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; &amp;lt;nowiki&amp;gt; *&amp;amp;---------------------------------------------------------------------*  *&amp;amp; Report  ZQM_EXTDAT_equi  *&amp;amp;  *&amp;amp;---------------------------------------------------------...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; &amp;lt;nowiki&amp;gt; *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *&amp;amp; Report  ZQM_EXTDAT_equi&lt;br /&gt;
 *&amp;amp;&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *&amp;amp; Descripcion   : Extractor de Datos Equipos&lt;br /&gt;
 *&amp;amp;&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 &lt;br /&gt;
 REPORT  zqm_extdat_equi.&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 TYPE-POOLS : slis.&lt;br /&gt;
 &lt;br /&gt;
 DATA decstel(2) TYPE c.&lt;br /&gt;
 DATA: BEGIN OF gs_data,&lt;br /&gt;
 *        FUNCTLOCATION type bapi_itob_fl_sel_result-FUNCTLOCATION, &amp;quot;&lt;br /&gt;
         equipment  TYPE equnr,           &amp;quot;N° de equipo&lt;br /&gt;
 *        EQUICATGRY type BAPI_ITOB_EQ_ONLY-EQUICATGRY, &amp;quot;Tipo de equipo&lt;br /&gt;
 *STRIND type BAPI_ITOB-STRIND, &amp;quot; Indicador de estructura de ubicación técnica&lt;br /&gt;
         equicatgry TYPE bapi_itob_eq_only-equicatgry, &amp;quot; Tipo de equipo&lt;br /&gt;
         descript   TYPE bapi_itob-descript, &amp;quot; Denominación de la ubicación técnic&lt;br /&gt;
         authgrp    TYPE bapi_itob-authgrp , &amp;quot; Grupo de autorizaciones para objeto técnico&lt;br /&gt;
         obj_weight TYPE bapi_itob-obj_weight , &amp;quot; Peso del objeto&lt;br /&gt;
         unit_of_wt TYPE bapi_itob-unit_of_wt, &amp;quot; Unidad de peso&lt;br /&gt;
         obj_size   TYPE bapi_itob-obj_size , &amp;quot; Tamaño/Dimensión&lt;br /&gt;
         inventory  TYPE bapi_itob-inventory, &amp;quot; Número de inventario&lt;br /&gt;
         start_from TYPE bapi_itob-start_from, &amp;quot; Fecha de puesta en servicio de objeto técnico&lt;br /&gt;
         objecttype TYPE bapi_itob-objecttype, &amp;quot; Clase de objeto técnico&lt;br /&gt;
 *       descript    type bapi_itob-descript,   &amp;quot;denominación   &amp;quot;!!!&lt;br /&gt;
         acquisval  TYPE bapi_itob-acquisval , &amp;quot; valor de adquisición&lt;br /&gt;
         currency   TYPE bapi_itob-currency ,  &amp;quot; clave de moneda&lt;br /&gt;
         acqdate    TYPE bapi_itob-acqdate ,   &amp;quot; fecha de adquisición&lt;br /&gt;
         manfacture TYPE bapi_itob-manfacture, &amp;quot; fabricante del activo fijo&lt;br /&gt;
         mancountry TYPE bapi_itob-mancountry, &amp;quot; país de fabricación&lt;br /&gt;
         manmodel   TYPE bapi_itob-manmodel,   &amp;quot; denominación de tipo del fabricante&lt;br /&gt;
         constyear  TYPE bapi_itob-constyear,  &amp;quot; año de construcción&lt;br /&gt;
         constmonth TYPE bapi_itob-constmonth, &amp;quot; mes de construcción&lt;br /&gt;
         manparno   TYPE bapi_itob-manparno,   &amp;quot; número de pieza de fabricante&lt;br /&gt;
         manserno   TYPE bapi_itob-manserno,   &amp;quot; número de serie según el fabricante&lt;br /&gt;
         maintplant TYPE bapi_itob-maintplant, &amp;quot; centro de emplazamiento&lt;br /&gt;
         maintloc   TYPE bapi_itob-maintloc  , &amp;quot;  emplazamiento del objeto de mantenimiento&lt;br /&gt;
         maintroom  TYPE bapi_itob-maintroom,  &amp;quot; local&lt;br /&gt;
         plsectn    TYPE bapi_itob-plsectn,    &amp;quot;  Área de empresa&lt;br /&gt;
         work_ctr   TYPE bapi_itob-work_ctr,   &amp;quot; puesto de trabajo&lt;br /&gt;
         abcindic   TYPE bapi_itob-abcindic,   &amp;quot; indicador abc para objeto técnico&lt;br /&gt;
         sortfield  TYPE bapi_itob-sortfield,  &amp;quot; campo de clasificación&lt;br /&gt;
         comp_code  TYPE bapi_itob-comp_code,  &amp;quot; sociedad&lt;br /&gt;
         bus_area   TYPE bapi_itob-bus_area,   &amp;quot; división&lt;br /&gt;
         asset_no   TYPE bapi_itob-asset_no ,  &amp;quot; número principal de activo fijo&lt;br /&gt;
         sub_number TYPE bapi_itob-sub_number, &amp;quot; subnúmero de activo fijo&lt;br /&gt;
         costcenter TYPE bapi_itob-costcenter, &amp;quot; centro de coste&lt;br /&gt;
         wbs_elem   TYPE bapi_itob-wbs_elem,   &amp;quot; elemento del plan de estructura de proyecto (elemento pep)&lt;br /&gt;
         standorder TYPE bapi_itob-standorder, &amp;quot; número de orden permanente&lt;br /&gt;
         settlorder TYPE bapi_itob-settlorder, &amp;quot; orden de liquidación&lt;br /&gt;
         planplant  TYPE bapi_itob-planplant , &amp;quot; centro de planificación del mantenimiento&lt;br /&gt;
         plangroup  TYPE bapi_itob-plangroup , &amp;quot; grupo planificador p.servicio cliente y mantenimiento&lt;br /&gt;
         pp_wkctr   TYPE bapi_itob-pp_wkctr,   &amp;quot; puesto de trabajo responsable en medidas de mantenimiento&lt;br /&gt;
         catprofile TYPE bapi_itob-catprofile, &amp;quot;  perfil de catálogo&lt;br /&gt;
 *        eqinstall   type bapi_itob_fl_only-eqinstall, &amp;quot; montaje de equipos permitido en ubicación técnica&lt;br /&gt;
         read_supeq TYPE bapi_itob_eq_only-read_supeq,  &amp;quot;equipo superior&lt;br /&gt;
         read_floc  TYPE bapi_itob_eq_only-read_floc,   &amp;quot;Identificación de ubicación técnica&lt;br /&gt;
         inst_pos   TYPE bapi_itob_eq_only-inst_pos, &amp;quot;Posición de equipo en lugar de montaje (eq.sup./ubic.técn.)&lt;br /&gt;
       END OF gs_data.&lt;br /&gt;
 DATA gt_data LIKE TABLE OF gs_data.&lt;br /&gt;
 &lt;br /&gt;
 DATA: BEGIN OF gs_header,&lt;br /&gt;
         colname TYPE scrtext_l,&lt;br /&gt;
       END OF gs_header.&lt;br /&gt;
 DATA gt_header LIKE TABLE OF gs_header.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 DATA gt_equipos LIKE TABLE OF bapi_itob_eq_sel_result.&lt;br /&gt;
 DATA gs_equipos LIKE LINE OF gt_equipos.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 DATA: gt_qpmk LIKE TABLE OF qpmk,&lt;br /&gt;
       gs_qpmk LIKE LINE OF gt_qpmk.&lt;br /&gt;
 &lt;br /&gt;
 DATA gd_tfile TYPE ibipparms-path.&lt;br /&gt;
 &lt;br /&gt;
 DATA: ls_itob_sel_maintplant LIKE TABLE OF  bapi_itob_sel_maintplant WITH HEADER LINE.&lt;br /&gt;
 DATA: ls_bapiret2  LIKE TABLE OF bapiret2 WITH HEADER LINE.&lt;br /&gt;
 DATA: ls_itob_fl_sel_result LIKE TABLE OF  bapi_itob_fl_sel_result WITH HEADER LINE.&lt;br /&gt;
 DATA:  es_bapi_itob LIKE TABLE OF bapi_itob WITH HEADER LINE.&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 SELECT-OPTIONS: s_equnr FOR gs_data-equipment,&lt;br /&gt;
                 s_swerk FOR gs_data-maintplant.&lt;br /&gt;
 PARAMETERS: p_file TYPE string LOWER CASE OBLIGATORY.&lt;br /&gt;
 &lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
   gd_tfile = p_file.&lt;br /&gt;
 &lt;br /&gt;
   CALL FUNCTION &amp;#039;F4_FILENAME&amp;#039;&lt;br /&gt;
     EXPORTING&lt;br /&gt;
       field_name = &amp;#039;P_FILE&amp;#039;&lt;br /&gt;
     IMPORTING&lt;br /&gt;
       file_name  = gd_tfile.&lt;br /&gt;
 &lt;br /&gt;
   MOVE gd_tfile TO p_file.&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 START-OF-SELECTION.&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 &lt;br /&gt;
   PERFORM select_data.&lt;br /&gt;
 &lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 END-OF-SELECTION.&lt;br /&gt;
 *--------------------------------------------------------------------*&lt;br /&gt;
 *  PERFORM process_data.&lt;br /&gt;
   IF gt_data[] IS INITIAL.&lt;br /&gt;
     WRITE:/ &amp;#039;No se seleccionaron datos&amp;#039;.&lt;br /&gt;
     RETURN.&lt;br /&gt;
   ENDIF.&lt;br /&gt;
 &lt;br /&gt;
   PERFORM download.&lt;br /&gt;
 &lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *&amp;amp;      Form  select_data&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *       text&lt;br /&gt;
 *----------------------------------------------------------------------*&lt;br /&gt;
 FORM select_data.&lt;br /&gt;
 &lt;br /&gt;
   CALL FUNCTION &amp;#039;BAPI_EQUI_GETLIST&amp;#039;&lt;br /&gt;
     TABLES&lt;br /&gt;
       equipment_ra   = s_equnr&lt;br /&gt;
       maintplant_ra  = s_swerk&lt;br /&gt;
       equipment_list = gt_equipos.&lt;br /&gt;
 &lt;br /&gt;
   DATA: ls_data_general_exp  LIKE  bapi_itob,&lt;br /&gt;
         ls_data_specific_exp LIKE  bapi_itob_eq_only.&lt;br /&gt;
   DATA ld_monto TYPE  bapicurr-bapicurr.&lt;br /&gt;
 &lt;br /&gt;
   LOOP AT  gt_equipos INTO gs_equipos.&lt;br /&gt;
     CALL FUNCTION &amp;#039;BAPI_EQUI_GETDETAIL&amp;#039;&lt;br /&gt;
       EXPORTING&lt;br /&gt;
         equipment         = gs_equipos-equipment&lt;br /&gt;
       IMPORTING&lt;br /&gt;
         data_general_exp  = ls_data_general_exp&lt;br /&gt;
         data_specific_exp = ls_data_specific_exp&lt;br /&gt;
 *       DATA_FLEET_EXP    =&lt;br /&gt;
 *       RETURN            =&lt;br /&gt;
       .&lt;br /&gt;
 &lt;br /&gt;
     MOVE-CORRESPONDING ls_data_general_exp TO gs_data.&lt;br /&gt;
     CALL FUNCTION &amp;#039;BAPI_CURRENCY_CONV_TO_EXTERNAL&amp;#039;&lt;br /&gt;
       EXPORTING&lt;br /&gt;
         currency        = ls_data_general_exp-currency&lt;br /&gt;
         amount_internal = ls_data_general_exp-acquisval&lt;br /&gt;
       IMPORTING&lt;br /&gt;
         amount_external = ld_monto.&lt;br /&gt;
 &lt;br /&gt;
     MOVE ld_monto TO gs_data-acquisval.&lt;br /&gt;
     gs_data-read_supeq  = ls_data_specific_exp-read_supeq.&lt;br /&gt;
     gs_data-read_floc = ls_data_specific_exp-read_floc.&lt;br /&gt;
     gs_data-inst_pos  = ls_data_specific_exp-inst_pos.&lt;br /&gt;
     gs_data-equicatgry =   ls_data_specific_exp-equicatgry.&lt;br /&gt;
     gs_data-equipment = gs_equipos-equipment.&lt;br /&gt;
 &lt;br /&gt;
     APPEND gs_data TO gt_data.&lt;br /&gt;
   ENDLOOP.&lt;br /&gt;
 &lt;br /&gt;
 ENDFORM.                    &amp;quot;select_data&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *&amp;amp;      Form  download&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *       text&lt;br /&gt;
 *----------------------------------------------------------------------*&lt;br /&gt;
 FORM download.&lt;br /&gt;
 &lt;br /&gt;
   PERFORM crear_header_2 USING gs_data CHANGING gt_header[].&lt;br /&gt;
 &lt;br /&gt;
   CALL FUNCTION &amp;#039;GUI_DOWNLOAD&amp;#039;&lt;br /&gt;
     EXPORTING&lt;br /&gt;
       filename                = p_file&lt;br /&gt;
       filetype                = &amp;#039;DAT&amp;#039;&lt;br /&gt;
     TABLES&lt;br /&gt;
       data_tab                = gt_data&lt;br /&gt;
       fieldnames              = gt_header&lt;br /&gt;
     EXCEPTIONS&lt;br /&gt;
       file_write_error        = 1&lt;br /&gt;
       no_batch                = 2&lt;br /&gt;
       gui_refuse_filetransfer = 3&lt;br /&gt;
       invalid_type            = 4&lt;br /&gt;
       no_authority            = 5&lt;br /&gt;
       unknown_error           = 6&lt;br /&gt;
       header_not_allowed      = 7&lt;br /&gt;
       separator_not_allowed   = 8&lt;br /&gt;
       filesize_not_allowed    = 9&lt;br /&gt;
       header_too_long         = 10&lt;br /&gt;
       dp_error_create         = 11&lt;br /&gt;
       dp_error_send           = 12&lt;br /&gt;
       dp_error_write          = 13&lt;br /&gt;
       unknown_dp_error        = 14&lt;br /&gt;
       access_denied           = 15&lt;br /&gt;
       dp_out_of_memory        = 16&lt;br /&gt;
       disk_full               = 17&lt;br /&gt;
       dp_timeout              = 18&lt;br /&gt;
       file_not_found          = 19&lt;br /&gt;
       dataprovider_exception  = 20&lt;br /&gt;
       control_flush_error     = 21&lt;br /&gt;
       OTHERS                  = 22.&lt;br /&gt;
   IF sy-subrc &amp;lt;&amp;gt; 0.&lt;br /&gt;
     MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;br /&gt;
             WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;br /&gt;
   ELSE.&lt;br /&gt;
     MESSAGE i000(fb) WITH &amp;#039;Se genero archivo&amp;#039;&lt;br /&gt;
                           p_file.&lt;br /&gt;
   ENDIF.&lt;br /&gt;
 ENDFORM.                    &amp;quot;download&lt;br /&gt;
 &lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *&amp;amp;      Form  crear_header&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *       text&lt;br /&gt;
 *----------------------------------------------------------------------*&lt;br /&gt;
 FORM crear_header.&lt;br /&gt;
 &lt;br /&gt;
   CLEAR gt_header[].&lt;br /&gt;
 &lt;br /&gt;
   DATA: l_index(2) TYPE n,&lt;br /&gt;
         l_string   TYPE string,&lt;br /&gt;
         l_0033     TYPE p0033.&lt;br /&gt;
   FIELD-SYMBOLS &amp;lt;fs&amp;gt; TYPE any.&lt;br /&gt;
   DATA: descr_struc_ref TYPE REF TO cl_abap_structdescr,&lt;br /&gt;
         lt_components   TYPE abap_compdescr_tab,&lt;br /&gt;
         ls_components   LIKE LINE OF lt_components.&lt;br /&gt;
 *descr_struc_ref ?= cl_abap_typedescr=&amp;gt;describe_by_name( gs_data ).&lt;br /&gt;
 *lt_components = descr_struc_ref-&amp;gt;components.&lt;br /&gt;
   DATA comp_tab TYPE abap_compdescr_tab.&lt;br /&gt;
   DATA stru_ref TYPE REF TO cl_abap_structdescr.&lt;br /&gt;
   DATA type_ref TYPE REF TO cl_abap_typedescr.&lt;br /&gt;
   DATA is_ddic TYPE abap_bool.&lt;br /&gt;
   DATA: lt_ddic TYPE dd_x031l_table,&lt;br /&gt;
         wa_ddic TYPE x031l,&lt;br /&gt;
         lt_fcat TYPE slis_t_fieldcat_alv,&lt;br /&gt;
         wa_fcat TYPE slis_fieldcat_alv,&lt;br /&gt;
         ls_layo TYPE slis_layout_alv,&lt;br /&gt;
         l_alv   TYPE REF TO cl_gui_alv_grid.&lt;br /&gt;
 &lt;br /&gt;
   DATA: one_comp TYPE abap_compdescr,&lt;br /&gt;
         one_name TYPE string.&lt;br /&gt;
 &lt;br /&gt;
   stru_ref ?= cl_abap_structdescr=&amp;gt;describe_by_data( gs_data ).&lt;br /&gt;
 &lt;br /&gt;
   comp_tab = stru_ref-&amp;gt;components.&lt;br /&gt;
 &lt;br /&gt;
   FIELD-SYMBOLS &amp;lt;f3&amp;gt; TYPE any.&lt;br /&gt;
   DATA gd_field TYPE string.&lt;br /&gt;
 &lt;br /&gt;
   LOOP AT comp_tab INTO one_comp.&lt;br /&gt;
     CONCATENATE &amp;#039;GS_DATA-&amp;#039; one_comp-name INTO gd_field.&lt;br /&gt;
 &lt;br /&gt;
     ASSIGN (gd_field) TO &amp;lt;f3&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
     type_ref ?= cl_abap_typedescr=&amp;gt;describe_by_data( &amp;lt;f3&amp;gt; ).&lt;br /&gt;
     is_ddic = type_ref-&amp;gt;is_ddic_type( ).&lt;br /&gt;
 &lt;br /&gt;
     IF is_ddic = abap_true.&lt;br /&gt;
       lt_ddic = type_ref-&amp;gt;get_ddic_object( ).&lt;br /&gt;
 &lt;br /&gt;
       LOOP AT lt_ddic INTO wa_ddic.&lt;br /&gt;
         CLEAR wa_ddic-tabname.&lt;br /&gt;
 *        SELECT SINGLE&lt;br /&gt;
 *        dd03l~tabname&lt;br /&gt;
 *        INTO wa_ddic-tabname&lt;br /&gt;
 *        FROM dd03l&lt;br /&gt;
 *        WHERE dd03l~fieldname = wa_ddic-fieldname&lt;br /&gt;
 *        AND dd03l~tabname NOT LIKE &amp;#039;/%&amp;#039;.&lt;br /&gt;
 &lt;br /&gt;
         SELECT SINGLE dd04t~scrtext_s&lt;br /&gt;
                       dd04t~scrtext_m&lt;br /&gt;
                       dd04t~scrtext_l&lt;br /&gt;
         INTO (wa_fcat-seltext_s, wa_fcat-seltext_m, wa_fcat-seltext_l) FROM dd04t&lt;br /&gt;
         WHERE dd04t~rollname = wa_ddic-fieldname&lt;br /&gt;
           AND dd04t~ddlanguage = sy-langu.&lt;br /&gt;
 &lt;br /&gt;
         APPEND wa_fcat TO lt_fcat.&lt;br /&gt;
         CONCATENATE wa_fcat-seltext_l wa_ddic-fieldname INTO gd_field  SEPARATED BY space.&lt;br /&gt;
         APPEND gd_field TO gt_header.&lt;br /&gt;
       ENDLOOP.&lt;br /&gt;
     ELSE.&lt;br /&gt;
       APPEND one_comp-name TO gt_header.&lt;br /&gt;
     ENDIF.&lt;br /&gt;
 &lt;br /&gt;
   ENDLOOP.&lt;br /&gt;
 &lt;br /&gt;
 ENDFORM.                    &amp;quot;crear_header&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *&amp;amp;      Form  read_text&lt;br /&gt;
 *&amp;amp;---------------------------------------------------------------------*&lt;br /&gt;
 *       text&lt;br /&gt;
 *----------------------------------------------------------------------*&lt;br /&gt;
 FORM read_text.&lt;br /&gt;
 &lt;br /&gt;
   DATA l_v_name TYPE thead-tdname.   &amp;quot; Declare l_v_name as this type&lt;br /&gt;
   DATA l_fs_line TYPE tline.&lt;br /&gt;
   DATA l_it_line LIKE TABLE OF l_fs_line.&lt;br /&gt;
 &lt;br /&gt;
   CONCATENATE gs_qpmk-mandt&lt;br /&gt;
               gs_qpmk-zaehler&lt;br /&gt;
               gs_qpmk-mkmnr&lt;br /&gt;
               gs_qpmk-version&lt;br /&gt;
               sy-langu INTO l_v_name RESPECTING BLANKS.&lt;br /&gt;
 &lt;br /&gt;
   REFRESH l_it_line.&lt;br /&gt;
   CALL FUNCTION &amp;#039;READ_TEXT&amp;#039;     &amp;quot;get long text&lt;br /&gt;
     EXPORTING&lt;br /&gt;
       client   = sy-mandt&lt;br /&gt;
       id       = &amp;#039;QPMT&amp;#039;&lt;br /&gt;
       language = sy-langu&lt;br /&gt;
       name     = l_v_name&lt;br /&gt;
       object   = &amp;#039;QPMERKAL&amp;#039;&lt;br /&gt;
     TABLES&lt;br /&gt;
       lines    = l_it_line.&lt;br /&gt;
 &lt;br /&gt;
 ENDFORM.                    &amp;quot;read_text&lt;br /&gt;
 &lt;br /&gt;
 FORM crear_header_2 USING  VALUE(i_data)&lt;br /&gt;
                  CHANGING i_header TYPE ANY TABLE.&lt;br /&gt;
   DATA lt_text TYPE pt_t_text.&lt;br /&gt;
   DATA ls_text LIKE LINE OF lt_text.&lt;br /&gt;
 &lt;br /&gt;
   FIELD-SYMBOLS &amp;lt;wa&amp;gt;.&lt;br /&gt;
   ASSIGN i_data TO &amp;lt;wa&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
   DATA: l_index(2) TYPE n,&lt;br /&gt;
         l_string   TYPE string,&lt;br /&gt;
         l_0033     TYPE p0033.&lt;br /&gt;
   FIELD-SYMBOLS &amp;lt;fs&amp;gt; TYPE any.&lt;br /&gt;
   DATA: descr_struc_ref TYPE REF TO cl_abap_structdescr,&lt;br /&gt;
         lt_components   TYPE abap_compdescr_tab,&lt;br /&gt;
         ls_components   LIKE LINE OF lt_components.&lt;br /&gt;
 *descr_struc_ref ?= cl_abap_typedescr=&amp;gt;describe_by_name( gs_data ).&lt;br /&gt;
 *lt_components = descr_struc_ref-&amp;gt;components.&lt;br /&gt;
   DATA comp_tab TYPE abap_compdescr_tab.&lt;br /&gt;
   DATA stru_ref TYPE REF TO cl_abap_structdescr.&lt;br /&gt;
   DATA type_ref TYPE REF TO cl_abap_typedescr.&lt;br /&gt;
   DATA is_ddic TYPE abap_bool.&lt;br /&gt;
   DATA: lt_ddic TYPE dd_x031l_table,&lt;br /&gt;
         wa_ddic TYPE x031l,&lt;br /&gt;
         lt_fcat TYPE slis_t_fieldcat_alv,&lt;br /&gt;
         wa_fcat TYPE slis_fieldcat_alv,&lt;br /&gt;
         ls_layo TYPE slis_layout_alv,&lt;br /&gt;
         l_alv   TYPE REF TO cl_gui_alv_grid.&lt;br /&gt;
 &lt;br /&gt;
   DATA: one_comp TYPE abap_compdescr,&lt;br /&gt;
         one_name TYPE string.&lt;br /&gt;
 &lt;br /&gt;
   stru_ref ?= cl_abap_structdescr=&amp;gt;describe_by_data( &amp;lt;wa&amp;gt; ).&lt;br /&gt;
 &lt;br /&gt;
   comp_tab = stru_ref-&amp;gt;components.&lt;br /&gt;
 &lt;br /&gt;
   FIELD-SYMBOLS &amp;lt;f3&amp;gt; TYPE any.&lt;br /&gt;
   DATA gd_field TYPE string.&lt;br /&gt;
 &lt;br /&gt;
   LOOP AT comp_tab INTO one_comp.&lt;br /&gt;
     CONCATENATE &amp;#039;&amp;lt;WA&amp;gt;-&amp;#039; one_comp-name INTO gd_field.&lt;br /&gt;
 &lt;br /&gt;
     ASSIGN (gd_field) TO &amp;lt;f3&amp;gt;.&lt;br /&gt;
 &lt;br /&gt;
     type_ref ?= cl_abap_typedescr=&amp;gt;describe_by_data( &amp;lt;f3&amp;gt; ).&lt;br /&gt;
     is_ddic = type_ref-&amp;gt;is_ddic_type( ).&lt;br /&gt;
 &lt;br /&gt;
     IF is_ddic = abap_true.&lt;br /&gt;
       lt_ddic = type_ref-&amp;gt;get_ddic_object( ).&lt;br /&gt;
 &lt;br /&gt;
       LOOP AT lt_ddic INTO wa_ddic.&lt;br /&gt;
         CLEAR wa_ddic-tabname.&lt;br /&gt;
 &lt;br /&gt;
         SELECT SINGLE dd04t~scrtext_s&lt;br /&gt;
                       dd04t~scrtext_m&lt;br /&gt;
                       dd04t~scrtext_l&lt;br /&gt;
                 INTO (wa_fcat-seltext_s, wa_fcat-seltext_m, wa_fcat-seltext_l) FROM dd04t&lt;br /&gt;
                WHERE dd04t~rollname = wa_ddic-fieldname&lt;br /&gt;
                  AND dd04t~ddlanguage = sy-langu.&lt;br /&gt;
 &lt;br /&gt;
         APPEND wa_fcat TO lt_fcat.&lt;br /&gt;
         CONCATENATE wa_fcat-seltext_l wa_ddic-fieldname INTO gd_field  SEPARATED BY space.&lt;br /&gt;
         APPEND gd_field TO lt_text.&lt;br /&gt;
       ENDLOOP.&lt;br /&gt;
     ELSE.&lt;br /&gt;
       APPEND one_comp-name TO lt_text.&lt;br /&gt;
     ENDIF.&lt;br /&gt;
 &lt;br /&gt;
   ENDLOOP.&lt;br /&gt;
 &lt;br /&gt;
   i_header[] = lt_text[].&lt;br /&gt;
 ENDFORM.                    &amp;quot;crear_header&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
</feed>