Aprenda a crear una Web Dynpro ABAP definiendo paso a paso todas las componentes involucradas para su creación, mediante un ejemplo sencillo.
En el tip Entendiendo los fundamentos de las Web Dynpro en SAP publicado anteriormente en Teknodatips, se trataron los conceptos fundamentales referidos a las aplicaciones Web Dynpro en SAP: qué son y lo que hay que tener en cuenta para su desarrollo y ejecución:- el patrón de diseño MVC (Model -View-Controller) en el que se basan,
- los diferentes entornos de ejecución para las Web Dynpro ABAP / para las Web Dynpro JAVA
- y los entornos de desarrollo de una Web Dynpro ABAP (ABAP Workbench) y JAVA (SAP Netweaver Developer Studio).
La Web Dynpro ABAP ejemplo a desarrollar busca información en una tabla de SAP, basándose en un dato ingresado por el usuario, que determinará la acción de búsqueda apropiada y el posterior despliegue de información visualizable en una tabla.
Cabe recordar que para la creación de una Web Dynpro for ABAP es necesario ingresar al ABAP Workbench - Transacción SE80, lo mismo que se haría para el desarrollo de cualquier aplicación en este entorno.
Pasos necesarios para la creación de una aplicación Web Dynpro ABAP
Para la creación de una Web Dynpro ABAP es necesario definir varios
elementos de manera separada que se detallan en los distintos pasos,
hasta la creación de la aplicación Web Dynpro.I) Pasos para la creación de la componente de la Web Dynpro: Atributos y Nodos
1) Ir a la transacción SE80 y elegir la opción Web Dynpro Comp./ Intf. En este mismo paso serán creados: la componente (Component), la Interfaz (Interface) y la ventana (Window) de la Web Dynpro.- 1. Componet Controller: Sólo hay un controlador de componente por componente Web Dynpro. Este es un controlador global, visible para todos los otros controladores. El controlador componente (COMPONENTCONTROLLER) impulsa la funcionalidad de todo el componente. Este controlador no tiene una interfaz visual.
- 2. Component Interface: permite la comunicación entre los elementos de dos componentes de Web Dynpro.
- 3. Windows: Aloja las vistas creadas que se verán al ejecutar la aplicación Web Dynpro.
5) Para esta Web Dynpro se creará sólo un Atributo y un Nodo. Se define el Atributo: el nombre (AEROLINEA) y el tipo de dato del atributo (STRING) y luego Aceptar.
7) Se define el nodo con nombre SFLIGHT e indicar que referencia a la tabla SFLIGHT (parámetro Dictionary structure) y hacer Click en Add Attribute from Structure.
II) Pasos para la creación de la vista de una Web Dynpro
Una vez creada la componente de la Web Dynpro ABAP, es necesario crear la vista, que va a contener los objetos visualizables en la aplicación Web Dynpro.1) Sobre la componente definida (Z_WEB_DYNPRO_EJEMPLO) presionar botón derecho del mouse → Create → View
21) Al completar los pasos anteriores del paso II), ya se tiene la vista 'Vista1' creada. Es necesario guardar los cambios y luego activar los objetos inactivos de la aplicación como se muestra en la pantalla. Luego Aceptar.
Los pasos I) y II) crearon el COMPONENT CONTROLLER y la VISTA, respectivamente, de la aplicación Web Dynpro for ABAP.
El paso siguiente (III) completa la componente Windows, que conforma una aplicación Web Dynpro ABAP.
III) Paso que completa la componente Windows que conforma una Web Dynpro ABAP
1) En este paso se procede a añadir a la Ventana (Windows) las vistas que serán utilizadas y se reflejarán en la web, y conforman la parte “visible” de la Web Dynpro.Para este ejemplo se selecciona la vista ‘Vista1’ y se lo “arrastra” hasta la solapa de Window debajo de la ventana con nombre ‘Z_WEB_DYNPRO_EJEMPLO’. Se guardan los cambios y se activa.
IV) Pasos para la creación y ejecución de la Aplicación Web Dynpro (Web Dynpro Application)
Para que la aplicación Web Dynpro ABAP pueda ser invocada desde el Browser, es necesario crear una “Web dynpro Application” .1) Posicionarse en el panel izquierdo sobre el objeto Z_WEB_DYNPRO_EJEMPLO. Elegir Create → Web Dynpro Application y asignarle como nombre, por ejemplo, el que tiene por defecto (‘Z_WEB_DYNPRO_EJEMPLO’) y una Descripción asociada. Luego indicar el Paquete donde se creará la aplicación.
4) Finalmente, en la imagen siguiente se muestra la tabla con el resultado final de la ejecución, con los datos de la aerolínea ingresada, en el ejemplo: LH.
(*) Código del evento definido en la Web Dynpro ABAP
method ONACTIONOBTENGO_DATOS .
DATA lo_el_context TYPE REF TO if_wd_context_element.
DATA ls_context TYPE wd_this->element_context.
DATA lv_aerolinea LIKE ls_context-aerolinea.
DATA lo_nd_sflight TYPE REF TO if_wd_context_node.
DATA lo_el_sflight TYPE REF TO if_wd_context_element.
DATA ls_sflight TYPE wd_this->element_sflight.
data it_sflight type table of wd_this->element_sflight.
* get element via lead selection
lo_el_context = wd_context->get_element( ).
* get single attribute
lo_el_context->get_attribute(
EXPORTING
name = 'AEROLINEA'
IMPORTING
value = lv_aerolinea ).
* navigate from <CONTEXT> to <SFLIGHT> via lead selection
lo_nd_sflight = wd_context->get_child_node( name = wd_this->wdctx_sflight ).
* get element via lead selection
lo_el_sflight = lo_nd_sflight->get_element( ).
* get all declared attributes
lo_el_sflight->get_static_attributes(
IMPORTING
static_attributes = ls_sflight ).
select carrid connid fldate price from sflight
into corresponding fields of table it_sflight
where carrid = lv_aerolinea.
lo_nd_sflight->bind_table( it_sflight ).
endmethod.
|
Fuente: http://www.teknodatips.com.ar/sap-netweaver/218-tutorial-abap-paso-a-paso-como-crear-una-web-dynpro-abap.html
No hay comentarios:
Publicar un comentario