¿Cómo crear un Pool de Tablas y una Tabla Pool en SAP?
Una tabla pool, a diferencia de la tabla cluster guarda registros de datos procedentes de las tablas definidas en el Dictionary ABAP y no dependen los unos de los otros. Se podrían combinar varias tablas SAP pequeñas en una tabla de base de datos.
En este ejemplo puede ver que la intersección de los campos clave de TABA y TABB está vacía. No obstante, el pool de tablas TABAB guarda los registros de datos de TABA y TABB. La clave para un registro de datos del pool de tablas consiste en los campos TABNAME y VARKEY. El campo TABNAME contiene el nombre de la tabla pool. El campo VARKEY está formado por la concatenación de los campos clave de la tabla pool. Debido a esto, los campos clave de una tabla pool deben ser tipo C.
La interfaz de la base de datos almacena los campos que no son clave de las tablas pool de manera desestructurada en el campo VARDATA. El campo DATALN contiene la longitud del campo VARDATA.
Resumiendo, una tabla pool es una tabla de la base de datos que contiene varias tablas. Se basa en un campo llamado nombre de tabla y un campo genérico.
Para este tutorial creamos el pool de tablas ZPO_LOGALI y la tabla pool ZTP_LOGALI.
- La longitud máxima de caracteres que se puede asignar al nombre de un pool de tablas en SAP es de diez caracteres. Creamos el pool de tablas ZPO_LOGALI entrando en la transacción SE11 del diccionario ABAP. En el menú navegamos en UtilidadesàOtros objetos Dictionary y seleccionamos la opción Pool/Cluster tablas y le ponemos el nombre del pool de tablas. Utilizamos el iconito de crear para empezar con la creación.
- Seleccionamos la opción Pool tablas.
- Informamos el campo obligatorio Descripción breve y grabamos las modificaciones.
- Ya tenemos el pool de tablas que se puede activar asignando el paquete de desarrollo y la orden de transporte. Para quitar los mensajes de advertencia podemos actualizar las opciones técnicas en la transacción SE13 que permiten indicar la categoría de tamaño por registros esperados y las propiedades específicas de base de datos. Entrando en la transacción SE13 informamos el campo Nombre tabla/vista con el nombre del pool de tablas y utilizamos el botón Modificar.
- Indicamos la categoría de tamaño 1 y grabamos las modificaciones. Ahora podemos activar el pool de tablas sin mensajes de advertencias.
- Volvemos a la transacción del diccionario de datos SE11 y creamos la tabla pool ZTP_LOGALI que añadiremos al pool de tablas.
- En la pestaña Entrega y actualización seleccionamos la clase de entrega A y la Visualización/actualización permitida.
- Para este ejemplo utilizamos el siguiente modelo de datos como campos de la tabla pool.
- Configuramos las opciones técnicas grabando las modificaciones y asignando el paquete de desarrollo y la orden de transporte.
- Volvemos con la flecha atrás o con la tecla F3 a la tabla transparente. Para indicar que la tabla es una tabla pool y no una tabla transparente tenemos que volver de nuevo a la pestaña Entrega y actualización y navegar en el menú en DetallesàVisualizar/Modificar clase de tabla.
- Con esta opción el sistema crea en la pestaña Entrega y actualización un campo nuevo que permite asignar el pool de tablas al cual forma parte la tabla pool. También podemos notar como el tipo de tabla se cambió de tabla transparente a tabla pool.Ya tenemos el pool de tablas con una tabla pool. Al mismo pool de tablas se pueden añadir n tablas pool.
muchas gracias, me pregunto como se puede borrar ? vi un caso que dice muestra un mensaje al intentar eliminar o modificar “esta generado y no se puede modificar/eliminar”
Hola Andreina,
Para la versión de SAP Workbech Netweaver 7.50 y las siguientes de 7.50, estan obsoletas las tablas POOL, es decir, ya no se podrá trabajar con ellas en estos entornos.
Posiblemente en la versión que estás intentando trabajarlas, ya son obsoletas, por eso aparecen mensajes de error.
Con versiones 7.40 o menores se modifican/eliminan sin problema.
Lo recomendable es ya no utilizar estas tablas.
Un saludo.