✒️ABAP Las tablas de control
ABAP Las tablas de control
Tabla de Control: Es un control que se utiliza para la modificación y visualización de los datos de una tabla interna, tabla base de datos o otra estructura de datos de SAP.
El aspecto de una Tabla de control es similar al de una hoja de cálculo. Un ejemplo claro de una Tabla de control lo tenemos cuando introducimos datos a través de la vista de una tabla.
Si ejecutamos la transacción SM30, introducimos el nombre de una tabla cualquiera, por ejemplo la tabla ZTABLA_USUARIOS y presionamos el botón Visualizar.
2 | La creación de una Tabla de ControlPara crear una Tabla de control en una dynpro tenemos dos posibilidades: hacerlo en forma manual o utilizar el asistente Wizard. A continuación explicaremos como crear una Tabla de control con el Wizard (Asistente).
Lo primero que haremos será crear un include de datos y declararemos la tabla interna TI_USUARIOS junto con la estructura ST_USUARIOS del mismo tipo que la tabla interna. Dentro de la tabla interna declaramos al comienzo de la misma, el campo marca de tipo caracter de 1 posición, que se utilizará para agregar una columna de selección a la Tabla de control.
Luego en el Screen Painter de la dynpro seleccionamos el ícono Control Tabla (med. Wizard), lo arrojamos a la pantalla y aumentamos manteniendo el botón del mouse presionado las dimensiones del control.
A continuación se ejecutará el asistente ( Wizard ) que nos guiará en la construcción del control. En la primer pantalla presionamos el botón Continuar.
Luego ingresamos un nombre para la Tabla de Control que será TC_USUARIOS.
Ahora especificaremos el nombre de la tabla interna y de la estructura que utilizaremos.
Marcamos los campos de la tabla que se mostrarán en la Tabla de control sin tener en cuenta al campo de selección.
Ahora en la opción Atributos de entrada/salida determinaremos si la Tabla de control será de salida de datos, es decir visualización o de entrada de datos.
Si marcamos el check Con cabeceras de columnas, se visualizarán los títulos de cada columna.
Si marcamos el check Con columna de selección se creará en la Tabla de control la columna de selección, en cuyo caso ingresamos el nombre del campo MARCA en Campo columna selección.
Luego podemos seleccionar algunas funciones estándar de la Tabla de control, las cuales dependerán de que la tabla sea de entrada o salida.
En este caso seleccionamos el check PasarPág que agregará cuatro botones debajo de la Tabla de control con los cuales nos podremos desplazar a lo largo y ancho de la tabla.
Ahora especificaremos los includes en donde se creará el código de la Tabla de control.
En caso de que alguno de los includes no exista, se crearán.
AUDIO ACLARATIVO: Un error común que sucede en la creación de programas de diálogo tiene que ver con el orden en el que declaramos los include en el programa principal. Supongamos que creamos un include para las declaraciones de datos TOP, un incluso para las declaraciones de sus rutinas del PBO, incluso para las declaraciones de su rutina del PAI. Si no declaramos primero de los tres al include top nuestro programa no va a activar, ya que el sistema nos informará de errores de sintaxis que tienen que ver con la declaración de datos que están declarados en el top pero al estar declarados posteriormente a la utilización de los mismos en los incluso del PBO y el PAI, generan inconsistencias en la sintaxis.
Finalmente veremos la tabla creada en la dynpro.
Modificamos el ancho de las columnas y las descripciones de los títulos.
Automáticamente se ha creado en nuestro programa una enorme cantidad de código entre lo que encontraremos la declaración de la Tabla de control.
El tipo TABLEVIEW corresponde a la estructura CXTAB_CONTROL.
Utilizaremos la sentencia LOOP-ENDLOOP para recorrer cada elemento de la tabla de control. Dentro de esta sentencia pueden haber otras sentencias como FIELD, MODULE, SELECT, VALUES y CHAIN-ENDCHAIN.
Debe existir una sentencia LOOP-ENDLOOP tanto en el PBO como en el PAI para cada Tabla de control de la pantalla. Esto se debe a que mediante esta sentencia se copian los campos entre el programa ABAP y la pantalla y viceversa.
En el PBO, el campo del sistema SY-LOOPC contiene el número actual de líneas de la tabla de control. En el PAI, contiene el número de líneas actualmente llenas.
Finalmente para llenar la Tabla de control con datos, en el PBO de la dynpro realizaremos la carga de la misma.
 
 
 
Sobre el autor
Publicación académica de Pedro Antonio Duarte, en su ámbito de estudios para la Carrera Consultor ABAP.
Pedro Antonio Duarte
Profesión: Consultor de Sap Abap - Argentina - Legajo: JP24O
✒️Autor de: 128 Publicaciones Académicas
🎓Egresado de los módulos:
Disponibilidad Laboral: FullTime
Certificación Académica de Pedro Duarte