Memorias del Curso Web Dynpro para Java 1 Como conectarse a una BAPI de R3 desde Web Dynpro para Java Josué Cruz (
[email protected])
Objetivo: Hacer un proyecto de Web Dynpro para mostrar como conectarse a una BAPI de R3, con el fin de que el participante tenga una guía de cómo usar funciones de R3.
Pasos: Paso 1. Crear un proyecto de Web Dynpro para Java
1. En el menú de SAP Netweaver Developer Studio, seleccionar File > New > Web Dynpro Project 2. Setear el nombre del proyecto y dar clic en el botón “FInish”: Project Name: Capacitacion_BAPIR3
Paso 2. Crear la aplicación, el componente, el componente, la ventana y la vista inicial.
1. Abrir el proyecto creado y en la estructura ir a Web Dynpro > Applications. Seleccionando “Applications” y dar clic botón derecho > Create Application. Poner los siguientes datos: Name = Capacitacion_BapiR3App Package = com.capacitacion.app
2. Seleccionar “Create a new component” y botón “Next”
3. Dejar los nombres que sugiere la ventana para el component, window y view. Clic en el botón “Finish”.
Paso 3. Creación del modelo de la Bapi a utilizar.
1. En el proyecto ir a la ruta <nombre_proyecto> >Web Dynpro > Models. Dar clic botón derecho y “Create Model”. 2. Seleccionar “Import Adaptive RFC Model” y botón “Next”.
3. En la siguiente pantalla poner los siguientes datos: Model Name = <nombre de la bapi>Model ZBAPI_SUMAMODEL Model Package = com.capacitacion.model.zbapi_suma Default logical system name for model instances = WD_MODELDATA_DEST Default logical system name for RFC metadata = WD_RFC_METADATA_DEST
4. Seleccionar la pestaña “Single Server” y llenar los datos de conexión a R3. Verifique que la opción “Language”, este en Ingles “EN”.
5. En la siguiente pantalla en el campo “Function Name” poner el nombre de la BAPI que se quiere llamar y dar click en el botón “Search”. Una vez encontrada la BAPI, dar clic en el botón “Next”.
6. Una vez terminado el proceso de importar la BAPI, dar clic en el botón “Finish”.
Paso 4. Agregar el modelo creado al Web Dynpro Component
1. Ir al nombre del proyecto > Web Dynpro > Web Dynpro Components > <nombre_del _component> Used Models. Botón derecho “Add” y seleccionar el modelo creado “Zbapi_sumamodel”.
Paso 5. Mapeo entre la Bapi y el contexto del Component Controller.
1. En el proyecto ir a Nombre del proyecto > Web Dynpro > Web Dynpro Components > <nombre_del _component> y darle doble clic al nombre del componente. Ej. Capacitacion_BapiR3App.
2. Aparecerá la ventana del “Diagram View”. Si no la ve completa de doble clic en la ventana para que se abra.
3. Clic botón derecho sobre “Component Controller” y seleccionar la opción “Apply template”
4. Seleccionar “Service Controller” y dar clic en el botón “Next”.
5. Seleccionar <nombre_bapi>_Input y dar clic en el botón “Next”.
6. Seleccionar los parámetros necesarios que quiere usar como parámetros de entrada y de salida. En este caso Numero1 y Numero2 son los parámetros de entrada y Output > Resultado es el parámetro de salida que regresara el resultado de la operación. Seleccionamos todo y damos clic en “Next”.
7. La ventana de ayuda nos sugiere un nombre del método donde el programa generara automáticamente el código para ejecutar la BAPI, dejaremos el que nos sugiere y damos clic en el botón “Finish”.
8. Como veremos en la siguiente pantalla el programa nos crea una línea entre el “Component Controller” y el modelo.
9. Anteriormente creamos el link entre el Component Controller y el modelo, ahora crearemos el link entre la vista “Capacitacion_BapiR3AppView” y el “Component Controller”. Para hacer lo anterior mencionado seleccionamos la flechita del lado derecho y trazamos esta línea de la vista hasta el Component Controller.
10. Aparecerá la siguiente pantalla, donde arrastrara el nodo “Zbapi_suma_Input” de derecha a izquierda al nodo “Context”.
11. Aparecerá la pantalla con los elementos de la BAPI y seleccionara todos.
12. Clic en el botón “Finish”, para terminar y deberá ver el link entre la “Vista” y el “Component Controller”.
Paso 6. Crear los componentes gráficos.
1. Navegar hasta la vista. Ir al <nombre del proyecto> > Web Dynpro > Web Dynpro Components > <nombre_del_component> > Views y dar doble clic sobre la vista Capacitacion_BapiR3AppView. Deberá tener seleccionada la pestaña Layout.
2. En la parte inferior izquierda en la ventana llamada “Outline”, dar clic botón derecho en el nodo RootUIElementContainer y seleccionar “Apply Template”.
3. En la siguiente pantalla seleccionar “Form” y a continuación clic en el botón “Next”. Nota: Si tiene datos que vienen en una tabla en la BAPI, repita el paso de “Apply Template” > Table y luego seleccione el nodo de la BAPI que trae la tabla (Output > Nombre tabla de la BAPI)
4. Seleccionar todos los nodos del contexto y dar clic en el botón “Next”.
5. En la siguiente pantalla nos muestra el orden el cual pondrá los datos en la pantalla, seleccionamos el orden y damos clic en el botón “Finish”. Finalmente aparecerá una pantalla como se muestra a continuación.
6. Ponemos un botón en la ventana que servirá para ejecutar la BAPI, cuando se llenan los campos Numero1 y Numero 2. Cuando se agregue el botón poner la propiedad “Text” del botón a “Ejecutar”.
7. En la propiedad “onAction” del botón crear una nueva acción, para esto darle clic en los “…” para crear una nueva acción.
8. En la siguiente pantalla ponerle un nombre a la acción sin espacios. Por ejemplo: EjecutarBAPI. Dar clic en el botón “Finish”.
9. Otra vez en la propiedad “onAction”, veremos el nombre de la acción creada “Ejecutar BAPI”. Dar cilc en el botón “Go” de dicha propiedad para ir al código.
10. Entre las líneas //@@begin y //@@end agregar la siguiente línea de código.
Donde el formato es el siguiente: wdThis.wdGet<nombre_del_componente>Controller.excecute<nombre_bapi>();
Paso 7. Deployar y ejecutar el desarrollo
1. En el <nombre_del_proyecto> > Web Dynpro > Applications > <nombre_aplicación>, botón derecho “Deploy New Archive and Run”
2. A veces sale una pantalla con titulo “Autobuild is switched off”, dar clic en el botón “Enable autobuild”.
3. Empezara el procedo de Deploy y pedirá la clave para instalar, poner la correcta y dar clic en el botón “ok” y esperar a que aparezca una pantalla del Internet Explorer.
4. Poner dos números en los campos “Numero 1” y “Numero 2” y dar clic en el botón ejecutar para ver el resultado de la suma.