[RESUELTO] ordenación de campos en informes

Discute sobre las herramientas de la base de datos
Responder
vmarcal
Mensajes: 26
Registrado: Mar Mar 31, 2015 6:22 pm

[RESUELTO] ordenación de campos en informes

Mensaje por vmarcal »

He creado (sin ORB) un informe basado en una consulta utilizando el asistente y compruebo que si en el paso 4º utilizo la opción de ordenación (en cualquier campo) se genera el informe erróneamente: solamente el encabezado y un resultado genérico (en los campos de fecha aparece la fecha actual, en los de número el dígito 987 y en los de texto la sílaba ut). Además, si genero el informe sin el asistente (y por tanto sin el error de ordenación) por más que intentó después en modo de edición ordenar el campo nada consigo. Intento hacerlo seleccionando la columna en la vista del informe (en edición) y después acudiendo al menú Herramientas-Ordenar; aparece una venta con claves, columna y tipo pero por más que las modifico si vuelvo sobre los pasos siempre es lo mismo y no altera la ordenación predefinida. Ignoro si esos son los pasos correctos. Además, por más que la consulta sobre la que se basa tenga establecida ordenación de algún campo el informe no lo respeta.
También me gustaría indicar que cuando abro la base en un sistema operativo de iMac (OS X 10.9.5) se cuelga con bastante frecuencia y a veces (no todas) aparece un mensaje que dice "index out of bounds". Me gustaría que alguien me pudiera ayudar con el primer problema y me informaran si es normal el defectuoso funcionamiento en los Mac.
Gracias.
Última edición por vmarcal el Vie Abr 24, 2015 11:03 am, editado 1 vez en total.
LibreOffice 5.2.3.3 OS X 10.11.6
Longi
Mensajes: 811
Registrado: Dom Ene 20, 2013 9:05 pm
Ubicación: Ourense, Galicia, España

Re: ordenación de campos en informes

Mensaje por Longi »

Buenas!

Los informes en Open tienen algunos problemillas, y este es conocido.
Supongo que el origen de los datos es una consulta, y además no simple. En estos casos no suele respetar nada, y es conveniente que cambies el origen de los datos por una orden SQL o que la consulta la conviertas en una vista, después vuelves a hacer el informe y pones la vista como origen de datos. El orden será el que tengas en la Vista.
El cambio por una orden SQL es un poco más complicado, pero igualmente efectivo.

Un saludo!

Ah!, con respecto a lo segundo no te puedo ayudar, pero seguro que hay más gente en el foro que sabrá de qué va el tema.
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
vmarcal
Mensajes: 26
Registrado: Mar Mar 31, 2015 6:22 pm

Re: ordenación de campos en informes

Mensaje por vmarcal »

Longi escribió:Buenas!

Los informes en Open tienen algunos problemillas, y este es conocido.
Supongo que el origen de los datos es una consulta, y además no simple. En estos casos no suele respetar nada, y es conveniente que cambies el origen de los datos por una orden SQL o que la consulta la conviertas en una vista, después vuelves a hacer el informe y pones la vista como origen de datos. El orden será el que tengas en la Vista.
El cambio por una orden SQL es un poco más complicado, pero igualmente efectivo.

Un saludo!

Ah!, con respecto a lo segundo no te puedo ayudar, pero seguro que hay más gente en el foro que sabrá de qué va el tema.
Muchísimas gracias. He probado lo de la 'vista' y funciona perfectamente para crear los informes ordenados; sinceramente, soy tan novato en esto que ni siquiera sabía que se podían crear vistas (de hecho ni siquiera se para que sirven, salvo ahora para hacer los informes sobre ellas). El problema se mantiene cuando lo intento con consultas que exigen parámetros (así consultas entre fechas) pues la vista sale sin datos lo que me obligará a formar multitud de consultas (y no sola la que exige el/los parámetro/s) para posteriormente obtener sus vistas e informes ordenados. Lo del origen de datos por una SQL ... ni idea, desgraciadamente son un simple usuario sin conocimientos de informática. Agradezco enormemente tu ayuda.
LibreOffice 5.2.3.3 OS X 10.11.6
Longi
Mensajes: 811
Registrado: Dom Ene 20, 2013 9:05 pm
Ubicación: Ourense, Galicia, España

