MANUAL DE QUERYS

Introducción Un query es una herramienta del sistema que nos permite la posibilidad de extraer información de SAP mediante un sistema de Drag & Drog, de entre los tipos de Query que SAP nos ofrece podemos optar por:
• • •

Lista básica Estadísticas Lista ranking

También se puede hacer una combinación de estos tipos de report, es decir, hacer que en un mismo listado podamos obtener los tres al mismo tiempo haciendolo mucho más profesional y completo. Lista de Componentes Para poder finaliz con exito un Query primero hemos de completar cuatro pasos, pero al final de la instalación de un proyecto de SAP, el usuario final sólo tendré que realizar los dos últimos pasos, siendo tarea de los programadores de manteniemiento, o del consultor o del propio administrador del sistema la constitución de los dos primeros pasos.
• • • •

Grupo de usuarios Área funcional Query Comparación de Idiomas (Herramientas – Entorno – Traducción – ABAP Query)

El área funcional define el conjunto de datos sobre el que se ejecutan los queries y mediante los grupos de usuarios, definimos a qué conjunto de datos pueden acceder los usuarios.A partir de este punto, culaquier usuario del grupo podrá crear un query sobre el área funcional.

Grupo de usuarios
Un grupo de usuarios es un conjunto de usuarios que trabajan sobre los mismos datos a la hora de ejecutar el query. Un usuario que pertenezca al grupo podrá ejecutar cualquier query creado por otro elemento del grupo de usuarios, y los cambios que realice sobre el query serán visibles para todos los usuarios del grupo. Para definir un grupo de usuarios hay que seguir los siguientes pasos:

1. Entrar en ABAP/4 Workbench (menú Herramientas).

se introduce en el campo Área funcional el nombre que se le quiere dar y se acciona el botón crear. En el campo Grupo usuarios se introduce el nombre del grupo que se quiere definir y se elige la acción crear. Si bien una unión de tablas abarca siempre varias tablas. 3. el resultado es una secuencia de registros con estructura plana. La estructura de estos registros es una barra de campos. Por Utilidades → Query ABAP/4 → Áreas funcionales se entra en la pantalla de definición de Áreas funcionales. 4. • . Por Utilidades → Query ABAP/4 → Grupos de usuarios se entra en la pantalla de definición de grupos de usuarios. o en la pantalla de asignación de usuarios. La primera tabla en la unión es la tabla citada arriba en el campo Tabla. Se puede acceder directamente con la transacción SQ02. • • Base de datos lógica: El área funcional trabaja sobre una base de datos lógica. En la dnición del área funcional especificamos qué tablas intervendrán en el query y qué campos. Se puede acceder directamente con la transacción SQ03. Para definir un área funcional. Entrar en ABAP/4 Workbench (menú Herramientas). hay que seguir los siguientes pasos: 1. Para agregar usuarios al grupo hay dos posibilidades: uno a uno. Para acceder a la pantalla de definición de áreas funcionales. Áreas funcionales Las áreas funcionales nos permiten hacer una preselección de los datos que aparecerán en los queries. que aparece al hacer click sobre Asignar usuarios y grupos funcionales. Se deben crear las area con suficiente visión de futuro para hacerlas lo más ampliadas posibles. Aparece una primera pantalla en la que se asocia al área una denominación . entrando el usuario en el campo usuario y accionando Asignar usuario. en los que se constan de modo seguido los campos implicados en la conexión de las tablas. un grupo de autorización y una clase de área funcional. Las demás tablas pueden indicarse cuando se llama las funciones Continuar (al crear un área funcional nueva) o Unir. El sistema pide únicamente una descripción larga del grupo.2. Es deber del funcional o del propio cliente crear estas areas funcionales. 2. Unión directa de tablas : Una unión de tablas abarca siempre varias tablas que se leerán con ayuda de una forma especial de la instrucción SELECT. Lectura directa : Todos los datos están contenidos en la tabla indicada en el campo Tabla.

