PDA

Ver la Versión Completa : Ayuda set_handler


Chuva
01/10/14, 16:48:15
Hola, soy algo nuevo en abap y tengo una duda.

Tengo un method set_handler en el que mando llamar un method handle_top_of_page y no he podido agregar lineas.. no se si estoy haciendo algo mal, espero me puedan ayudar.. abajo pongo el código...


METHOD handle_top_of_page. "HANDLE_TOP_OF_PAGE

* Declaraciones de variables locales.
DATA: vl_text TYPE sdydo_text_element,
vl_day(2) TYPE c,
vl_mnth TYPE t247-mnr,
vl_year(4) TYPE c,
vl_month_name TYPE t247-ltx.

* Declaraciones de objetos locales.
DATA: ol_table TYPE REF TO cl_dd_table_element,
ol_column1 TYPE REF TO cl_dd_area,
ol_column2 TYPE REF TO cl_dd_area,
ol_row1 TYPE REF TO cl_dd_area,
ol_row2 TYPE REF TO cl_dd_area,
ol_row3 TYPE REF TO cl_dd_area.

* Crear tabla con dos columnas...
CALL METHOD e_dyndoc_id->add_table
EXPORTING
no_of_columns = 2
width = '100%'
border = '0'
IMPORTING
table = ol_table.

* Inicializar ancho de columna 1...
CALL METHOD ol_table->add_column
EXPORTING
width = '80%'
IMPORTING
column = ol_column1.

* Inicializar ancho de columna 2...
CALL METHOD ol_table->add_column
EXPORTING
width = '20%'
IMPORTING
column = ol_column2.

* call method ol_column1->add_row "add row
* EXPORTING
* width = '20%'
* IMPORTING
* row = ol_row1.
* Agregar logo a la columna 1...
CALL METHOD ol_column2->add_picture
EXPORTING
picture_id = 'ENJOYSAP_LOGO'.

vl_day = sy-datum+6(2).
vl_mnth = sy-datum+4(2).
vl_year = sy-datum(devil).

* Se obtiene el nombre del mes
CALL FUNCTION 'ISP_GET_MONTH_NAME'
EXPORTING
language = sy-langu
month_number = vl_mnth
IMPORTING
longtext = vl_month_name
EXCEPTIONS
calendar_id = 1
date_error = 2
not_found = 3
wrong_input = 4
OTHERS = 5.

IF sy-subrc <> 0.
* Implement suitable error handling here
ENDIF.

*Sociedad
READ TABLE tg_t001
INTO wa_t001
WITH KEY bukrs = so_bukrs-low
BINARY SEARCH.

IF sy-subrc NE 0.

CLEAR wa_t001.

ENDIF.

CONCATENATE text-003
so_bukrs-low
wa_t001-butxt
INTO vl_text
SEPARATED BY space.

* Agregar texto en la columna 2...
CALL METHOD ol_column1->add_text
EXPORTING
text = vl_text
sap_fontsize = cl_dd_area=>large
sap_emphasis = cl_dd_area=>strong.

CLEAR vl_text.

**Agregar espacio antes del texto en la columna 2...
* CALL METHOD ol_column1->add_gap
* EXPORTING
* width = 20.

CONCATENATE text-001
vl_day
text-002
vl_month_name
text-002
vl_year
INTO vl_text
SEPARATED BY space.

* Agregar texto en la columna 1...
CALL METHOD ol_column1->add_text
EXPORTING
text = vl_text
sap_fontsize = cl_dd_area=>large
sap_emphasis = cl_dd_area=>strong.

CLEAR vl_text.
* Se obtiene el texto para la descripción del banco
READ TABLE tg_t012t
INTO wa_t012t
WITH KEY hbkid = so_hbkid
BINARY SEARCH.

* IF sy-subrc = 0.

CONCATENATE text-004
so_hbkid
wa_t012t-text1
INTO vl_text
SEPARATED BY space.

* Agregar texto en la columna 1...
CALL METHOD ol_column1->add_text
EXPORTING
text = vl_text
sap_fontsize = cl_dd_area=>large
sap_emphasis = cl_dd_area=>strong.

* ENDIF.

CLEAR vl_text.
*
CONCATENATE text-005
so_hktid
INTO vl_text
SEPARATED BY space.

* Agregar texto en la columna 1...
CALL METHOD ol_column1->add_text
EXPORTING
text = vl_text
sap_fontsize = cl_dd_area=>large
sap_emphasis = cl_dd_area=>strong.

CLEAR vl_text.

*
CONCATENATE text-006
so_hktid
INTO vl_text
SEPARATED BY space.

* Agregar texto en la columna 1...
CALL METHOD ol_column1->add_text
EXPORTING
text = vl_text
sap_fontsize = cl_dd_area=>large
sap_emphasis = cl_dd_area=>strong.

ENDMETHOD.