Re: ordenación de campos en informes

Mensaje por Longi »

Con respecto al SQL habría que hacer los siguientes pasos, si es que te fías de alguien sin conocimientos de programación:
Parece que las consultas no funcionan de lo mejor con Open Office, entonces al tener la consulta diseñada, la abres para editar en vista SQL, y copias todo el código que te sale allí.

1-Abres el informe en modo diseño
2-Abres el navegador de formularios/informes
3- Puedes ver un formulario llamado 'ReportSource', seleccionalo y si es necesario expande la rama.
4-Vete al control oculto 'CommandType', click en el con el botón derecho y abre sus propiedades
5-Cambia el valor en la segunda línea por un '2' (La fuente de datos cambia a una sentencia de SQL)
6-Abre las propiedades del control oculto 'Command'
7-En la segunda línea ('Value') pega el SQL que habías copiado con anterioridad.

Si todo va según lo previsto ya tienes la posibilidad de funcionar con el informe.
Conveniente es que el orden de los campos lo hayas puesto previamente en el diseño de la consulta, y no en el del informe, y aunque no lo he probado, supongo que el tema de los parámetros sí que se respetaría, y para abrir el informe pediría los parámetros que quieres para poder ejecutar el SQL antes de abrir el informe.

Ya nos contarás si te funciona.

Un saludo!
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
vmarcal
Mensajes: 26
Registrado: Mar Mar 31, 2015 6:22 pm

Re: ordenación de campos en informes

Mensaje por vmarcal »

:knock: :knock: Muchas gracias. He realizado los pasos 1 a 4 sin problema, pero cuando en el paso 5 pongo el 2 en el valor del campo de control oculto (nombre: 'commandType') no pasa absolutamente nada (no hay nada que copiar) y si lo dejo con un dos y vuelvo al modo de consulta normal da error [:La consulta con la expresión "" no se ha podido ejecutar. Verifique su fuente de datos]. No se que es lo que hago mal!!! :knock:
LibreOffice 5.2.3.3 OS X 10.11.6
Longi
Mensajes: 811
Registrado: Dom Ene 20, 2013 9:05 pm
Ubicación: Ourense, Galicia, España

Re: ordenación de campos en informes

Mensaje por Longi »

Buenas!

Lo que hay que copiar es el código SQL de lo que es la consulta, que es lo que te coloco antes del punto 1.
En el punto 5, supone poner un 2 en la segunda fila de 'ComandType'
Después tienes que ir al control 'Comand', que es otro, y en él, en su segunda línea pegas el comando SQL que habías habías copiado al principio, procedente de la consulta que podríamos llamar 'madre'.

El último punto que se me olvidó, y muy importante: Cruzar los dedos!!!

Suerte!
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
vmarcal
Mensajes: 26
Registrado: Mar Mar 31, 2015 6:22 pm

Re: ordenación de campos en informes

Mensaje por vmarcal »

Longi escribió:Buenas!

Lo que hay que copiar es el código SQL de lo que es la consulta, que es lo que te coloco antes del punto 1.
En el punto 5, supone poner un 2 en la segunda fila de 'ComandType'
Después tienes que ir al control 'Comand', que es otro, y en él, en su segunda línea pegas el comando SQL que habías habías copiado al principio, procedente de la consulta que podríamos llamar 'madre'.

El último punto que se me olvidó, y muy importante: Cruzar los dedos!!!

Suerte!
Muchísimas gracias!!!! ERES UN GENIO. Me funciona hasta para realizar informes con parámetros. Hoy soy un hombre feliz. Repito: MUCHÍSIMAS GRACIAS. :bravo: :bravo: :bravo: :bravo: :bravo:
LibreOffice 5.2.3.3 OS X 10.11.6
Responder