Un query es una herramienta del sistema que nos permite la posibilidad de extraer informacin de SAP mediante un sistema de Drag & Drog, de entre los tipos de Query que SAP nos ofrece podemos optar por:
Tambin se puede hacer una combinacin de estos tipos de report, es decir, hacer que en un mismo listado podamos obtener los tres al mismo tiempo haciendolo mucho ms profesional y completo.
Para poder finaliz con exito un Query primero hemos de completar cuatro pasos, pero al final de la instalacin de un proyecto de SAP, el usuario final slo tendr que realizar los dos ltimos pasos, siendo tarea de los programadores de manteniemiento, o del consultor o del propio administrador del sistema la constitucin de los dos primeros pasos.
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.
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 sern visibles para todos los usuarios del grupo.
Para definir un grupo de usuarios hay que seguir los siguientes pasos:
Las reas funcionales nos permiten hacer una preseleccin de los datos que aparecern en los queries. En la definicin del rea funcional especificamos qu tablas intervendrn en el query y qu campos. Es deber del funcional o del propio cliente crear estas areas funcionales. Se deben crear las area con suficiente visin de futuro para hacerlas lo ms ampliadas posibles.
Para acceder a la pantalla de definicin de reas funcionales, hay que seguir los siguientes pasos:
Para definir un rea funcional, se introduce en el campo rea funcional el nombre que se le quiere dar y se acciona el botn crear. Aparece una primera pantalla en la que se asocia al rea una denominacin , un grupo de autorizacin y una clase de rea funcional.
Al crear un rea funcional con unin directa de tablas, aparece una pantalla en la que se deben indicar las tablas implicadas en la unin y las condiciones de la unin. Para definir una condicin, marcamos dos tablas de la lista de tablas y hacemos click sobre definir condicin. Aparece en el panel de la derecha (condiciones de enlace) una nueva entrada. Si activamos el botn de especificar condiciones , a la derecha de la nueva entrada, veremos una pantalla con todos los campos de las dos tablas implicadas en la unin. En esta pantalla se definen los campos que han de ser iguales para la unin de las tablas.
A continuacin, se especifican los campos de las tablas que sern visibles en el rea funcional. Aparece un nuevo concepto: el grupo funcional. Un grupo funcional no es ms que un conjunto de campos de las tablas implicadas en el rea funcional.
Por un lado, estn los grupos funcionales y por otro, las tablas del rea funcional. El procedimiento a seguir es el siguiente :
Existe una opcin que nos permite incluir codigo fuente dentro de los query (Coding...) con ello podremos incluir codigo antes y despus de la seleccin de datos, colocar authority-check o acceder a otras tablas, etc.
Una vez que tenemos el grupo de usuario definido y pertenecemos a l, que el area funcional ya ha sido creada y los campos ya estan disponibles para extraer nuestros listados, justo en este momento ya somos capaces de crear nuestros query. Para entrar en el entorno de definicin de queries, se debe seguir el siguiente procedimiento :
En la pantalla se listarn las queries asociadas a un grupo de usuarios. Si el usuario pertenece a mas de un grupo, con la opcin cambiar grupo de usuario (shift + F7) en la barra de iconos, puede acceder a las queries de otro grupo al que pertenezca. Con los botones de crear y modificar accedemos a las pantallas de actualizacin de queries. Al crear un query, si el grupo de usuarios tiene ms de un rea funcional asignada, el sistema pide una preseleccin del rea funcional en la que se quiere definir el query. La primera pantalla que aparece es la de datos generales.
En ella se define el ttulo del query y una explicacin del mismo. Por otro lado, se define el formato de salida (nmero de filas y columnas). Tambin se le puede asignar una variante estndar y bloquear el query para que los dems usuarios del grupo no puedan modificarlo. Por ultimo, se puede determinar si se quiere un traspaso de informacin a algn otro sistema (word, excel, EIS,...). Para pasar a la siguiente pantalla, hacemos click sobre el icono que aparece en la barra de status.
En la siguiente pantalla se elige qu grupos funcionales intervendrn en el query. Esta pantalla determinar la posibilidad de trabajar con ms o menos campos.
En la siguiente se seleccionan los campos de dichas reas funcionales que aparecern.
Para finalizar con la definicin de parmetros generales, la ltima pantalla nos permite definir si queremos que en el query se haga seleccin por campos mediante select options.
Nota: En el caso de Bases de Datos Lgicas, para que realice correctamente la seleccin de datos de una tabla secundaria, como mnimo tenemos que visualizar un campo de esa tabla en el listado. Si no es as, la query no accede a esa tabla y, por lo tanto, no realiza la seleccin correspondiente. La tabla primaria est relacionada directamente con la secundaria mediante uno o varios campos en comn. Si en lugar de listar el campo de la tabla primaria listamos el de la secundaria, la seleccin del resto de campos de esa tabla la har correctamente. Sino, ignorar lo que le hayamos informado en la pantalla de seleccin. La finalidad de una query es hacer un listado, por lo tanto, el seleccionar una tabla para luego no listar ninguno de sus campos puede ser el factor que haga que esta seleccin de la tabla secundaria no funcione (es decir, sea ignorada).
A parte de los campos de seleccin, las queries tambin nos permiten crear campos locales. Esto nos permite generar nueva informacin a partir de los campos del rea funcional sin tener que incluir un campo adicional.
Para definir un campo local tenemos que ir por: Tratar Campo Local Crear, en la pantalla de Seleccin de campos.
Puedes determinar el valor de un campo de las siguientes maneras:
En este caso, el campo local es tratado como un parametro cuyo valor est determinado por una entrada en la pantalla de seleccin. Esto no se puede realizar con smbolos o iconos. Para forzar un valor en la pantalla de seleccin tendremos que activar la opcin de Obligatorio.
Una vez que hemos seleccionado los grupos funcionales y los campos que vamos a tratar en simplemente bastar con pulsar sobre elbotn de lista bsica para obtener un Query. La lista bsica no es ms que una forma de obtener un listado de forma lineal de forma rpida y sencilla. Para comenzar a definir un query deberemos empezar por:
Las estadsticas permiten operar con los campos numricos de las grupos funcionales utilizados en el query. La estadstica se añade, normalmente, a continuacin del query bsico. Para acceder a las pantallas de definicin de estadsticas, basta con accionar el botn Estadsticas. En la primera pantalla se seleccionan los campos que se quieren en la estadstica. Es necesario que hayan campos alfanumricos y numricos. Slo se podr hacer nueve listados de tipo Estadsticos en un mismo Query. Como puede haber varias estadsticas, cada una de ellas debe tener su propio ttulo. Podemos especificar la secuencia en la que queremos que nos aparezcan los datos y si tendran que estar ordenados de forma ascendente o descendente.
Los totales son siempre calculados para campos numricos. Por esto mismo tambin puedes determinar valores medios, porcentajes y total de entradas seleccionadas.
Para cada campo numrico seleccionado, se debe determinar los siguientes parmetros :
En el caso de campos numricos, tambin se deben señalar:
Otra opcin que nos permiten las estadsticas es la de ordenarlas segn el criterio que queramos.
Adems de la lista bsica y las estadsticas, en el query se pueden introducir hasta diez listas ranking. Una lista ranking es un listado ordenado por un campo numrico. Se especifican los campos alfanumricos por los que se quiere agregar el campo numrico. Si indicamos, por ejemplo, un campo producto alfanumrico y un campo uds. vendidas numrico, el resultado ser un listado ordenado de los productos ms vendidos, en los que veremos las unidades vendidas agregadas por producto.
Para cada campo numrico se define :En los campos alfanumricos, se determina :
En los campos numricos se determina:
Una vez tenemos ya creada la query, al realizar el listado otras posibilidades se nos ofrecen.
Llamar informe
Una query la podemos enlazar con otros reports, otras querys,... Si estando en la pantalla inicial de modificacin de query nos colocamos en: Pasar a Asignar informe, 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.
Si lo que queremos hacer no es asignar una query sino otro tipo de informe, apretamos la opcin de Otro tipo informe y nos saldrn las distintas opciones que tenemos.
Una query se puede comunicar con otros informes. Si nos colocamos en una lnea del query final y apretamos la opcin de Llamar informe, el query nos pasar la informacion de la lnea al siguiente informe que llamemos, de manera que si el informe llamado tiene una pantalla de seleccin con campos que se visualizan en la query, los valores señalados se traspasarn de un informe a otro (drill-down).
Los diferentes informes a los que podemos llamar son:
Portafolio de informes
A continuacin deberemos informar el informe al que queremos acceder a travs de la query.
Investigaciones
Debemos informar la clase de aplicacin a la que va destinado el query. Aqu tenemos la opcin de comunicar la query con un informe del report writer entre otros (tambin con informes de bienes inmuebles,...). Esta opcin la podemos hacer desde aqu o directamente desde el punto 3.
Informes report writer
Comunicamos la query con un report writer. Para ello debemos informar el grupo de informes que queremos ejecutar. En el caso de que slo hubiera un report writer o report painter en ese grupo de informes, en el caso de que ejecutaramos esta opcin, de la pantalla resultado de la query pasaramos a la del report painter/writer, ejecutndose directamente el report señalado.
Transacciones
Informamos el cdigo de la transaccin y pasar a sta los datos recogidos por la lnea de la query señalada, y ejecutar la transaccin directamente. Si sta da como resultado un informe, visualizaremos el informe, si da de alta datos, pues los grabar, etc.
Informe ABAP/4
Informamos el nombre de un report y ste, al igual que la transaccin, se ejecutar con los datos que le enviamos desde el query. Tanto en el caso de transacciones como en el de Informes de ABAP/4 hay que vigilar que se pasen todos los parmetros necesarios, sino se nos ejecutarn de forma errnea.
ABAP/4-Query
De una query podemos pasar a otra query de diferente grupo de usuarios, simplemente indicando el nombre el grupo de usuarios y el nombre del query.
Una de las ventajas de hacer un Query es que de forma automtica tienes el cdigo fuente del programa, con lo cual, con unas pequeñas modificaciones podemos disponer de l. No obstante, su complijidad es tan endiablada que meterse en su cdigo resulta una batalla perdida.