Macro para crear un informe con datos concretos

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...

Macro para crear un informe con datos concretos

Notapor palopas2 » Mar Oct 23, 2018 8:21 am

A ver si soy capaz de explicar mi duda (pues, dado que los datos no son míos, no creo que pueda dar mucha información) sin mostrar mucho de la base de datos concreta. El caso es que tengo un formulario-buscador que consta de dos tablas con diferentes criterios de búsqueda (formulario y subformulario, claro). Mi problema es que, una vez realizadas las búsquedas y obtenido las filas de las tablas que me interesan, me gustaría poder obtener un informe en el que se me muestren solamente esas filas, por decirlo de alguna manera. No sé cuál es la forma más eficiente de hacerlo, si hay macros que creen informes con buen diseño o puedo conseguir que la macro "filtre" dentro de un informe en el que estén todos los datos y me muestre un informe alternativo solo con los que me interesan... Tal vez lo que pretendo no se pueda hacer.

Espero haberme explicado correctamente, y lamento no poder dar muchos más detalles.
LibreOffice 5.4 en Windows 7
palopas2
 
Mensajes: 7
Registrado: Mar Oct 23, 2018 8:14 am

Re: Macro para crear un informe con datos concretos

Notapor RMG » Mar Oct 23, 2018 11:38 am

Hola,

Lo que pretendes hacer, se puede hacer con una macro que obtenga los registros con el id actual, del filtro hecho por el formulario, cree una consulta con esos registros y lance el informe que se basa en esa consulta.

Para poder ayudarte mejor puedes adjuntar una pequeña BD con datos ficticios con el formulario y el informe a falta de crear la macro, así nos evitas arrancar de cero y sin el peligro de que lo hecho no pueda servir a tus propósitos.

Saludos
OpenOffice 4.1.5 y LibreOffice 5.4.5.1 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
RMG
 
Mensajes: 3452
Registrado: Mar Nov 17, 2009 6:59 am
Ubicación: Valencia - España

Re: Macro para crear un informe con datos concretos

Notapor palopas2 » Mié Oct 24, 2018 8:19 am

RMG escribió:Hola,

Lo que pretendes hacer, se puede hacer con una macro que obtenga los registros con el id actual, del filtro hecho por el formulario, cree una consulta con esos registros y lance el informe que se basa en esa consulta.

Para poder ayudarte mejor puedes adjuntar una pequeña BD con datos ficticios con el formulario y el informe a falta de crear la macro, así nos evitas arrancar de cero y sin el peligro de que lo hecho no pueda servir a tus propósitos.

Saludos


Hola,

disculpa la tardanza, me ocupo de estos temas en mi horario laboral. Te adjunto una pequeña prueba (las diferentes columnas son reales, puedes trabajar con ellas y sin duda me servirá). Como verás, "Buscadorunico" es el buscador que utilizo, y está dividido en dos tablas. Por aclarar, el procedimiento habitual es que el usuario introduzca en ambos lados el número de expediente y filtre en las tablas (lo normal es que en la parte inferior haya varios informes y en la superior un expediente para cada informe, claro). Lo que pretendo es, pues, obtener un informe (lamento la redundancia terminológica) que me proporcione los datos que queden en cada tabla, preferiblemente en un solo botón (si es en dos, uno para la de arriba y otro para la de abajo, no es mucho problema).

PD: Si se ve como un diseño torpe, aunque parezca sorprendente, mi empresa parece desearlo así. Hice varios alternativos y éste les gustó más, siendo el menos estético de todos. En fin, la vida.

Muchas gracias!
Adjuntos
Base de datos 1 - copia.zip
(32.82 KiB) 61 veces
LibreOffice 5.4 en Windows 7
palopas2
 
Mensajes: 7
Registrado: Mar Oct 23, 2018 8:14 am

Re: Macro para crear un informe con datos concretos

Notapor RMG » Mié Oct 24, 2018 10:45 am

Hola,

No hace falta buscar en los dos formularios el Expediente, conforme te lo he modificado, solo en el principal (arriba). Si te fijas veras que he vinculado el campo Expediente en los dos formularios así solo te muestra los datos del Expediente modificado. También he creado las relaciones entre tablas. Con esta vinculación cuando introduces datos en el subformulario, el campo Expediente se carga solo.

He creado dos consultas, una para obtener todos los datos de las dos tablas y otra para hacer el filtrado, este filtrado solo actua dentro del formulario, al cerrarlo elimina el filtro para disponer de todos los expedientes en el informe.

Espero que te sirva.

Saludos
Adjuntos
Base de datos 2 - copia.zip
(37.69 KiB) 76 veces
OpenOffice 4.1.5 y LibreOffice 5.4.5.1 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
RMG
 
Mensajes: 3452
Registrado: Mar Nov 17, 2009 6:59 am
Ubicación: Valencia - España

Re: Macro para crear un informe con datos concretos

Notapor palopas2 » Jue Oct 25, 2018 8:15 am

RMG escribió:Hola,

No hace falta buscar en los dos formularios el Expediente, conforme te lo he modificado, solo en el principal (arriba). Si te fijas veras que he vinculado el campo Expediente en los dos formularios así solo te muestra los datos del Expediente modificado. También he creado las relaciones entre tablas. Con esta vinculación cuando introduces datos en el subformulario, el campo Expediente se carga solo.

He creado dos consultas, una para obtener todos los datos de las dos tablas y otra para hacer el filtrado, este filtrado solo actua dentro del formulario, al cerrarlo elimina el filtro para disponer de todos los expedientes en el informe.

Espero que te sirva.

Saludos


Hola,

Las modificaciones son geniales, me serán muy útiles :D . Lo único que me faltaría (quizá sea mucho pedir, ni mucho menos deseo abusar) es que se puedan imprimir los datos completos. Me refiero a que, a la hora de imprimir el expediente (puede que sea error mío, no lo sé), únicamente me imprime número de expediente y nombre, cuando me interesan esos datos y todos los demás de la tabla, así como los de la otra tabla (sí, soy exigente...). Supongo, dado que me interesa aprender, que bastaría con modificar el formulario "InfExpedientes" para que contenga todos los datos (Gestor, SBDG, etc...) y hacer exactamente lo mismo con el otro formulario (con la tabla de abajo, vaya). ¿Se haría en la misma macro o cómo?

Lamento ser tan insistente.

Muchas gracias.
LibreOffice 5.4 en Windows 7
palopas2
 
Mensajes: 7
Registrado: Mar Oct 23, 2018 8:14 am

Re: Macro para crear un informe con datos concretos

Notapor RMG » Jue Oct 25, 2018 11:26 am

Hola,

Solo ves expediente y nombre por que solo he puesto esos campos en el informe, el resto de campos te lo dejo como tarea para que aprendas, Si entras en el diseño del informe (no del formulario), podrás hacerlo. Si no te aclaras con el ORB (diseñador de informes de Oracle) puedes utilizar el asistente de informes de AOO y hacerlo nuevo, después le pones el nombre del actual para que lo recoja la macro y solucionado.

Saludos
OpenOffice 4.1.5 y LibreOffice 5.4.5.1 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
RMG
 
Mensajes: 3452
Registrado: Mar Nov 17, 2009 6:59 am
Ubicación: Valencia - España


Volver a Macros y API UNO

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 3 invitados