curso de web dynpro sap

166
Programa de Capacitación SAP Web Dynpro Elaborado por MVM Ingeniería de Software Josué David Cruz Soriano Confidencial - MVM Ingeniería de Software S.A., todos los derechos reservados

Upload: angel-fernandes-catire

Post on 07-Feb-2016

137 views

Category:

Documents


6 download

TRANSCRIPT

  • Programa de Capacitacin

    SAP Web Dynpro

    Elaborado por MVM Ingeniera de Software

    Josu David Cruz Soriano

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Nota

    Algunos grficos y textos han sido copiados de fuentes y material de SAP y

    solo podrn ser usados para temas

    didcticos.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Introduccin a Web Dynpro

    SAP Java Development Environment

    Introduccin

    El Context en tiempo de diseo

    Elementos de Interface de Usuario

    Web Dynpro Controllers

    Mensajes y soporte a lenguajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Proveer una integrada y robusta infraestructura de desarrollo para proyectos de Java e incluir esta herramienta en los productos de desarrollo de SAP, cubriendo los siguientes puntos:

    Cubrir el ciclo completo de proyectos Java. Reducir los costos de profesionales en proyectos Java. Acelerar el proceso de desarrollos. Incrementear la calidad de los productos basados en Java.

    Introduccin : Java Development Infrastructure

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • El proyecto Eclipse empez en 2001 en IBM, como un proyecto cdigo abierto bajo la licencensia (CPL). SAP Netweaver Development Studio esta integrado en Eclipse. Eclipse implementa la habilidad de mejorar el ambiente de desarrollo mediante Plug-Ins.

    Arquitectura de la plataforma Eclipse

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Eclipse UI

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • La interface de usuario (Perspective, Views, Editor) El Workbench de Eclipse ofrece algunas perspectivas y vistas para todo

    el proceso del desarrollo.

    Una perspectiva consta de muchas vistas y editores. Una vista es usada para navegar entre informacin Un editor puede ser usado para modificar cdigo fuente.

    Eclipse UI

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Introduccin a Web Dynpro

    Introduccin

    El Context en tiempo de diseo

    Elementos de Interface de Usuario

    Web Dynpro Controllers

    Mensajes y soporte a lenguajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    SAP Java Development Environment

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP NetWeaver Developer Studio est basado en la plataforma libre Eclipse. SAP NetWeaver Developer Studio es un ambiente de desarrollo

    para todas las reas de aplicaciones empresariales Java.

    Interfaces de Usuario : SAP Web Dynpro es usado para desarrollar interfaces web flexibles.

    Lgica de Negocio : Soporte a desarrollar y deployar EJBs, la definicin y publicacin de Web Services.

    Java Persistence : Embebe SQL en Java (SQLJ)

    SAP NetWeaver Developer Studio

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    SAP NetWeaver Developer Studio, puede ser instalado con el SAP Web AS o puede ser instalado stand-alone.

    Requerimientos del sistema:

    512 Mb RAM (Mnimo)

    1 GB RAM (Recomendado)

    300 Mb espacio en disco

    JDK 1.4.2 o superior

    Instalacin1. Instalar Java 1.4.2 o superior.

    2. Bajar SAP Netweaver Developer Studio de la fuente

    https://www.sdn.sap.com/irj/sdn/downloads

    3. Correr el programa de instalacin, en la ruta /J2EE-RUNT-CD/IDE/JDTSetup.exe

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    4. Dar clic en el botn Siguiente

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    5. Escoger la ruta y el lugar de instalacin y dar clic en el botn

    siguiente.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    6. Seleccionar SAP Netweaver Developer Studio y dar clic en el botn Siguiente.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    7. Dar clic en el botn Install.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    8. Seleccionar la ruta del JDK de Java y dar clic en el botn

    Siguiente

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Netweaver Developer Studio:Instalacin

    9. Al finalizar la instalacin dar clic en el botn Terminar.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • SAP Java Development Environment

    Introduccin

    El Context en tiempo de diseo

    Elementos de Interface de Usuario

    Web Dynpro Controllers

    Mensajes y soporte a lenguajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Introduccin a Web Dynpro

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Qu es Web Dynpro?

    Desde un punto de vista tcnico, SAPs Web Dynpro para Java es un paso revolucionario al desarrollo de interfaces de usuario

    basadas en la web.

    Es un modelo de programacin basado en interfaces de usuario.

    Define una estructura estndar para las aplicaciones de usuario, usando el patrn de diseo MVC (model-view-controller).

    Define un conjunto de herramientas para el diseo de interfaces de usuario.

    Es una tecnologa para modula izar el software.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Beneficios de Web Dynpro

    El principal objetivo de Web Dynpro es habilitar a los desarrolladores de una herramienta para

    construir aplicaciones Web con el mnimo

    esfuerzo.

    Minimiza cdigo, maximiza el diseo.

    Separa el marco de la lgica.

    Rehus de componentes.

    Corre en mltiples plataformas.

    Internacionalizacin.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Escenarios de aplicacin de Web Dynpro

    Un modelo de Web Dynpro puede ser

    alimentado con

    informacin de las

    siguientes fuentes:

    Mdulos RFC

    Enterprise Java Beans (EJBs), los cules

    encapsulan lgica de la

    aplicacin.

    Web Services.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Model View Controller (MVC)

    El diseo clsico de MVC crea una arquitectura para desacoplar los datos. Desacopla la lgica de presentacin de la lgica de la aplicacin. Desacopla la lgica de negocio de la lgica de la aplicacin.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Web Dynpro Component

    La arquitectura de Web Dynpro puede ser dividida en cuatro cuadrantes: La lnea punteada horizontal separa las entidades que son visibles fuera del componente, de las que son visibles fuera del componente.

    La lnea punteada vertical separa las entidades no visuales, o entidades programables.

    Las nicas partes de un Web Dynpro Component que estn visibles haca el mundo son: Interface View, Interface Controller.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Web Dynpro Component Interface

    The Component InterfaceEl Component Interface consiste de cero o ms partes visuales y una

    programable

    El Interface Controller es la interface programable que da acceso a la funcionalidad del componente.

    El Interface View es un componente visual reutilizable que puede ser presentado a travs de un Web Dynpro Framework genrico.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Web Dynpro Application

    Una aplicacin Web Dynpro es el nico punto de entrada a un Web Dynpro Component y puede ser solo invocado va URL.

    En orden de definir una aplicacin Web Dynpro, se debe definir: El componente para ser invocado. Este componente es conocido como root component. El Interface View de el root component ser usado como la vista inicial. El Inbound Plug actua como punto de entrada al Interface View.

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Terminologa Bsica

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    El nodo root de un Web Dynpro Project representa una unidad deployable de cdigo.

    El nodo Web Dynpro es el nodo dentro del cul todas aplicaciones Web Dynpro, models y componentes viven.

    Cada proyecto o componente de desarrollo tiene dos tipos de diccionario: Un diccionario local en el que son definidos tipos de datos. Un diccionario separado por modelo.

  • Terminologa bsica (2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Web Dynpro Component Interfaces Si otro diferente Web Dynpro Component es necesario para implementar una interface comn, entonces se definen interfaces genricas como esta.

    Un Component representa un conjunto de tareas que forman una unidad lgica de negocio. Un View es el nico tipo de control visual. Window define la interface visual de una aplicacin Web Dynpro.

  • Terminologa bsica (3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Custom Controllers Son usados para encapsular unidades de funcionalidad que son compartidas por algunos controladores y no son directamente usadas

    para la interaccin con el usuario. Ej. Cuando se llama una BAPI y el resultado

    requiere ser ordenado antes de presentarse.

    Component Controller Este es el controlador que direccionara la funciona-lidad a todo el componente. Es creado cuando el componente es creado.

    Interface Controller Es el nico controlador visible a otros components. View Controller Son usados para manejar todos los aspectos relacionados con los aspectos de desplegar datos e interacciones de usuario.

  • Custom Controller Arquitecture

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Todos los Custom Controllers guardan sus datos en una jerarqua llamada Context.

    Todos los Controllers son programas independientes que no tienen ningn funcin en otros Controllers.

    El Custom Controller reside en memoria hasta que su componente exista.

  • View Controller Arquitecture

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Un window es el conjunto de todas las posibles vistas que pueden ser visibles en la pantalla.

    Un window puede tener uno o ms view sets dentro de ella. Un view set es subdividido en view areas en las cuales se puede deplegar una o ms windows.

    Un view area puede solo desplegar un view

  • Navegacin entre Views

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Navigation ModelerEs un editor grfico en el cul se pueden definir links de navegacin que

    existen entre varias views.

    El Navigation Modeler permite manipular: View Sets Views Inbound and Outbund Plugs Navigation Links

  • Navegacin entre Views (2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Outbund PlugsLlamar a un mtodo Outbund Plug provoca lanzar un evento de

    navegacin.

    Inbound PlugsInbound Plugs son mtodos manejadores de eventos que son invocados

    cuando se disparo un evento Outbund Plug.

    LinksOutbund e Inbound Plugs son relacionados a travs de un Link, creado en

    el Navigation Editor.

  • Context Mapping

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Context MappingContext Mapping permite a un nodo del contexto de un controller suplir o

    compartir datos con otro nodo de contexto de otro controlador. Este es el principal mecanismo para compartir datos entre controladores.

  • Poniendo datos en la pantalla: Data Binding

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Data BindingData Binding significa que los datos son automticamente transportados del

    contexto de unView Controller a un elemento UI.

  • Web Dynpro Models

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Web Dynpro ModelsUn Web Dynpro Model encapsula una variada funcionalidad que es externa

    de Web Dynpro. Ej. El llamado a una BAPI

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Ejercicio 1

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    El Context en tiempo de diseo

    Elementos de Interface de Usuario

    Introduccin a Web Dynpro

    Mensajes y soporte a lenguajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Web Dynpro Controllers

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Contenido

    Standard hook methods

    Instance methods

    Events and events handlers

    Actions and plugs

    Shorcut variables

  • Standard Hook Methods

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Implementacin de cdigoCada Web Dynpro Controller es un programa de Java. La definicin de estos

    programas es generada automticamente.

    Standard Hook MethodsEn cada Controller hay ciertos mtodos que siempre estn presentes. Estos

    mtodos viene vacos y se puede agregar cualquier cdigo que el

    programador desee.

  • Standard Hook Methods, para todos los

    Controllers

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    wdDoInit ()Este mtodo es llamado una sola vez durante el ciclo de vida del controller.

    Toda la inicializacin debera hacerse aqu.

    wdDoExit()Este mtodo es llamado nicamente en el trmino de vida del controller.

  • Standard Hook Methods Component Controller

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    wdDoPostProcessing()Es posible usar este mtodo para validar datos antes que el proceso de

    negocio tome el control del programa.

    wdBeforeNavigation()Este mtodo es llamado solo antes se procesan los procesos de navegacin,

    esto permite implementar cdigo para modificar la navegacin.

  • Standard Hook Methods View Controller

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    El mtodo ser llamado solo s: Cuando el view es la primera vez que se ejecuta. Cuando el view ha realizado algn evento o accin que modifique el procesamiento del view controller.

  • Controller Instance Methods

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Controller Instance MethodsEstos mtodos aplican para View y Custon Controllers. Para estos dos controllers se pueden declarar mtodos desarrollados por el desarrollador

  • Creating Instance Methods

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para crear un Intance Method, edita el Controller y escoge el tab Methods y dar click en el botn New.

    Seleccionar si se requiere crear un normal method o un event handler method. Seleccionar el nombre y tipo de retorno del mtodo. Finalmente seleccionar los parmetros que recibe el mtodo.

  • Member Variables and Utility Methods

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    //@@begin others Este bloque delimita el rea en la cul se puede colocar todas las declaraciones de member variables y declaraciones estticas de mtodos.

    Estas declaraciones sern visibles para todo el controller.

    El cdigo puesto aqu solo ser visible para el controller donde se definan. Utility methods pueden ser declarados aqu. Ej. Suma (a, b).

  • Controller Shorcut Variables

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    wdThiswdThis es una variable que hace referencia al mismo Web Dynpro. Esto da

    acceso a la funcionalidad estndar de WebDynpro como logging, parameter

    mapping y validacin.

    wdContextwdContext es la referencia al controller context root node.

    wdControllerAPIwdControllerAPI hace referencia a l API de el actual controller.

    wdComponentAPIwdComponentAPI hace referencia a l component controller.

  • Custom Controllers - Events

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Custom Controller EventsSon usados en tiempo de diseo, manejan la definicin y suscripcin de

    eventos por l desarrollador. Un uso tpico es cuando el usuario da un click en

    algn botn, a reaccin de esto el View Controller termina su procesamiento y

    despus de lanza el evento, este evento ser recibido por los Controllers que

    estn subscritos a l. En otras palabras hay un Controller que esta hablando y

    otro que esta escuchando y esperando a que algn evento sea lanzado.

  • Definiendo un Event

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para crear un nuevo evento, edita el controller y escoge el tab Events. Presionar el botn New.

    Ingresar el nombre del evento. Finalmente definir los parmetros o firma del evento.

  • Subscripcin a un Event

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Subscripcin para un evento estticamenteEl campo Even Source y Suscribed Event para el mtodo manejador de

    eventos ser llenado con el nombre del Controller que dispara el evento.

    Subscripcin para un evento dinmicamenteCualquier mtodo podr subscribirse al evento dinmicamente.

    Lanzando el eventoUn evento {nev} puede ser lanzado por cualquier mtodo de l controller

    contenedor del evento usando el mtodo wdThis.wdFireEvent{Nev}().

  • View Controllers Actions and Plugs

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    View Controller ActionsUna accin es conceptualmente lo mismo que en un evento, pero con las

    siguientes diferencias:

    Una accin puede solo ser definida en el View Controller. Una accin {act} es relaciona un evento del lado del cliente a un manejador del evento onAction {act}.

    Muchos elementos UI pueden lanzar una accin. Ej. Un botn.

    View Controller Navigation Plugs Outbound plugs Un evento de navegacin es creado cuando un Outbund plug es disparado. La declaracin en el View Controller es: wdFiredPlug{Npo}().

    Inbound plugs Un inbound plug es el manejador de evento de navegacin que respondera cuando el evento sea lanzado. La declaracin ser: onPlug{Npi}.

  • Actions Relacionando un evento del browser a un mtodo del View Controller

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    Elementos de Interface de Usuario

    Introduccin a Web Dynpro

    Mensajes y soporte a lenguajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    El Context en tiempo de diseo

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Contenido

    La estructura del Context

    Context Mapping

    Interal Mapping

    External Mapping

  • Context El corazn de un Controller

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    ContextCada Web Dynpro Controller (excepto el interface view controller) tiene

    exactamente un jerarqua de datos guardada en una estructura conocida

    como un context.

    Context estructureNormalmente la estructura (metadata) de un context ser definida en

    tiempo de diseo, pero tambin puede hacerse en tiempo de ejecucin.

    Compartiendo datos entre diferentes controllersLa informacin dentro de un contexto de un custom controller puede

    accederse por otro controller (view o custom) por una tcnica llamada

    context mapping. Este es el mecanismo primario para compartir datos.

  • The Context Editor

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Context editorEl Context editor es un editor grfico que permite estructurar el context de

    un controller.Importante: Se debe tener siempre abierto el Properties View cuando se edita el

    context porque hay ciertas propiedades que pueden afectar crticamente el context

    en tiempo de ejecucin.

  • Definiendo la estructura del context

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Context StructureTodos los context de los controllers tienen una estructura formada por nodes y

    attributes.

    NodesUn context node es una abstraccin usada dentro del Web Dynpro Framework.

    La mxima y mnimo nmero de elementos dentro de una coleccin es limitado

    a uno.

    AttributesUn context attribute no puede existir sin un nodo.

  • Tipos de Context Attributes

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Despus de crear un context attribute, este es creado con un tipo string. Desde el property view de el attribute, el tipo puede ser cambiado. Un nmero de diccionarios locales son provistos por el WD Framework.

  • Definiendo Tipos simples en el Diccionario

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para definir un nuevo tipo en el diccionario, abra el diccionario local. Desde el men del context escoga Simple Type y seleccionar Create Simple Type.

    Ingrese el nombre del tipo, un paquete y presione Finish.

  • Context Structure Design Time (1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    The Context at design timeEn tiempo de diseo se crea la estructura dentro de la cul los datos vivirn.

    Cardinality propertyTodo context node tiene una propiedad llamada Cardinality. Describe el mximo y

    mnimo nmero de elementos del nodo en tiempo de ejecucin.

    Cardinalidad mnima: 0 o 1 Cardinalidad mxima: 1 o nLos cuatro posibles valores de la cardinalidad son:

    0..1 Cero o un elementos 0..n Cero o ms elementos 1..1 Uno y solo un elemento 1..n Uno o ms elementos

  • Context Structure Runtime (1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    La propiedad Singleton de un context nodeNote que el nodo SalesOrders tiene un nodo hijo llamado LineItems. El LineItems

    es un nodo distinto con su propia coleccin de elementos.

    Node LineItems es un non-singleton (Singleton=false)Si el nodo LineItems tiene la propiedad Singleton = false, entonces para cada

    elemento en el nodo padre (SalesOrders), habr distintas instancias de

    LineItems.

  • Context Structure Design Time (2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Node LineItems es un singleton (Singleton=true)El nodo LineItems ahora tiene la propiedad Singleton puesta a true (que es

    el default), entonces no importa cuantos elementos estn presentes en el

    nodo padre (SalesOrders), porque solo habr solo una instancia de

    LineItems. En otras palabras si el nodo SalesOrders contiene las ordenes

    1000, 1001 y 1002; entonces de alguna manera se debe asegurar que

    cuando estoy leyendo la orden 1001, este leyendo LineItems para la orden

    1001.

  • Context Mapping

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Context MappingContext Mapping permite que un controller (tpicamente el view

    controller) acceda a datos que han sido procesados por algn otro

    controller.

    Data Modeler

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Ejercicio 2

  • Context at Runtime Accesando a valores del nodo

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para acceder a los nodos del contexto, simplemente se necesita una referencia wdContext.node{cn}() donde {cn} es el nombre del nodo del

    contexto. Esto regresa un objeto {no} del tipo I{cn}node

  • Context at Runtime Accesando a valores del nodo (2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para acceder a atributos individuales del nodo dentro del context nodo, los 3 pasos siguientes deben ser realizados:

    Acceder al nodo relevante de la forma wdContext.node{cn}() donde {cn} es el nombre del nodo del context node. Esto regresa un {no} de tipo I{cn}Node.

    Obtener una referencia del elemento del nodo seleccionado, de la forma {no}.current{cn}Element() que regresara un objeto {el} de tipo I{cn}Element.

    Una vez que el elemento correcto ha sido seleccionado, se llama a los mtodos que acceden la informacin de la forma {el}.get{ca}

  • Context Node Accediendo a valores del nodo(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Generalizando el cdigo

  • Context Node Creando valores del nodo(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para aadir un elemento a un nodo se requieren los siguientes tres pasos: Acceder al nodo wdContext.node{cn}() donde {n} es el nombre del nodo. Esto regresa un objeto {no} del tipo I{cn}Node

    Crear un nuevo elemento usando el mtodo {no}.create{cn}Element(). Esto regresa un objeto {el} de tipo I{cn}Element

  • Context Node Creando valores del nodo(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Generalizando

  • Context Node Acceso genrico a valores de elementos del nodo(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Context Node Acceso genrico a valores de elementos del nodo(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Generalizando

  • Context Node Creacin genrica a valores de elementos del nodo(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Context Node Creacin genrica a valores de elementos del nodo(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Generalizando

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Ejercicio 3

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    El Context en tiempo de ejecucin

    Introduccin a Web Dynpro

    Mensajes y soporte a lenguajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Elementos de Interface de Usuario

  • Qu es un elemento UI?

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Un elemento UI es cualquier entidad grfica que ocupa una posicin dentro del view layout.

    Los elementos UI no necesariamente estn visibles en la pantalla.

  • Categoras de elementos de Interface de Usuario

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Hay numerosos elementos de interface de usuario viables para disear la interface grfica de una aplicacin Web Dynpro.

    Simple Standard elementsButton, Caption, CheckBox, CheckBoxGroup, DropDownByIndex, Image,

    DropDownByKey, FileDownload, FileUpload, HorizontalGutter, IFrame, Label,

    InputField, LinkToAction, LinkToURL, ProgressIndicator, RadioButton, TextEdit,

    RadioButtonGroupByKey, TextView, TimeTrigger, ToolbarButton, ToolbarInputField,

    ToolbarDropDownByKey, ToolbarDropDownByIndex, ViewContainerUIElement.

    Complex Standard elementsDateNavigator, PhaseIndicator, RoadMap, TabStrip, Table, Tree

    Container Standard ElementsGroup, ScrollContainer, Transparent Cointaner, Tray

  • Usando de View Editor

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Muchos elementos grficos pueden disparar eventos del lado del cliente.

    Estos pueden ser encontrados debajo el Event propertie del nodo, solo es

    necesario asociarlo con alguna accin.

  • Context Binding

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Context Binding es la asociacin de una propiedad del elemento UI con un nodo o atributo. Ej. El valor de un Inputfield, para cambiar el valor del elemento solo es

    necesario cambiar el valor del atributo del contexto asociado al control grfico.

  • Poniendo data en la pantalla

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Container UI elements

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Container UI elementsSon elementos que contienen elementos de interface de

    usuario como hijos, entre ellos esta:

    IFrame Group ViewContainerUIElement Tray TransparentContainer ScrollContainer

  • FlowLayout layout Manager

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    FlowLayout layout manager Es el layout por default de todos los elementos de interface de usuario. Los elementos de interface de usuario toman posicin por si mismo de izquierda a derecha a travs la pantalla.

    FlowLayout layout no es el ms til contenedor de elementos UI.

  • RowLayout layout manager

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    RowLayout layout manager Permite a los elementos alinearse en especficos renglones. Se puede especificiar que ciertos elementos UI aparezcan al principio de un nuevo rengln, poniendo layoutData a RowHeadData.

  • MatrixLayout layout Manager

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    MatrixLayout layout manager Matrixlayout permite a los elementos de interface de usuario ser alineados en especficos renglones pro viendo un alineamiento vertical.

    Se puede especificar que cierto elemento UI aparezca al inicio de cada rengln, poniendo la propiedad layoutData a MatrixHeadData.

  • GridLayout layout manager

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    GridLayout layout manager GridLayout permite a los elementos de interface de usuario alinearse dentro de un grid en el cul siempre hay un nmero igual de columnas por

    rengln.

    Una vez se especifique el nmero de columnas los elementos sern aadidos de izquierda a derecha.

    Si cambia el nmero de columnas a 3 automticamente se regenera la pantalla.

  • Table UI Element

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    TableTable es un elemento ms complejo que tiene como hijos ms elementos,

    entre los cuales estn Table Column, Table CellEditor, etc.

  • Binding a Table UI element to the context

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Binding a Table UI element to the context

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    TableColumnLos elementos deTableColumn deben ser referenciados a los

    atributos del nodo. Este elemento tiene su propio elemento Caption para

    poner la etiqueta del encabezado de las columnas.

  • Seleccionando mltiples renglones de una tabla

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Mltiple seleccin de renglones en una tablaPara permitir mltiple seleccin en una tabla se debe cambiar la

    cardinalidad del nodo del contexto a 0..n o 1..n

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Ejercicio 4

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    El Context en tiempo de ejecucin

    Introduccin a Web Dynpro

    Elementos de Interface de Usuario

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Mensajes y soporte a lenguajes

  • Internationalization

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Internationalization Permite a l mismo programa operar en mltiples lenguajes sin necesidad de tener diferentes versiones de el cdigo para cada

    lenguaje.

  • XLIFF estndar

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    El lenguaje XML Language Interchange File Format (XLIFF) es un estndar por el cul puede ser guardado especifico lenguaje de texto.

    Todos los textos especificos de cada lenguaje son guardados en .xlf archivos dentro src/packages/{pckn}/../{pck1}.

    El lenguaje que los textos asumen por default es el declarado cuando se crea el proyecto.

  • Language specific text within Web Dynpro

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    En el Navigator View, localiza todo los archivos .xlf bajo el directorio src/packages/{pckn}//{pck1} Usando el context menu copiar y pegar cada archivo asegurndose de renombrar el archivo correctamente. Si {file}.xlf es el nombre del archivo del

    lenguaje del proyecto a {iso} indica el cdigo ISO para el lenguaje o dialecto

    requerido, entonces la regla para los nombres de los archivos es:

    {file}.xlf -> {file}_{iso}.xlf

    Finalmente, hacer un rebuild al Web Dynpro Project y crear el archivo.

  • Runtime Local Identification

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Determinando el texto especifico en el lenguaje requerido

  • Message Editor

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Message EditorEl Message Editor crea 4 tipos de mensajes Standard, Warning, Error

    y Text. Los tres primeros son usados para suplir informacin a la pantalla en la

    forma de mensajes.

    Cualquier mensaje declarado creara una constante Java Imessage{nc}

  • Imprimiendo mensajes en pantalla

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Default Message AreaPor default los mensajes aparecen como una tabla en la parte inferior

    izquierda de la pantalla.

    Message Area UI ElementSe puede agregar un Message Area UI Element en cualquier parte del View,

    esto marcar la posicin en la cul los mensajes aparecern.

  • Web Dynpro Messages

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Ejercicio 5

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    El Context en tiempo de ejecucin

    Introduccin a Web Dynpro

    Elementos de Interface de Usuario

    Mensajes y Soporte a Mensajes

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Servicios de Interface de Usuario Genricos

  • Tres tipos de Value Help(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Simple Value SelectorSimple Value Selector (SVS), es el nombre dado

    a un drop down list box que desplega un

    conjunto de valores. SVS es til para valores

    pequeos, como mximo 30.

    Extended Value SelectorSi el nmero de entradas en un drop down list

    box llega a ser muy grande entonces Extended

    Value Selector (EVS) es lo recomendable. EVS

    provee funcionalidad sort y search.

    Generic UI ServicesEl ambiente Web Dynpro provee servicios

    genricos UI el desarrollo. Por ejemplo: para

    pases, cdigo postales.

  • Tres tipos de Value Help(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Object Value Selector (OVS)

    En algunas ocasiones es necesario

    buscar objetos en vez de valores. Por

    ejemplo: El usuario requiere ingresar el ID

    del cliente, dependiendo de este criterio de

    bsqueda, la pantalla mostrara los

    resultados de la bsqueda.

    Este control requiere que el desarrollador

    escriba algn cdigo especifico.

  • Simple Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. Crear un simple tipo en el diccionario conteniendo una enumeration.

    2. Crear un context attribute de este simple tipo.

    3. Llenar la propiedad selected key de un DropDownByKey.

  • Extended Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. Crear un simple tipo en el diccionario conteniendo una enumeration.

    2. Crear un context attribute de este simple tipo.

    3. Llenar la propiedad value de un InputField.

  • Dynamic Extended Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. Crear un context attribute de tipo string.

    2. Llenar la propiedad value de un InputField.

    3. Implementar el cdigo mostrado en la siguiente lmina.

  • Dynamic Extended Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Ejercicio 6

  • Dynamic Extended Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    El Context en tiempo de ejecucin

    Introduccin a Web Dynpro

    Elementos de Interface de Usuario

    Mensajes y Soporte a Mensajes

    Servicios de Interface de Usuario Genricos

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

    Debbuging

  • Switching on Debug Mode

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Usar el J2EE Engine View en NWDS1. Seleccionar el server node.

    2. Dar click en el botn derecho

    3. Seleccionar Enable debugging of process.

  • Switching on the display of line numbers

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. Seleccionar

    Preferences option del Window Menu.

    2. Expander la rama

    Java y seleccionar Editor

    3. Verificar que este

    activado Show line numbers

  • Poner un Breakpoint

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. Abrir la implementacin de cualquier controller.

    2. Dar doble click en el margen de la izquierda del cdigo.

    3. El breakpoint ser fijado con una lnea sobresalteada.

  • Definiendo la configuracin de Debug y el punto de

    comienzo para la sesin de Debug

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. Seleccionar Run -> Debbug en el men.

    2. Seleccionar Web Dynpro Application y seleccionar New.

    3. Debajo de Name ingrese el texto que identifica la configuracin de debugging.

    4. Seleccionar Browse y seleccionar el nombre del proyecto a hacer debugging.

    5. Si la aplicacin no ha sido deployada en el servidor, seleccionar Create and

    deploy.

    6. Presionar el Apply.

  • Debug Perspective

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    The debugging perspectiveUna vez iniciado el proceso de debugging , Eclipse abrira la perspectiva de debugging.

    Debug View - Despliega el stack de los threads del programa.

    Editor View Mostrara la lnea de ejecucin del progarma.

    Variables View Muestra el valor de las variables en el tiempo x.

  • Debug View: Step Execution

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Step Info (F5) Ejecuta la siguiente lnea de cdigo. Step Over (F6) Ejecuta la lnea de cdigo sin entrar a llamadas de mtodos. Step Out (F7) Sale del mtodo que se esta ejecutando y regresa al punto donde fue llamado.

    Resume (F8) La aplicacin continua la ejecucin y cierra la sesin de debbugging. Suspend Pausa la ejecucin y permite ver el estado de las variables. Terminate Termina la ejecucin del programa.

  • Variables View

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Variables ViewPermite cambiar los valores de las variables.

  • Terminando la sesin de Debugging

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    1. En Debug View, llamar al nodo ms alto ([Web

    dynpro]).

    2. Escoger Terminate.

    3. Escoger Remove All Terminated

  • Restarting a debug session

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Extended Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    El Context en tiempo de ejecucin

    Introduccin a Web Dynpro

    Elementos de Interface de Usuario

    Mensajes y Soporte a Mensajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Web Dynpro Models : Adaptive RFC Layer

    Modificaciones dinmicas en tiempo de ejecucin

  • Dynamic Runtime Modifications

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Runtime Modifications

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Value Node Creation

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Value Node Creation(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Value Node Creation(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Value Node Creation(4)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Value Node Creation(5)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Dynamic Value Node Creation(6)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Principios para crear un nodo dinmicamente

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Cuando se crea un nodo del contexto en tiempo de ejecucin, se deben seguir los siguientes pasos:

    1. Obtener una referencia a el nodo padre. En otras palabras llamar a

    wdContext.getChildNode( ({cn},int).2. Con la instancia del nodo obtenido en el paso 1, llamar el mtodo

    getNodeInfo().

    3. Llamar el mtodo addChild() del nodo padre.

  • Dynamic Extended Value Selector

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    SAP Java Development Environment

    Introduccin

    Web Dynpro Controllers

    El Context en tiempo de ejecucin

    Introduccin a Web Dynpro

    Elementos de Interface de Usuario

    Mensajes y Soporte a Mensajes

    Servicios de Interface de Usuario Genricos

    Debugging

    Modificaciones dinmicas en tiempo de ejecucin

    Web Dynpro Models : Adaptive RFC Layer

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Contenido

    Invocacin remota de la funcionalidad ABAP.

    El manejo y creacin de Adaptive RFC (aRFC) model objects.

    El uso a RFC model objects.

    Configuracin del SLD y JCo Connections.

  • Interface de Arquitectura RFC

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    The SAP Enterprise Connector crea un proxy en tiempo de diseo. Todos los programas externos que deseen invocar alguna funcionalidad dentro de un SAP System debern usar RFC.

  • Interface de Arquitectura RFC(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Adaptive RFC fue desarrollada para simplificar e implementar totalmente, la funcionalidad de JCo.

    Cada vez que RFC es llamado en un sistema SAP, la metadata (definicin) de la interface es verificada por cambios.

    Si la interface ha sido cambiada desde la ltima invocacin la aplicacin checa el diccionario por cambios y reaccionar apropiadamente.

    aRFC es automticamente actualiza el diccionario por cambios en la metadata (definicin), para reaccionar adecuadamente.

  • Aprovechamientos de Adaptive RFC

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    aRFC puede adaptarse a la adicin de nuevos campos en una existente estructura de interface

    Cualquier mdulo de funciones liberada por SAP es hecha a travs de

    una estructura .APPEND que puede tambin ser extendida por el cliente.

    Si este tipo de interface cambia el Adaptive RFC (aRFC) puede

    reaccionar, y cambiar la definicin (metadata) en tiempo de ejecucin.

    La aplicacin Web Dynpro debe checar por cambios en la metadataSi se requiere que la aplicacin reaccione a cambios para nueva metada

    suplida por aRFC en tiempo de diseo, entonces se debe construir una

    aplicacin para checar por estos cambios.

    aRFC puede adaptarse a la adicin de nuevos campos dentro de una estructura existente, pero no puede adaptarse a la adicin de nuevas

    estructuras.

  • La interface de un mdulo de funciones ABAP

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Todos los mdulos de funciones ABAP tienen la siguiente interface: Import Parameters Escalar o estructura de parmetros de entrada, tiene una cardinalidad de 0..1.

    Export Parameters Escalar o estructura de parmetros de salida, tiene una cardinalidad de 0..1.

    Changing Parameters Escalar o estructura de parmetros de entrada y salida. Tiene una cardinalidad de 0..1. RFC no usa parmetros CHANGING.

    Tables Estructuras de parmetros de entrada y salida con cardinalida 0..n. Exceptions Textos que identifican una terminacin inesperada dentro del mdulo de funciones.

  • Qu es una BAPI?

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    En 1996 SAP Introduce el concepto de Business Application Programming Interface (BAPI).

    Una BAPI es un mdulo de funcin. Una BAPI debe:1. Tener un nombre que empiece por BAPI_

    2. Implementar el mtodo de un SAP Business Object.

    3. Mantener una interface esttica a travs de diferentes versiones del sistema.

    4. Ser remoto. Habilitar el flag de Remote.5. Correr sin la necesidad de interaccin con el usuario. Si la BAPI requiere

    cualquier pantalla de SAPGUI, la conexin RFC terminara inmediatamente.

    6. Manejar errores.

    7. No causar que la sesin de ABAP cambie.

  • Requerimientos mnimos de SAP

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Las habilidades que necesita un desarrollador Web Dynpro son mnimos para

    usar una interface aRFC. Solo se requiere:

    Logearse dentro un sistema SAP. Usar la transaccin SE37 (Function Module Builder) para:

    Examinar la interface del mdulo de funcin. Correr el mdulo de funcin con los apropiados datos de test. Examinar la salida despus de la ejecucin del mdulo de funcin.

    Usar la transaccin SE11 (ABAP Dictionary) para examinar la estructura de los parmetros de entrada o salida.

    Usar la transaccin SE16 (Data Browser) para desplegar los contenidos de un tabla de base de datos.

  • Creacin de un aRFC Model

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Creacin de un aRFC Model(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Principios para crear un nodo dinmicamente

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Logical System Names son nombres que pueden ser el nombre deseado y deben ser nombrados de acuerdo al tipo de informacin de

    negocio que ellas proveern.

    Ejemplo: Si se desea llamar a un mdulo de funciones HR Payroll en el sistema DEV, entonces HR_PAYROLL_DATA y

    HR_PAYROLL_METADATA

  • Creacin de un aRFC Model(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Como para SAP GUI de Windows, la informacin desplegada por el Drop Down en el Load Balancing tab es obtenida del archivo saplogon.ini, el cul

    es localizado en el directorio Windows.

  • Creacin de un aRFC Model(4)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Esta pantalla de inicio aparecer vacaYa que SAP contiene 9500 mdulos de funciones remotos, en esta

    pantalla primero se deber filtrar la informacin.

  • Creacin de un aRFC Model(5)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Una vez que la importacin haya finalizado, usted vera el Import

    Log.

    Si la interface del mdulo de funciones remoto cambia durante

    el desarrollo, se deber reimportar

    el modelo y usted vera los cambios

    en el Import Log.

  • Qu tiene el modelo aRFC creado?

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Java Dictionary Structures

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Java Dictionary Structures tienen el mismo nombre como su correspondiente

    estrucutra en ABAP

  • The Model Class Hierarchy(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • The Model Class Hierarchy(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Scalar ParametersUn parmetro escalar es cualquier valor que describa un

    simple campo. Estos no son desplegados directamente, sino que hay

    dar doble click para desplegarlos.

  • The Model Class Hierarchy(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • The Model Class Hierarchy(4)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Bi-directional parametersDado el hecho de los parmetros CHANGING y TABLES es necesario

    preservar una imagen de estos parmetros en los parmetros de

    input y output.

  • Model object managment: SAP Recommendations

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    DCs son normalmente construidos con SAP Java Development Infrastructure (JDI).

  • Model object managment: SAP Recommendations(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Model object managment: SAP Recommendations(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Para agregar un proyecto Web Dynpro a la parte pblica de un DC, escoger Add to public part desde el context menu.

  • Model object managment: SAP Recommendations(4)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Es importante, que una vez hecho contruido el DCs, se debe hacer build de el DC. Esto proceso es diferente a el Rebuild Project. Cada parte pblica se

    convierte en archivo JAR, y proceso de DC Build reconstruye las partes

    pblicas.

  • Context Model Nodes

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Un Context Model Node es un nodo que obtiene la metadata

    desde el objeto model.

    Un Context Model Node debe ser ligado a un model obejct para

    poder hacerlo reusable.

  • Binding a context model node

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Un Context Model Node debe ligarse a un model object usando el Data Modeller Tool, o manualmente seleccionando Edito Model Binding.

  • Arquitectura general para una invocacin RFM

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Se transporta la data desde el Model a los elementos de interface de usuario haciendo mapping y binding.

  • Usando Model Object en tiempo de ejecucin

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Usando Model Object en tiempo de ejecucin(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

  • Configurando SLD y JCo Connections

    Importando y desplegando el catlogo de Software

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Importar el catalogo de software es el primer paso en configurar el sistema SLD. El catalogo de software contiene toda la informacin tcnica de todos los posibles

    productos de SAP y componentes de software.

    Para revisar la informacin tcnica y si existe el sistema al cul se quiere conectar se necesita consultar el catalogo SLD en: http://host:port/sld ->Software Catalog

    Si producto o componente de SAP no existe, se deber exportar el nuevo catalogo de: http://host:port/sld -> Administration -> Content Import -> Browse

  • Defining Technical Systems

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Un Technical System es un objeto lgico, que contiene toda la metadata (definicin) de un cierto sistema SAP, como el ID del sistema, nombres de

    servidores, logon group, etc.

    Para definir un Technical System, abrir la siguiente pgina:http://: Technical System

  • Defining Technical Systems(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Procedimiento1. En la primera pantalla presione New Technical System

    2. Seleccionar Web AS ABAP y presione Next

    3. Ingrese el SID de el sistema SAP, el nmero de instalacin y el nombre

    del host DB. El nmero de instalacin puede ser encontrado ingresando

    al sistema SAP y en el men seleccionar System -> Status

  • Defining Technical Systems(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Procedimiento1. Ingrese el Message Server host, instance number, message server

    port y logon groups.

    2. Presionar Next.

    3. En la siguiente pantalla puede aadir nombre de servidores y nmero

    de instancia. Presionar Next.

  • Defining Technical Systems(4)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Procedimiento Seleccionar el producto, describiendo el sistema SAP. Presionar Finish.

  • Defining Logical System Names(1)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    El System Landscape Directory (SLD) debe ser arrancado y configurado. Arrancar el Web Dynpro Content Administrator,ingresando la URL

    http://:/webdynpro/welcome -> Content Administraror

    Se debe tener autoridad de administrador para realizar esta tarea.

  • Defining Logical System Names(2)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Todos los destinos JCo deployados aparecen en esta lista. Los iconos rojos indican que la conexin JCo es requerida por una aplicacin y no ha sido definida.

    Crear el link nombrado Create.

  • Defining Logical System Names(3)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Paso 1Ingresar el Client del sistema SAP.

    Presionar Next.

    Maximum Pool Size: Determina cuantas conexiones deben abrirse para el actual usuario. Incrementar este valor incrementar el tiempo para obtener una conexin.

    Maximum Connections: Mximo nmero de conexiones por usuario. Connection TimeOut: Define cuanto tiempo (en segundos) permanezca viva una conexin despus de usarla.

  • Defining Logical System Names(4)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Paso 2 Seleccionar el servidor J2EE para el cul se requiere la conexin JCo. Presionar Next.

    Paso 3 Seleccionar el tipo de conexin Application Data o Dictionary Meta Data

  • Defining Logical System Names(5)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Paso 4 Seleccionar Server y/o Logon Groups, para revisar Logon Groups cheque la transaccin SMLG.

    Presionar Next.

  • Defining Logical System Names(6)

    Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    Paso 5 Si selecciono Application Data, se tendr cuatro escenarios de autentificacin, se debe usar la adecuada, para temas de desarrollo se

    deber usar User/Password.

    Para el caso de Dictionary Data solo podr seleccionarse

    User/Password.

    Presionar Next.

  • Confidencial - MVM Ingeniera de Software S.A., todos los derechos reservados

    GRACIAS