Añadir Campos en Transacciones AF
Short Description
Download Añadir Campos en Transacciones AF...
Description
Añadir Campos en Transacciones AS01, AS02, AS03, AS91, AS92, y AS93 de Activos Fijos El presente tutorial nos enseña como podemos agregar campos Z (creados por nosotros) en las transacciones estándar de Activos Fijos (AS01, AS02, AS03, AS91, AS92 y AS93). Como primer paso ingresamos a la transacción SE11, colocamos la tabla de base de datos ANLU y presionamos en visualizar
Nos aparecerán los elementos que contiene la tabla
Esta tabla es la que nos permitirá añadir campos Z en el registro maestro de los activos fijos, para ello nos valdremos de su tipo de Estructura Include “CI_ANLU”, le damos doble clic encima y nos aparecerá la siguiente ventana
Le damos clic al botón Si y nos dirige a la estructura CI_ANLU
En dicha estructura procedemos a colocar una descripción breve y añadir los tipos de datos que necesitemos, luego activamos
Nos pedira primero un paquete de objetos y luego solicitará una orden de transporte, tras lo anterior nos dirá que hay mensajes de advertencia y si deseamos no verlos, le damos clic al botón que dice “No”
Verificamos que nuestra estructura tiene el status activo
Y luego presionamos F3 o le damos clic al boton de retroceso para ir a la tabla ANLU, en donde ahora nos aparecerá de la siguiente manera
Como se puede ver los campos ya han sido añadidos a la tabla ANLU, con lo cual vamos a proceder a trabajar en la ampliación AIST0002 por medio de la transacción SMOD, en la pantalla de selección indicamos la opción “Componentes” y luego presionamos en visualizar.
Nos aparecerá la pantalla con todos los exits con los que cuenta la ampliación y en la parte de los includes notaremos que hace referencia a la estructura CI_ANLU que hemos modificado hace poco
Damos doble clic sobre el primer exit “EXIT_SAPL1022_001” y nos aparece las líneas de código del include, allí notaremos que aparece el include ZXAISU05, le damos doble clic encima
Nos aparecerá el siguiente mensaje
Presionamos enter y nos saltará el mensaje de creación de objetos, le damos que si
Nos pedira paquete de objeto y orden de transporte, le colocamos las necesarias y luego nos aparecerá el include listo para incluir nuestro código
En este include añadiremos las siguientes líneas: E_ANLU-ZCODZONA = I_ANLU-ZCODZONA. E_ANLU-ZDESMODELO = I_ANLU-ZDESMODELO. Como se puede ver, hacemos referencia a los nuevos elementos que hemos añadido, en caso esten trabajando con otros colocarlos siguiendo la siguiente base:
E_ANLU-ZXXXX = I_ANLU-ZXXXX. Una vez terminado procedemos a activar el include
Terminado ello regresamos de nuevo a la ampliación y señalamos el segundo exit
Y realizamos los mismos pasos que en el anterior
Dentro del include ZXAISU03 colocamos las siguientes líneas de código ANLU-ZCODZONA = I_ANLU-ZCODZONA. ANLU-ZDESMODELO = I_ANLU-ZDESMODELO.
Activamos y volvemos de nuevo a la ampliación y señalamos el tercer exit
Y de igual forma procedemos con los mismos pasos
Dentro del include ZXAISU04 colocamos las siguientes líneas de código E_ANLU-ZCODZONA = ANLU-ZCODZONA. E_ANLU-ZDESMODELO = ANLU-ZDESMODELO. Activamos y con ello terminamos la parte de implementación en exits, lo cual permitirá que cuando grabemos los datos maestros, estos se vean reflejados en la data estándar y no se pierdan dichos valores. Una vez concluido lo anterior, procedemos a crear un proyecto de ampliación para que contenga la ampliación y los exits anteriormente desarrollados, para ello iremos a la transacción CMOD y le colocamos un nombre a nuestro proyecto
Presionamos el botón Crear y nos aparecerá una ventana solicitándonos una descripción para el proyecto, colocamos una acorde a lo que estamos realizando
Luego presionamos en Asignación de ampliación
Nos saldrá el siguiente mensaje de grabación, le damos que si y asignamos un proyecto de objeto y una orden de transporte
Luego nos pedirá añadir una ampliación, colocamos la ampliación AIST0002 que hemos estado trabajando y presionamos enter
Seguido de ello damos clic al botón de componentes
Nos pedira que grabemos el proyecto presionamos que si
Y a continuación nos aparecerá la siguiente pantalla en donde podemos ver sí nuestros exits se encuentran activos, ello lo validamos viendo que los cuadraditos que allí aparecen se encuentran de color verde y en la columna Impl se encuentran los checks.
Si en la pantalla anterior vez que no hay checks y el cuadradito se encuentra en color rojo, quiere decir que aún no han activado los exits o no se han implementado, para ello vuelve a revisar de nuevo el tutorial y activa cada objeto. Ejemplo de una pantalla con exits sin activar:
Tras comprobar que los exits se encuentran activos le damos al boton de activar nuestro proyecto de ampliación
Una vez activado nos aparecerá el siguiente mensaje
Con todos los pasos anteriores hemos procedido a incluir los nuevos campos Z en una de las tablas estándar y realizado la lógica para que dicho valor se grabe cuando usemos las transacciones estándar, ahora lo que vamos a realizar es el diseño para que nuestros campos se encuentren visibles. Para ello iremos a la transacción SE80 y ubicamos el Grupo de Funciones y colocamos XAIS
Nos aparecerá los objetos que contiene, vamos a la carpeta donde dice XAIS, damos clic derecho y nos dirigimos a la opción crear e indicamos Dynpro
Nos aparecerá una pantalla solicitandonos el número de dynpro a crear, le pueden colocar cualquier número, por un tema de estándares en mi caso le coloco el número 9000; luego le damos aceptar
Nos aparecerá la pantalla de atributos de la dynpro, en ella incluiremos los siguientes datos: -
Descripción breve: De preferencia colocar la letra U seguido del número de dynpro colocada, en nuestro caso U9000.
-
Tipo de Dynpro: Seleccionar la opción Subscreen.
-
Dynpro siguiente: En esta opción colocar el mismo número de dynpro, en nuestro caso 9000.
Luego de ello procedemos a crear la parte gráfica, para ello pulsamos en el botón Layout, ubicado en la parte superior
Nos aparecerá una ventana de carga como la siguiente
Esperamos que termine de cargar y nos aparece el área de trabajo de la dynpro
Como primer paso vamos a crear el marco donde ubicaremos nuestros elementos, para ello ubicamos la herramienta de marco
Y dibujamos un rectángulo en el área de diseño
Luego vamos a añadir nuestros campos Z creados en la tabla ANLU, como los vamos a traer del diccionario de datos vamos a la opción de Ventana Campos de Diccionario
Nos aparecerá la siguiente ventana
En el campo Nombre de tabla o campo colocamos la tabla ANLU y damos clic en el botón Traer de Dict y nos cargará todos los elementos que la tabla contiene
Señalamos los campos Z que hemos creado y presionamos en el botón de OK
Notaremos que nos aparecerá unos rectángulos sombreados, los cuales son los que contienen a los elementos Z que vamos a añadir al screen, los ubicamos dentro de nuestro marco y damos clic izquierdo
Y notaremos que nuestros campos se han añadido
Una vez colocado nuestros campos procedemos a activar el screen
Y luego volvemos a la lógica del screen, para ello presionamos el botón Lógica proceso
Regresamos a la vista del screen painter que teniamos y procedemos a descomentar la línea del MODULE STATUS_9000 (Ello lo conseguimos borrando el * del comienzo), luego le damos doble clic encima
Nos aparecera un mensaje preguntandonos si queremos crear el objeto, le damos que si
Y nos pedira incluirlo en un include, por lo general propone uno nuevo como se muestra a continuación, entonces lo dejamos señalado y le damos aceptar, tras ello solicitara OT
Luego nos mostrará la siguiente pantalla
Vamos a dejar la parte comentada tal cual se encuentra, y debajo de ello ingresaremos el siguiente código IF SY-TCODE = 'AS93' OR SY-TCODE = 'AS03'. LOOP AT SCREEN. IF SCREEN-NAME = 'ANLU-ZDESMODELO' OR SCREEN-NAME = 'ANLU-ZCODZONA'. SCREEN-INPUT = '0'. MODIFY SCREEN. ENDIF. ENDLOOP. ENDIF.
Lo anterior indica que cuando entremos a las transacciones AS03 y AS93 los nuevos campos Z que hemos añadido al subscreen se encuentren solo de salida y no permitan el ingreso de datos. En esta parte deberan colocar sus campos de la siguiente forma: SCREEN-NAME = ‘ANLU-ZXXXX’. Y todo lo demás lo colocan tal cual, luego de ello activamos el código
Retrocedemos y por último activamos la dynpro 9000 en general
Con esta activación ya hemos dejado listo para usar el subscreen que contendrá nuestros campos Z, los siguientes pasos son de configuración, a través de los cuales incluiremos nuestro subscreen en alguna de las pestañas de las transacciones estándar y tendremos que hacerlo por clase de Activo Fijo.
Para la parte de configuración y de añadir los nuevos campos Z por clase de Activo Fijo nos dirigimos a las transacción SPRO y damos clic en IMG referencia SAP
Nos aparecerá la siguiente pantalla
Pero nosotros ubicaremos la que dice: Especificar disposición del registro maestro activos fijos
Al darle clic al botón de ejecutar nos aparecerá la siguiente ventana en donde damos un clic sobre el primer registro que dice “Definir disposición de los datos maestros de activos fijos” y luego presionamos en el botón de seleccionar.
Nos aparecé la pantalla de configuración de los layouts con los que cuentan los activos fijos, nosotros vamos a copiar el layout estándar de sap, para ello seleccionamos la línea de SAP y presionamos en copiar
En la nueva pantalla debemos colocar el nombre a nuestra disposición, para el ejemplo le colocamos YSUB y de igual forma se puede modificar la descripción. Terminado ello presionamos enter
Y nuestra disposión ya aparecer en la ventana principal
A continuación lo seleccionamos y luego damos clic en la carpeta Título de las etiquetas
En pantalla lo que nos aparece son los textos de las pestañas con las que cuenta las transacciones estándar
Entonces lo que hacemos en esta parte es seleccionar el nombre de la pestaña a la cual vamos a añadirle los nuevos campos Z, para nuestro caso seleccionamos general y luego damos doble clic en la carpeta Posición de los grupos en las etiquetas
En la pantalla que nos aparecé veremos los distintos bloques de subscreen con los que cuenta la pestaña, en este caso cuenta con 3 secciones, nosotros vamos a añadir una nueva, para ello presionamos en Entradas nuevas
Nos solicitara que añadamos una posición y un grupo, en nuestro caso ubicaremos nuestros campos Z en la posición 4 de la pestaña (es decir al último) y luego hacemos referencia a nuestro subscreen creado que lo llamamos U9000, una vez añadido los datos presionamos enter
Y luego notaremos que nuestro subscreen ha sido añadido
Tras culminar lo anterior retrocedemos hasta regresar a la pantalla inicial de la configuración y notaremos que el primer registro aparece con el icono de ejecutado, ahora procedemos a ejecutar el segundo registro de la misma forma, seleccionamos la línea y presionamos en Seleccionar
Nos aparece una lista con todas las clases de activos fijos
Seleccionamos a aquella clase que queremos añadir los campos Z y presionamos en la carpeta Asignación disposición general
Nos aparecerá la siguiente pantalla donde notaremos que hace referencia al layout estándar de SAP
Dicho texto lo reemplazamos por nuestro layout YSUB que hemos creado y luego de presionar enter grabamos nuestro cambio, nos solicitar una OT customizing
El último paso debe repetirse para todas las clases de Activos Fijos que queramos modificar y luego de ello ya podemos ver los cambios efectuados
Transacción AS01
Transacción AS03 Como se puede ver los nuevos campos Z aparecen solo de visualización.
View more...
Comments