You are on page 1of 139
WEB DYNPRO z LL SAP NetWeaver” WEB DYNPRO. INTRODUCGION A WEB DYNPRO 1 Conceptos Basicos MVC (Modelo Vista Conirclador) 2 Cambiando de Perspectiva 4 Creando un Nuevo Proyecto 5 Greando nuestro primer Controladory Visla 8 Greando el modelo de datos 13 Relaclonando el Contrllar con i Vista 13 Creando un layout para las Vistas, 2 Relacionando Vistas de una misma Ventana 30 Navegacién entre las Vistas 35 Defnicion de un nueva Método aT limplementando un Método 29 Creacién de la Aplicacion 43 LLAMADO A FUNCIONES REMOTAS 48 Utlizacién de Funciones REC desde nuestra Web Dynpro 6 Creacién de una nueva Web Dynpro a7 Importacian de una funcién RFC 4 Relacionar Modelos can el Contexto 54 Greacin de relaciéa entre la Vista y el Contiolader 7 Creacién dol Layout 60 CGodificacion dela llamada a la Funcién 82 Creacion de la Aplieacion 68 ALY. oe a Lister una tabla da R3 70 Greando el Modo B Asociando e! Modelo con los Contexios 78 ‘Aimado de la Vistat (Pantala de Selecci6e) 33 ‘Amado dela Vista2 (Tabla con los Resultados) 87 Un poco de eédigo 89 Cieando ta Aplicacién 2 ANEXOS 94 Diccionario 94 Tipos de datos simples 05 Estructuras 29 Ingresar valor enire grupo de valores 401 Ingresar valor entre grupo de valores dindmicos 102 (OVS: Object Value Selector 104 Set de Vistas Tl Mensajes 113 Descarga de Archivos 113 INTRODUCCION A WEB DYNPRO Conceptos Ba -08 MVC (Modelo Vista Controlador) El Modelo Vista Controlador es un patron de arquitectura de software utiizado principalmente en aplicaciones web. Nacide en 1979 por la gente de Xerox e implementado por primera vez sobre Smalltalk (lenguaje orientado @ objetos), Io Que busca es separar el modelo de datos, la interfaz de usuario y la logica de negocio en tres componentes distintos, EI modelo os la representacién de la informacién con la cual se esté operando. La légica de datos es la encargada de asegurar la integridad de los mismos. Muchas aplicaciones utiizan sistemas de persistencia para guardar u obtener ica informacién. MCV no hace mencién especifica de esto ya que se presupone que dicho acceso a la base de datos se encuentra encapsulado en el modelo de datos, La vista se encarga de representar gréficamente el modelo de una forma ‘amigable al usuario para que el mismo pueda interactuar con el mismo. Si bien el concepto de MVC se encuentra muy ligado con las aplicaciones web, no es un Fequisto que la vista sea proporcionada mediante HTMIL, pudiendo ser realizada con otras tecnologias web 0 incluso de escritoria (como ser Swing de Java, JSP, PHP, Visual C++, etc). Por timo tenemos e! controlador, el cual respondiendo a ciertos eventos, _generalmente producidos por el usuario, puede producir cambios sobre el modelo de datos, ‘Aunque pueden existir diferentes implementaciones de MVC, ta légica de proceso generalmente cumple con el siguiente esquema 4) El usuario interactda de alguna forma con ta interfaz (presionando un botén, ulsando una tecla, etc) 2) El controlador captura el evento proveniente de la interfaz, generalmente mediante un gestor de eventos, y lo procesa, 3) El controlador accede al modelo, actualizandolo acorde al evento recibido. 4) La vista usa indirectamente al modelo para reflejar los cambios del modelo cen la intertaz hie Execution Reauest Paramoters - ok pROWSER GonrRoLLER WobeL $ 4 one cit cu Content Resulting ata Arays sy Me Be En la construccion de un modelo MVC existen ciertos puntos a tener en cuenta: + Lavista no conoce al medelo, es el modelo quien debe avisar ala vista que debe actualizarse. Esto se logra mediante patrones de disefio como el Observer Pattem, el cual sélo vamos a desarrallar ya que escapa de los ites del curso, + La vista no debe guardar informacién, solo mostrar la contenida en el Imedelo de datos, Esto es debido a que Su funcién es solo la de interactuar ‘con el usuario, * El controlador es el encargado de modificar el modelo, no la vista, Un controlador puede ser utiizado por una o varias vistas para modificar uno 0 varios ‘modelos, Cambiando de Perspectiva Antes que nada vamos a familarizamos un poco con el SAP Nelweaver Developer Studio, ef cual sera nuestra marco de trabajo, Desarrollado en base a la IDE Eclipse, of SAP Netweaver Developer Studio nos Proveera todas las herramientas para la creacién de Web Dynpros for Java Dado que es posible ullizarlo para programar sobre diferentes tecnologias, el mismo cuenta con la opcién de cambiar a perspectiva (ventanas a mostrar) para dejar a nuestro alcance las heramientas que nevesitemos Para poder cambiar la perspectiva de trabajo nos ditigimos a la Bara de Herramientas/ Window/Open Perspective/Other aru ad) > [Bree necies Pager [versie Una vez cambiada la perspectiva vamos @ ver que surgieron una serie de subventanas, las cuales nos van a faciltar el desarrall. Entre ellas, se encuentran el "Web Dynpro Explorer’, para poder explorar los proyectos siendo actualmente Uutlizados, el "Diagram View", para poder trabajar graficamente sobre la estructura de la salida visual (no layout), en el centro nos encontramos con una seccién que ‘no brinda la posibilidad de modificar el objeto actualmente siendo editado (en la imagen e! mismo es una Vista), propiedades el objeto, ete EDN ale ice asisie a Creando un Nuevo Proyecto Fara comenzar a trabajar necesitamos un nuevo proyecto, por lo que creamos uno diigiéndonos a la Barra de Herramientas/File/New/Project, EE is Eat seus) Relic Ravste_ search. Pot Run| Wren Hob eT, Un Wizard nos, guiara paso a paso en la creacién del nuevo proyecto, seleccionamos Web Dynpra y precionamas "Next ES rsh orecnet Le daremos un nombre al proyecto y presionaremos en "Finish. Hieber Rome DM Projet properties ‘reat anew Web pro projet esi, te [RG Projet acton F Ue tai reser [Carers and Sexi apenas aap RAS | Sones Projet nguae finesentiniah >] Coma pademos observar en el "Web Dynpro Explorer", nuestro proyecto ha sido creado con éxito. Dro Convert ataee "2 Web Cera Carporente Ep oltre [BO Undone bose De aqui nos van a interesar dos cosas: en el item Web Dynpro se encuentran los Componentes sobre los que desarroliaremos las web dynpro, mientras que en Dictionaries vamos a poder definrtipos de datos propios y encontrar los tipos de datos importados de SAP, en caso de querer utilizar funciones de R3 mediante conexiones RFC (Remote Function Call, Creando nuestro primer Controlador y Vista En primer lugar vamos a necesitar crear un componente sobre el cual crear todos huestros objetos (controladores, ventanas, vistas, etc) por lo que presionamos lick derecho sobre el item "Web Dynpro Components" y seleccionamos la opcin “Create Web Dynpro Component" @ | x a [Se tat SH weboyero Bonne roe i ves Orga conecer teres Somme bon gree Luego, vamos a necesitar completar una cierta cantidad de informacién, entre la {que se encuentran el nombie del componente, la primera de las Ventanas, y si lo deseamos, una de las vistas. También es necesario especificar el package en el que seran guardadas las clases. 4) ae ead ee craton ee | Fase ete tht ptkape ees ibe comaredia vaca oe i noir aegatas cee > ——— =e Wed tne eran ih Woon Pecos reine ar eed new Ven if raat S| Ven Pekone Presionamos en “Finish” Y nuestro componente junto con su primera ventana y Vista son creados, nt OHS x EG rolovod 2k We Dime BS apes [gb rote 4G) web ero consonant eres ea) hag Conpenarce eh Conger cater Bg} Cenponare race Ee Cstem controls ‘Ure one re cms BG Ke Evite BD Wndone | OC verany Es aqui donde la estructura de MVC comienza a tomar forma. Antes que nada Podemos observar la presencia de un “Component Controller’, el cual es el controlador principal. En caso de necesitar crear ottos, lo podemos hacer presionando click derecho sobre “Custom Controllers” y seleccionado la opeién “Create Custom Controller” 4 Cenporrte << Conporee cota BA conser ate 2 a ge 8G vow Tae Caer 8D Wire SI vetans 10 Ingresamos el nombre de nuestro nuevo controlador y presionamos en “Finish, RNs si rte the nae arb pachage fo the ren contr at Sem 9 [ae Patage [eanprantes +, Sacer eal Si observamos con detenimiento vamos a encontramos con una serie de “Views” y "Windows", las cuales forman parte de la vista. Las “Views’ contienen el layout de ‘a pantalla (elementos a mostrar, relacién con el modelo y eventos), mientras que tas "Windows" agrupan una serie de "Views" y las relacionan mediante entradas y salidas, ‘Gree a eae = 5 wsta, | dei Cie, es Dado que solo tenemos una "View" vamos a orear una nueva. Presionamos click derecho sobre “Views” y seleccionamos “Create View’ Swe ree corns OBY Rene a Ingresamos el nombre de nuestra nueva "View" y presionamos “Finish” Eker the nae ard package th ro Vi. ease note tht package ores be canvatedto buer css ew Nene a$$ sas | _ Nuestra vista ha sido creada pero todavia no se encuentra vinculada a ninguna ventana x ad Web Ciera Cergonents aol Benz EE Windave SO vetans vite Por lo que presionamos click derecho sobre “Ventana” y seleccionamos “Embed View “coe lsat BF commie Eoste 3 Ceenane HLT RoatitienatCartre pepo {1 betatention re Se nos despliega una ventana en la que seleccionaremos la opcién "Embed Existing View’ y presionamos "Next eared au want ueae ar Vi fee an zig Wo, Fyouvertta ented teeny ww oon tec vere ced cooponents, Io ented eating ow IC ested ape van IF Embed ntarace owe Canponent instance Un listado nos mostraré las vistas existentes y cuales de ellas se of embebidas en la ventana que estamos utlizando. Seleccionamos la presionamos en "Finish © embed esting View Sec enn of te ein ves you nose to eed Select Vow yauwont ened Cabal el Como podemos observar, a vista fue afiadida a la ventana, BS stone les oF Evaee Creando el modelo de datos ‘Ya hemos localizado el controlador y la vista por lo que solo nos faltarla definir ln modelo acorde a la web que estamos realizando, El modelo lo vamos a encontrar bajo et nombre de "Context’, el cual tiene una extructura en forma de Arbol (nodos y atributos, como un' XML). Todos los “Controllers” y “Views" poseen un "Context", en el cual pueden definirse nodos 0 atributos que permaneceran locales 0 podran ser relacionados con los nodos 0 atributos de otros contextos, ‘Apelando a la buenas costumbres que impone MVC, la informacion principal sera ingresada en el contexto de los *Conttollers", mientras que en las "Views" solo se Crearin nodos o atributos que “apunten’ al de los “Controllers” {Qué significa esto? Que un elemento de un contexto es exactamente el mismo que encontramos en otto contexto si ambos estan relacionados Qué consecuencia nas trae esto? {La vista muestra tos elementos de su contexto, si algo modifica un elemento en el ccontexto del controlador de la vista, esto provocard inmadiatamente que el contexto de la vista sea modificado (siempre y cuando ambos elementos estén relacionados) y por lo tanto que la vista se actualice. Presionando doble click sobre el "Component Controller” se abrira una subventana donde podremos editarlo. En la parte inferior de la misma encontraremos distintas pestarias con todos los atributos del controlador, entre ellos el “Context” 13 Presionando click derecho sobre el Context (la base del Arbol), vamos a poder visualizar fos cuatro tioos de elementos que p armar nuestro modelo, de las cuales por lo pronto nos van a int dos: Value Node: un nodo donde almacenar atributos u otros nodos, Value Atribute: un atributo donde quardaremos valores, en la opcién ‘New’, sodremos crear para teresar las primeras ‘Ambos elementos serian los equivalentes a “estructura” y “variable” o “carpeta” y Saree Bie | Yak tate Boe (Sree oae aca peal. Mal trate Sand bree Stoned = Seleccionamos “Value Nod: "Finish "luego le damos un nombre y precionamos en Context value node Cate ana corte eu nade ‘one [Rima] —— crest trating \ina vez creado el node, lo seleccionamos y nos ditigimos a “Properties” ‘2auL amos a encontrar las distintas propledades que posee el nodo que Seteccionamos. Enive elas, su cardinalidad (cantidad de veces minimas y ‘maximas que se encuentra). Freel satecectn Sogn Tanto en “Cardinality" como "Selection’, ingresamos el valor “1 Esto lo hacemos para que el nodo exista una y solo una vez en el contexto, ‘oletype i bisateatSlcton ue mane Prnareds Sralean we ‘Ahora presionamos click derecho sobre el nodo y seleccionamos “Value Attribute" Conte vate trate Cede enact vain tite 3B None 5 ——— = Repetios ef proceso y creamos dos atributes més. Quedandonos nuestro contexto de la siguiente manera ” EB) Primed SE Areusz Areca SS seleccionamos un atributo podemos observar que sus propiedades son distintas a las del nodo que hemos creado. Enire las cuales, vamos a destacar el"Type", en el cual vamos a utilizar “String” (tipa de dato: cadena de caracteres). 18 Relacionando el Controlador con la Vista Lo primero que tenemos que hacer es comunicarle a la vista cuales son los Controls que va utilizar, para logrario seleccionamos una "View" dd 1aBe08 nar 41 Some Podemos observar el método solo hace una llamada al Plug de SiitaVistat, por lo que antes de dicha llamado agregamos nuestro codigo, Oblenemas la referencia al Controliere invocamos su método coneatena). {éstvegin oakstionsalie (Servertvent) waThis udGetComponenteControi ier () oneatena() ; waThts.udFirePlugsalidaisted > For ime, seguramente vamos a querer que al ingresar a la Vistat los campos se ‘Sncuentren vacios, Con las creacién de los Plug de entrada se generaran los mélodos onPlugKXXXXXX(), los cuales son invocados al ingresar a la vista por dicha entrada, 2 Creacion de la Aplicacion Ahora que nuestra Web Dynj aplicacién para poder util presionamos click derecho en jpfo Se encuentra creada solo hace falta crear una izaria. Nos dirigimos al Web Dynpro Explorer, “Applications” y seleccionamos “Create Application” ieee @| Hx 1B Meow & B-Hk Web ome Sai oa | aan dt Componente 1 Conponerecetatr Le damos un nombre nombre y un package a nuestra aplicacion y presionamos en Finish, ‘EE ‘Application properties Ete the papas for theron apestion New Fg etage [een] ir patente Una vez creada la af plicacién debemos subila al servidor para poder utilizarla, pe lo que preisonamos ‘Glick derecho sobre la Web Dynpro y seleccionamos “Deploy" a, Gose neie | [Bie Denim crsacmare | “ 6 De ahora en mas, cada vez que modifiquemos nuestra Web Dynpro, si queremos Subitlos los cambios al servidor para poder ejecutarla y verios vamos a necesitar realizar el Deploy, PPara ejucutar la aplicacién bastard con presionar click derecho sobre la mismo y seleccionar ‘Run’, Sener Ee aes aon 4p nose BCH aoe ee es 4 Delo Na cea un 2 declas: 00ers 44 LLAMADO A FUNCIONES REMOTAS Utilizacién de Funciones RFC desde nuestra Web Dynpro Hasta el momento hemos creado una Web Dynpro y,mediante una légica bastante Sencila, logramos navegar entre sus diferentes vistas. Como se imaginaran, lac Rosiblidades a nuestro alcance son mucho mayores que una simple navegacion Es seguro que vamos a querer interactuar con otros sistemas, ya sea envende o Fecibiendo informacién, En este tutorial vamos a aprender a conectamos desde nuestra Web Dynpro a un fistema R3 haciendo uso de funciones RFC (Remote Function Call), Estas funciones pueden ser usacias para realizar calculos, ingresar informacién nueva en 3 u obtener informacién Mediante una conexién TCP/IP vamos a conectarnos @ R3, seleccionaremos una funcién de una lista y de esta forma va a generarse automaticamente una clase Que va a funcionar de interfaz entre nosolvos y la funcidn propiamente dicho on RB. Dado que no queremos tvabajar con engorrasos pardmetros de entrada o de Salida, todo este proceso generaré nados en nuestro contexto que van a poder ser usados directamente por nuestra vista Previamente en nuestro servidor R3 hemos creado una funcién RFC que dados dos numeros, los suma y retorna el resultado, Vamos a crear una Web Dynpro que a patr del ingreso de dos nimeros, utlizaré la funcién en R3 para sumarios y ‘mostrara el resultado por pantalla, 46 Creacién de una nueva Web Dynpro Empezamos creando_un nuevo fecientemente la opcién de "Proyect Proyecto. Como ya hemos estado usando Web Dynpro no hace falta ingresar a la opcién Ho) Eat Nevo) Sear Gasirers Bisne oes vara Ingresamos un nombre y pulsamos en "Finish EERIE Projet properties este onan Web Org prot esac. Proce nan: [Tae Puleamos click derecho sobre “W Jeb Lynpro Components" y seleccionamos ‘Create Web Dynpro Component” foes tao BA Webomoe BS tosesne 4 Nee {Gwe ror carr BCI ac rare : a te dames un nombre y package al Componente, nuestra primer Ventana y Vista, luego pulsamos en "Finish" Sin New Web Dynpro Component {rar name ered poche th na Web Dror cargnert an deat windon ‘ese ete that pacha reer vile coed alee cen onvenert Nave [Cangarete———_—__—¥ z \emoonert Pacaoe ompaneres 55 a — | bi pia ee ser eta tron, 48 Importaci6n de una funcién RFC Ahora lo que vamos a hacer es importar una funcién de R9 a nuestro proyecto, generando de esta forma una clase que utlizaremos para llamar a la funcion em forma remota, Nos dirigimos al "Web Dynpro Explorer’, presionamos click derecho sobre "Model" y seleccionamos ‘Create Model” ENG Nuon E-Al Web iro AB agoletore ole 6 ET. 12.9) Web srs Corpments Cngrerte 2 Camper Conte (8-9) congener tate cao cats “Usd eb Oreo Campane BG ewe 8 wows En la pantalla siguiente, seleccionamos el tipo de modelo, marcamos “Import ‘Adaptative RFC Mode" y presionamos en “Next” Firs Saye Segue Cortona nti oe [Cpt hots eb Seen eds IF mer eb oyrere el es. dnton tert) npr eran : [Crowe Web Ses Ml buPReCaTeD Luego, le damos un nombre y package al nuevo modelo, Vamos a necesitar ingresar dos valores en los items “Default logical System Name" los cuales hacen referencia al nombre de la conexién “JCo Destonation’ 9 Estas conexjones son creadas en el servidor (generalmente por personal de Basis) y contienen la configuracién necesaria para conectamos con el servidor Ro Mientras que la primera de ellas es utlizada para transmit los datos (Application Data), la segunda se utiliza con el fin de accader al diccionario de datos (Dictionary Meta Data). En nuestto caso hemos creado previamente dos "Jeo Destination” por lo que ‘vamos a completar con sus respectivos nombres "JCO_SIN_RFC" y “ICO. RPC! 5 mport adptve REC Model rte eb Oooo RC mse ter. The ested mall abgtetntho way tht Sindee metas tanthe shbbaod ton ef ton a fe meen SESH orate Remedi [pee $$$ lope bana [5 Detonay Type Pace Peete acon Cuego vamos a tener que especificar los datos necesarios para conectamos a R3 Y poder buscar la funeién que deseamos importar, Por ahi se preguntaran porque tenemos que hacer esto si los “JCo Destination’ ya ‘aben como conectarse a R3. La respuesta es simple, existe un separacion enve lo que es el desarrollo y la ejecucién de la Web Dynpro, No solo nos permittia crear el modelo sin necesidad de que los “JCo Destination" eexistan sino que mantiene bien definidos los ambientes existentes en el servilor de destino (desarrollo, qas, produccidn). Nosotros solo necesitamos ingresar a uno de ellos para poder importar la funcién, mientras que los “JCo Destination’ oe Puede definir sobre otro ambiente, En “Host Name" ingresamos ta direccién de IP dal servidor, en nuestro caso se encuentra bajo el nombre de "server3", y el “System Number” es el 00. 30 Vamos @ ingresar al ‘Client*, 0 ambiente, 000 con el usuario “beuser’, contrasefia “minisap* y lenguaje "EN © Sno gon taormation ‘Soa the SA server you arto crm an eter the lpen fnaon ‘Se Serr |Load eric | ae ‘Ahora fo que debemos hacer es buscar la funcién, en nuestro caso tlamad: ZUMA. Podemos escribir direclamente el nombre o buscaria utilizando el botosr “Search”. Tidamos la funcién que vamos a imporiar y presionamos en "Next" Select RC modes ‘the RFC os tht rondo ut thw nx Youcan ce serch fr RC nes ree Ute ileston compere ke Saat asc st ‘game Pocemos observar, el modelo fue importado con éxito y se han generado ‘8s Qlases necesarias para usarlo (Zsuma_Input y Zsuma Oulpul). Presence “Finish* para continuar. eae escent odie sais as fas Saas Ss ee, i) cele err Pe orcas Yolviendo al "Web Dynpro Explorer” vamos @ poder visualizar el modelo recien ado unto con las clases generadas y la relacin existente entie Zeuma, Input y Zsuma_Output, Bronte ag | PSP tare Be rasa Go zemee be Baie, tee fj web oper Couper ttaaces {hora \solo falta dirigimnos @ nuestro Componente, presionar click derecho en Ised Models" y seleccionar "Add" S Noonre cosa | Balen Te Spee count Op compet beta Ececonaen sao foc oo a. BR Satescionamos los modelos que queremos agregar a nuestro componente y pulsamos en “OK”. 2 Como podemos observar, ahora nuestro Componente conoce al modelo, 8g) We eo Coomats Be comornte 1 of coer cater 4 coupe ate i cokes Nappa Busco | te. i 4 ca Used Web Dynpro Components ttn nena Hay que prestar atencién y no confundir el modelo de datos de nuestra aplicacién (representada por el contexto) del modelo creado para acceder a otros sistemas, Si bien sen dos cosas muy distintas, ambas tiene una relacién que vamos a ver mds adelante, 3 Relacionar Modelos con el Contexto Hasta el momento sabemos contexto, guarda una relaci controlador es quien lleva Usuario vamos a necesita funcién y el controlador. pos itigimos al contexto del controlador vamos a poder observar a la derecha del mismo una estructura de nodos y alributos perteneciente a la funcién importada, ue la Vista se relaciona con su contexto y que dicho én con el contexto del controlador. Dado que el 2 cabo las acciones en respuesta a los eventos del F crear una relacién entre el modelo creado con la Vamos a relacionar esta estructura con un nod ‘creams un nuevo nodo pero esta vez seleccion 10 de nuestro contexto, por lo que 1amos la opcién "Model Node” CA te meey Ya svete Hhpate sta Spec yo tie Content mode nade rst ro cata mal od ae [San Gon nuestro nodo creado ahora solo debemos relacionar su contenido con el contenido del modelo de la funcién. Esto lo hacemos presionando click derecho Sobre el nodo y seleccionado la opeién “Edit Madel Bindlng” Det Carts Ming En la siguiente pantalla, podemos observar la estructura de todos los modelos. Importados, seleccionamos el nodo de Input que queremos relacionar presionamos en “Next” 5 [ rotetanang ‘Ahora solo marcamos los atributos y subnodos que deseamos copiar a nuestro nado, como los varios a necesitar todos, los tdamos y presionamos en “Finish”, Lectern imiawainsronaintmnmaaase op 55 Como resultado, hemos creado una relacién entre ef modelo de fa funcién y russtra contexto. Ya no necesitamos manipular manualmente la funcion ya qu lo ‘misma puede ser utlizada mediante el contexto del controlador. &{ nosolrsrelaciondramos el contexto del Controladr con el de alguna Vista, estamos indirectamente creando una relacién entre la Vista y el medelo de funcién. De esta forma, cualquier valor ingresado en la Vista repercute en los ardmetros de la funcién, y cualquier valor retomado por la funcién puede haces presente en la Vista ‘oni Tere Stems CB cnt nae ona) Lesvos ‘* Be 8, Mame out Fresionamos doble click sobre la relacién creada entre el Modelo de la Funcién y el Controtador. Scr ac => || Y podemos observar las relaciones entre los distintos nodos y atributos. 56 Creacién de relacién entre la ta y el Controlador Ahora vamos @ modificar la Vista para que el usuario interactde con la Funcién {ue hemos importado. En primer lugar, asociamos el Controlador con al Vista, por 1b,gue seleccionamos la Vista, ingresamos a la solapa “Properties” y pulsamos el botén “Add” Weorerecnomentitafacs || Ost rosa ctr We ere Conners ‘spears i Caomente <8 Conponer coreroter » Ue cree ICaer ee oo © ‘ee en oa fee erode oerer 66 i an | IER Conpanert Web Ores Congenen terace Cnt (EVE veransrescetinvectanas Nos aseguramos que la asociacién fue creada con éxito observando la tabla de controladores de la vista. Required Controters ils th I of oad cers 7 Una vez que el Controlador y la Vista se encuentran asociados, vamos a relacionar sus contextos. Nos dirigimos al contexto de la vista y creamos un nueva nado pero del tipo “Model Node", vas toe Nee (Sao eae ee Ben (abide Compares -eooretes 7] BO cant pace ° se Spc’. Motel aide oe oa and sit Le damos un nombre y presionamos en ‘Finish’ Coste mode node oat anew cient model nde Con el node creado, presionamos click derecho sobre el mismo y seleccionamos la opcién “Edit Context Mapping” my [ec RT reewena BS) ze okt cote Magpie. Eat Wedel andy, Saleccionamos el nodo con el que queremos mapear el nuestro y presionamos en Sel 38

You might also like