aparece una pantalla en la que se deben indicar las tablas implicadas en la unión y las condiciones de la unión. A continuación.. justo en este momento ya somos capaces de crear nuestros query. Asignar a los campos de las tablas un grupo funcional. se especifican los campos de las tablas que serán visibles en el área funcional.) con ello podremos incluir codigo antes y después de la selección de datos. están los grupos funcionales y por otro. marcamos dos tablas de la lista de tablas y hacemos click sobre definir condición. Para entrar en el entorno de definición de queries. El procedimiento a seguir es el siguiente : 1. Aparece un nuevo concepto: el grupo funcional. Entrar en ABAP/4 Workbench (menú Herramientas). las tablas del área funcional. Definir los grupos funcionales. En esta pantalla se definen los campos que han de ser iguales para la unión de las tablas. 2. Esto hace que el usuario no tenga que pasar por toda la Base de Datos Lógica o por todos los campos de una tabla para crear un query. Los campos que no tengan un grupo funcional asignado.• • Obtención de datos mediante programa: La lectura de los datos se describe a partir de un programa separado. Aparece en el panel de la derecha (condiciones de enlace) una nueva entrada. Al crear un área funcional con unión directa de tablas. etc. Se utiliza para presentar al usuario una preselección de los campos.. Para esto. . Query Una vez que tenemos el grupo de usuario definido y pertenecemos a él. Si activamos el botón de especificar condiciones . Existe una opción que nos permite incluir codigo fuente dentro de los query (Coding. Datos secuenciales : Los datos se leen de un pool de datos secuencial. Un grupo funcional combina diferentes campos en una misma unidad. Para definir una condición. colocar authority-check o acceder a otras tablas. se marca el grupo funcional en la parte superior de la pantalla y después se hace click sobre el icono que hay a la derecha del nombre del campo de la tabla. no serán visibles a la hora de definir el query. que el area funcional ya ha sido creada y los campos ya estan disponibles para extraer nuestros listados. Un grupo funcional no es más que un conjunto de campos de las tablas implicadas en el área funcional. Por un lado. se debe seguir el siguiente procedimiento : 1. 3. veremos una pantalla con todos los campos de las dos tablas implicadas en la unión. hacemos click sobre el icono de crear y entramos el nombre del área funcional. a la derecha de la nueva entrada. Para asignar el grupo funcional.

. Si en lugar de listar el campo de la tabla primaria listamos el de la secundaria. Seguir la ruta de menú Utilidades → Query ABAP/4 → Queries. Para pasar a la siguiente pantalla. en la pantalla de Selección de campos. la query no accede a esa tabla y. se puede determinar si se quiere un traspaso de información a algún otro sistema (word. por lo tanto. También se le puede asignar una variante estándar y bloquear el query para que los demás usuarios del grupo no puedan modificarlo.. En la siguiente se seleccionan los campos de dichas áreas funcionales que aparecerán. excel. La finalidad de una query es hacer un listado. por lo tanto. Si el usuario pertenece a mas de un grupo. hacemos click sobre el icono → que aparece en la barra de status. Nota: En el caso de Bases de Datos Lógicas. la última pantalla nos permite definir si queremos que en el query se haga selección por campos mediante select options. ignorará lo que le hayamos informado en la pantalla de selección. Si no es así.2. la selección del resto de campos de esa tabla la hará correctamente. Esta pantalla determinará la posibilidad de trabajar con más o menos campos.). si el grupo de usuarios tiene más de un área funcional asignada. Por ultimo. Se puede acceder directamente con la transacción SQ01.. La primera pantalla que aparece es la de datos generales. no realiza la selección correspondiente. sea ignorada). puede acceder a las queries de otro grupo al que pertenezca. En la siguiente pantalla se elige qué grupos funcionales intervendrán en el query. Al crear un query. como mínimo tenemos que visualizar un campo de esa tabla en el listado. las queries también nos permiten crear campos locales. Sino. A parte de los campos de selección. EIS. En ella se define el título del query y una explicación del mismo. La tabla primaria está relacionada directamente con la secundaria mediante uno o varios campos en común. el seleccionar una tabla para luego no listar ninguno de sus campos puede ser el factor que haga que esta selección de la tabla secundaria no funcione (es decir. Por otro lado. Para finalizar con la definición de parámetros generales. Con los botones de crear y modificar accedemos a las pantallas de actualización de queries. Para definir un campo local tenemos que ir por: Tratar → Campo Local → Crear. el sistema pide una preselección del área funcional en la que se quiere definir el query. se define el formato de salida (número de filas y columnas). Esto nos permite generar nueva información a partir de los campos del área funcional sin tener que incluir un campo adicional. con la opción cambiar grupo de usuario (shift + F7) en la barra de iconos. Norma de cálculo . En la pantalla se listarán las queries asociadas a un grupo de usuarios. para que realice correctamente la selección de datos de una tabla secundaria.

Puedes determinar el valor de un campo de las siguientes maneras: • • Usando una fórmula. se puede dar salida al final del nivel de grupo del número de veces que se ha leído un campo dentro del nivel de grupo (recuento intermedio). La lista básica no es más que una forma de obtener un listado de forma lineal de forma rápida y sencilla. Es decir. Secuencia: Marca un orden entre los campos de una misma línea. Recuento: Indicador con el cual se cuentan las veces que son leídos los campos durante la obtención de datos. y no tiene que ver con la posición física del campo dentro de la línea. Clasificación: Con este campo. Si apretamos el botón de Cálculo complejo podremos ver todas las opciones que nos permite utilizar a la hora de hacer una fórmula. Además. Para forzar un valor en la pantalla de selección tendremos que activar la opción de Obligatorio. Esto no se puede realizar con símbolos o iconos. Lista básica Una vez que hemos seleccionado los grupos funcionales y los campos que vamos a tratar en simplemente bastará con pulsar sobre elbotón de lista básica para obtener un Query. Entrando un valor en la pantalla de selección (Entrada en imagen de selección) • En este caso. • • . Así. Así. en el ejemplo. Para comenzar a definir un query deberemos empezar por: • • Línea : En qué línea física situamos el campo. especificamos un orden en las líneas de salida. La información es numérica. y todas aquellas que tengan el mismo código de trámite aparecerán ordenadas por código de circuito. en el caso de que exista clasificación. primero saldrán las líneas ordenadas por código de trámite. si tenemos dos campos en una misma línea con secuencias 7 y 12. Para crearla se utilizan las reglas matemáticas usuales que contienen operandos y operadores. Se da salida al número total al final de la lista básica. una clasificación. a continuación. el campo local es tratado como un parametro cuyo valor está determinado por una entrada en la pantalla de selección. tendremos un listado clasificado por código de trámite a un primer nivel y . sabremos que el campo con secuencia 7 irá antes del 12. pero no ocuparán las posiciones 7 y 12 de la línea. por código de circuito.

: Inserta una línea en blanco antes de la visualización de un nuevo grupo. Blanco A : Número de líneas a visualizar después de la línea actual. la línea actual sólo será visualizada se la otra línea también es visualizada. Cont : Si se marca este campo se dará salida en el cambio de grupo a los valores intermedios del recuento (recuento intermedio) para todos los campos en los que se ha activado el checkbox Recuen. Lin. Color : color de la línea.nv.. se hará una clasificación ascendente. Cabec. la siguiente pantalla que nos aparecerá hará referencia únicamente a estos campos . Marc. : Con este checkbox activado. : Para enmarcar a nivel de grupo. se visualiza un texto al principio de cada nivel de grupo. Dist. en la cabecera del listado (o subcabecera de totales) nos salga escrito : Código de Cliente: XXXXXXX. será descendente. Una línea (dependiente) sólo deberá depender de otra línea (línea condicionada) si la línea condicionada sólo contiene campos asignados a una base de datos de una tabla jerárquicamente inferior a la tabla de los campos a visualizar en la línea dependiente Lin. En caso de dependencias entre líneas es necesario respetar la estructura de la base de datos correspondiente. es decir al cambiar los conceptos de clasificación.• A nivel global. : Inserta un salto de página antes de cada nuevo grupo. Condic : Si se indica el número de otra línea. Txt. se le especifica si la lista debe ir enmarcada. Pág. por ejemplo. Es como asociar una máscara al campo. siempre y cuando una de las líneas a continuación ocasione el cambio de página. en la que se especifica el texto que ha de aparecer al principio de cada nuevo grupo. Si decidimos clasificar la lista por algún campo. es decir. la siguiente pantalla será la de Textos de niveles de grupo.de la pantalla anterior. Si se ha activado el checkbox Txt. LinBla. En caso contrario. Suma : Para obtener una suma parcial de los campos a sumarizar a cada cambio de grupo. • • • • • • • • • • • • • . creamos niveles de grupos. que cada vez que nos salga un código de circuito nuevo. Blanco Ant : Número de líneas en blanco a visualizar antes de la línea actual. : Marcar este campo para visualizar la línea correspondiente en la cabecera de la página en un cambio de página. Pág. si se quieren insertar líneas separadoras entre las diferentes columnas del listado o si se quiere una representación compactada de la información. : Si no está activado.

• • • Cabeceras de columna : Justo debajo de la cabecera de página.Para cada campo que aparece en el query. hay que activar este checkbox. cuantos caracteres del campo se quieren visualizar. Color : Color del campo dentro de la línea. Dentro de la máscara será suplida cada línea de subrayado ( _ ) por una posición del valor del campo. . Como puede haber varias estadísticas. sin máscara se visualizará '2000'. Finalmente está la pantalla de Cabecera de lista básica.>) que encierran la máscara no serán visualizados. basta con accionar el botón Estadísticas. toma el final del campo anterior. normalmente. • Estadísticas Las estadísticas permiten operar con los campos numéricos de las grupos funcionales utilizados en el query. en cada línea del query en la que aparezca el campo ejercicio se visualizará 'Ejercicio:2000' . Los paréntesis (<. o o o o • La siguiente pantalla es la pantalla de definición de máscaras para campos. Masc: Si se quiere especificar una máscara de salida para el campo. Pos : Posición absoluta del campo en la línea. es decir. se pueden fijar los siguientes parámetros: o Long : Longitud de visualización del campo. pero si se especifica la máscara <Ejercicio:____>. La estadística se añade.Con ayuda de una máscara es posible fijar una representación distinta a la representación estándar en la salida de un campo. <> 0 : Si este checkbox está activado. Es necesario que hayan campos alfanuméricos y numéricos. Pies de página : Pies de página del query. Para acceder a las pantallas de definición de estadísticas. Sólo se podrá hacer nueve listados de tipo Estadísticos en un mismo Query. siendo efectuada la asignación de izquierda a derecha. aparecen los textos que se visualizarán en las cabeceras de columna. A continuación está la pantalla Opciones de salida campo. : Si se quiere insertar un salto de página antes de esta línea. si el campo Ejercicio es de cuatro posiciones.Pág. basta con hacer doble click sobre el texto y aparecerá un recuadro para cambiarlo. si se ha seleccionado algún campo en el query con máscara de salida. Si se desea modificarlos. a continuación del query básico. En la primera pantalla se seleccionan los campos que se quieren en la estadística. Por ejemplo. Si no se especifica ningún valor. si el valor es igual a cero no se visualiza.• • Nva.En ella se define: Cabecera de la página : Cabecera de las páginas del query.

La estadística se puede ir plegando y desplegando con sumas parciales de los campos numéricos. Si indicamos.cada una de ellas debe tener su propio título. Texto: texto a visualizar en la estadística. Ctd: Se aplica a los campos numéricos. Se especifican los campos alfanuméricos por los que se quiere agregar el campo numérico. Cla : Orden de clasificación. Podemos especificar la secuencia en la que queremos que nos aparezcan los datos y si tendrían que estar ordenados de forma ascendente o descendente. por ejemplo. Unidad: en la que queremos los resultados (moneda). %: Este campo se utiliza para visualizar el % que representa una línea respecto al total. en la estadística aparece la cantidad de entradas contempladas en la línea. Ordena los resultados de salida de la estadística en función del orden de clasificación. Una lista ranking es un listado ordenado por un campo numérico. Lg : Longitud de salida. Lista ranking Además de la lista básica y las estadísticas. Por esto mismo también puedes determinar valores medios. Rf : Al marcar este parámetro se generarán automáticamente sumas parciales para ese campo. • • • • • • • En el caso de campos numéricos. un campo producto . Si el indicador está activado. porcentajes y total de entradas seleccionadas. tantas veces como campos numéricos con este indicador activo haya. Red : Factor de redondeo. también se deben señalar: Otra opción que nos permiten las estadísticas es la de ordenarlas según el criterio que queramos. Los totales son siempre calculados para campos numéricos. Di : Si se quiere que el orden de salida sea ascendente o descendente. si una línea es una suma parcial. Para cada campo numérico seleccionado. en el query se pueden introducir hasta diez listas ranking. Pr: Para que se calcule el promedio del campo numérico. se podrá ver cuantos registros se han considerado en la suma. es decir. se debe determinar los siguientes parámetros : • • • • Nº : Este parámetro marca el orden de los campos que aparecen en la estadística.

se determina : En los campos numéricos se determina: Otras opciones Una vez tenemos ya creada la query. Llamar informe Una query la podemos enlazar con otros reports. el resultado será un listado ordenado de los productos más vendidos. Lg : Longitud de visualización. Asc: Si la lista ranking debe ser ordenada en criterio ascendente o descendente. Red : Factor de redondeo. vendidas numérico. Si lo que queremos es conectar esta query con otra query. debemos informar el grupo de usuarios y la query a la que queremos llamar. apretamos la opción de Otro tipo informe y nos saldrán las distintas opciones que tenemos. en los que veremos las unidades vendidas agregadas por producto. Una query se puede comunicar con otros informes. Unidad: moneda en la que está expresado el resultado. Si lo que queremos hacer no es asignar una query sino otro tipo de informe. En los campos alfanuméricos. Los diferentes informes a los que podemos llamar son: .alfanumérico y un campo uds. al realizar el listado otras posibilidades se nos ofrecen. Si estando en la pantalla inicial de modificación de query nos colocamos en: Pasar a → Asignar informe. Cr : Si es el criterio por el que se desea ordenar. Lg : Longitud de visualización. Si nos colocamos en una línea del query final y apretamos la opción de Llamar informe. Nº : Posición que ocupa en la fila... Para cada campo numérico se define : • • • • • • • • Nº : Posición que ocupa en la fila. otras querys. el query nos pasará la informacion de la línea al siguiente informe que llamemos.. los valores señalados se traspasarán de un informe a otro (drill-down). de manera que si el informe llamado tiene una pantalla de selección con campos que se visualizan en la query.

). . Aquí tenemos la opción de comunicar la query con un informe del report writer entre otros (también con informes de bienes inmuebles.. Informe ABAP/4 Informamos el nombre de un report y éste. se ejecutará con los datos que le enviamos desde el query. simplemente indicando el nombre el grupo de usuarios y el nombre del query. de la pantalla resultado de la query pasaríamos a la del report painter/writer. ejecutándose directamente el report señalado. En el caso de que sólo hubiera un report writer o report painter en ese grupo de informes. y ejecutará la transacción directamente. etc. Tanto en el caso de transacciones como en el de Informes de ABAP/4 hay que vigilar que se pasen todos los parámetros necesarios. al igual que la transacción. pues los grabará. No obstante. Informes report writer Comunicamos la query con un report writer.Portafolio de informes A continuación deberemos informar el informe al que queremos acceder a través de la query.. Codigo Una de las ventajas de hacer un Query es que de forma automática tienes el código fuente del programa.. su complijidad es tan endiablada que meterse en su código resulta una batalla perdida. Investigaciones Debemos informar la clase de aplicación a la que va destinado el query. sino se nos ejecutarán de forma errónea. Para ello debemos informar el grupo de informes que queremos ejecutar. con unas pequeñas modificaciones podemos disponer de él. Esta opción la podemos hacer desde aquí o directamente desde el punto 3. Si ésta da como resultado un informe. ABAP/4-Query De una query podemos pasar a otra query de diferente grupo de usuarios. con lo cual. Transacciones Informamos el código de la transacción y pasará a ésta los datos recogidos por la línea de la query señalada. visualizaremos el informe. en el caso de que ejecutaramos esta opción. si da de alta datos.

Sign up to vote on this title
UsefulNot useful