[RESUELTO]Informe basado en una consulta
[RESUELTO]Informe basado en una consulta
Tengo la consulta que se ve en el fichero adjunto, quiero decir que ya he tirado la toalla, como no se la forma de hacer la pregunta he estado unas dos semanas intentando sacarlo, he probado de todo y nada. La consulta la ejecuto y sale perfecto, pero al llevarlo a informe, no hay forma.
Deseo que en el informe, me salga los datos de la consulta y que ademas una vez hecha la consulta entre fechas me sume los totales.
Por favor que debo o como debo hacer.
Muchas gracias
Deseo que en el informe, me salga los datos de la consulta y que ademas una vez hecha la consulta entre fechas me sume los totales.
Por favor que debo o como debo hacer.
Muchas gracias
- Adjuntos
-
- Doc1.docx
- (40.84 KiB) Descargado 140 veces
Última edición por ALBARRAN7 el Dom Feb 04, 2018 2:51 pm, editado 1 vez en total.
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
Obtendrás mejoras respuetas si subes el archivo de Base de ejemplo, y no una captura de pantalla.
Saludos
Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: Informe basado en una consulta
Como dice el jefe......con un archivo de ejemplo, sin datos comprometedores, podremos mirar qué hacer con la consulta o con el informe. Si no, lo tenemos un poco crudo.
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
Libreoffice 6.4.2, en Windows 10
Re: Informe basado en una consulta
Gracias, lo voy a intentar, el problema que yo tengo es que me cuesta mucho para hacer que el archivo no pese.
voy a ver que puedo hacer
Un saludo.
voy a ver que puedo hacer
Un saludo.
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
al irse a informe me pide las fechas dos veces una por los resultados lineales y la otra por la suma, pero con todo y con eso, no suma bien las cantidades, me gustaria poder hacer el informe entre fechas escribiendolas una sola vez y que me sume el listado que yo deseo.
estoy loco ya, lo mejor que he podido sacar es lo que hay en el fichero adjunto. A ver si e puede hacer mejor porque amí creo que ya se me acabaron los recursos.
Un saludo
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
Hola,
Para mi el problema lo tienes por el tipo de informe creado, ya que llamas dos veces a la consulta. Una en ReportOpen y otra en QueryName en propiedades del informe lo puedes ver. Para este tipo de informe no te puedo ayudar, pero si usas el diseñador ORB, este problema no lo tendrás.
Saludos
Para mi el problema lo tienes por el tipo de informe creado, ya que llamas dos veces a la consulta. Una en ReportOpen y otra en QueryName en propiedades del informe lo puedes ver. Para este tipo de informe no te puedo ayudar, pero si usas el diseñador ORB, este problema no lo tendrás.
Saludos
OpenOffice 4.1.15 y LibreOffice 6.2.4.2 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
Re: Informe basado en una consulta
OpenOffice 4.1.15 y LibreOffice 6.2.4.2 en W-10, y LibreOffice 4.1.6.2 en Open Suse 13.1(VirtualBox)
Re: Informe basado en una consulta
lo he intentado varias veces con ORB varias veces pero como no se, pues es como el que no ve
gracias de todas formas por tu pronta contestación, voy a ver que saco del enlace que me has mandado y ya contare algo
Un saludo.
gracias de todas formas por tu pronta contestación, voy a ver que saco del enlace que me has mandado y ya contare algo
Un saludo.
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
Buenas!
El que la consulta tenga limitadores me limita mucho (no soy ningún especialista en SQL que digamos).
Pensé en hacer de la primera consulta una vista, y desde allí hacer el resumen con la segunda consulta, para poder añadir un subformulario en el informe. Pero la vista no funciona con parámetros, así que todo mi gozo en un pozo.
Al final modifiqué el informe en cuanto al origen de datos, poniendo solo la primera consulta ( no se puede poner 3 orígenes distintos de datos en un informe), y le apliqué una macro que tengo hecha desde hace mucho, que va bien (podría mejorarse el estilo, añadiendo bordes, cambiando color, etc.)
El asunto es que para que te funcione la macro lo que hice fue añadir un formulario con un botón.
Espero que te sirva
El que la consulta tenga limitadores me limita mucho (no soy ningún especialista en SQL que digamos).
Pensé en hacer de la primera consulta una vista, y desde allí hacer el resumen con la segunda consulta, para poder añadir un subformulario en el informe. Pero la vista no funciona con parámetros, así que todo mi gozo en un pozo.
Al final modifiqué el informe en cuanto al origen de datos, poniendo solo la primera consulta ( no se puede poner 3 orígenes distintos de datos en un informe), y le apliqué una macro que tengo hecha desde hace mucho, que va bien (podría mejorarse el estilo, añadiendo bordes, cambiando color, etc.)
El asunto es que para que te funcione la macro lo que hice fue añadir un formulario con un botón.
Espero que te sirva
Editado: No modifiqué ninguna de las consultas, pero si mantienes la solución aportada no es necesaria la consulta SUMA_LIBRO_ AUXILIAR_F, ni su presencia en el interior de la otra consulta (LIBRO_AUXILIAR_F), que la complica y hace trabajar al motor sin necesidad. Este tipo de consultas terminan reduciendo la estabilidad del sistema y generando pérdidas de datos o incluso corrompiendo la base por completo.(Perdón por ser tan drástico!) |
- Adjuntos
-
- Nueva base de datos.7z
- (28.52 KiB) Descargado 143 veces
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
Libreoffice 6.4.2, en Windows 10
Re: Informe basado en una consulta
bueno, sigo con el tema de que querer que en el informe me sume los totales, me hubiera gustado me sumara el importe, el iva y la suma de los dos, pero no lo consigo, es evidente que aun estoy muy en pañales.
estoy utilizado esta macro para que me sume la columna final, pero solo me suma los totales y no tiene en cuenta los decimales que cambios habría que hacerle a la macro.
A ver si me podeis ayudar.
Gracias
Sub TotalSum
'--------------------------------------------------------------------
' 0 Declaramos las variables
Dim oFA As Variant, ocontroller As Variant, oreportdoc As variant
Dim i as Integer, Filas as Integer, Columnas As Integer, oTexttable As Object, oCell As Object
'------------------------------------------------------------------------------
'1º Abrimos el informe y establecemos valores
ocontroller = Thisdatabasedocument.currentController
if not ocontroller.isconnected then ocontroller.connect ' Conectamos con la base de datos
oreportdoc = Thisdatabasedocument.reportdocuments.getbyname("LIBRO_AUXILIAR_CAJA_F").open ' Abrimos el informe
oTexttable = oreportdoc.Texttables(0) ' La tabla del informe
Filas= oTexttable.rows.count()-1 ' Filas que tiene la tabla
Columnas= oTexttable.Columns.Count-1
'---------------------------------------------------------------------------
' 2º Insertamos una fila al final
oTexttable.Rows.insertByIndex(Filas+1,1) ' Insertamos fila al final de la tabla
oTexttable.getCellByPosition(Columnas- 1, Filas+1).setString(Trim("TOTAL SUMA")) ' Ponemos TOTAL en la anteúltima celda
oCell = oTextTable.getCellByPosition(Columnas, Filas+1) ' Seleccionamos la siguiente celda para poner los resultados
oFA = createUnoService( "com.sun.star.sheet.FunctionAccess" ) ' Accedemos a las funciones de Calc
'------------------------------------------------------------------------
' 3º Generamos un array que lo rellenamos con los valores seleccionados
Dim Array(1 to Filas) ' Arrary generado
For i=1 to Filas ' Ciclo de filas
Array (i)= (Int(oTexttable.GetCellByPosition(Columnas,i).getString)) ' Valores que ponemos en el array
next i ' Acaba el ciclo de filas
oCell.setValue(oFA.callFunction( "SUM",Array()) ' Aplicamos la suma de la columna
oTexttable.Rows(Filas+1).BackColor = RGB(255, 255, 0) ' Coloreamos para que se vea
End sub
perdonar pero no se donde se da para que salga esta macro como he visto en el foro.
estoy utilizado esta macro para que me sume la columna final, pero solo me suma los totales y no tiene en cuenta los decimales que cambios habría que hacerle a la macro.
A ver si me podeis ayudar.
Gracias
Sub TotalSum
'--------------------------------------------------------------------
' 0 Declaramos las variables
Dim oFA As Variant, ocontroller As Variant, oreportdoc As variant
Dim i as Integer, Filas as Integer, Columnas As Integer, oTexttable As Object, oCell As Object
'------------------------------------------------------------------------------
'1º Abrimos el informe y establecemos valores
ocontroller = Thisdatabasedocument.currentController
if not ocontroller.isconnected then ocontroller.connect ' Conectamos con la base de datos
oreportdoc = Thisdatabasedocument.reportdocuments.getbyname("LIBRO_AUXILIAR_CAJA_F").open ' Abrimos el informe
oTexttable = oreportdoc.Texttables(0) ' La tabla del informe
Filas= oTexttable.rows.count()-1 ' Filas que tiene la tabla
Columnas= oTexttable.Columns.Count-1
'---------------------------------------------------------------------------
' 2º Insertamos una fila al final
oTexttable.Rows.insertByIndex(Filas+1,1) ' Insertamos fila al final de la tabla
oTexttable.getCellByPosition(Columnas- 1, Filas+1).setString(Trim("TOTAL SUMA")) ' Ponemos TOTAL en la anteúltima celda
oCell = oTextTable.getCellByPosition(Columnas, Filas+1) ' Seleccionamos la siguiente celda para poner los resultados
oFA = createUnoService( "com.sun.star.sheet.FunctionAccess" ) ' Accedemos a las funciones de Calc
'------------------------------------------------------------------------
' 3º Generamos un array que lo rellenamos con los valores seleccionados
Dim Array(1 to Filas) ' Arrary generado
For i=1 to Filas ' Ciclo de filas
Array (i)= (Int(oTexttable.GetCellByPosition(Columnas,i).getString)) ' Valores que ponemos en el array
next i ' Acaba el ciclo de filas
oCell.setValue(oFA.callFunction( "SUM",Array()) ' Aplicamos la suma de la columna
oTexttable.Rows(Filas+1).BackColor = RGB(255, 255, 0) ' Coloreamos para que se vea
End sub
perdonar pero no se donde se da para que salga esta macro como he visto en el foro.
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
Buenas!
En la parte superior del espacio en el que escribes, si usas el botón 'Code', te aparecerá la palabra 'code' entre corchetes, un espacio, y luego otra vez la palabra 'code' entre corchetes. Si pegas el código en el espacio terminará apareciendo el código, digamos, bien, cuando mires tu mensaje en 'vista previa' (botón al lado de 'enviar').
Bien!
En esta ocasión ya he eliminado la consulta que te comenté y he añadido los campos que querías. He cambiado algo el aspecto del texto, eliminado bordes, puesto color de fondo....
Entiendo que si es de las primeras veces que te pones con una macro, sea difícil entender el funcionamiento, pero va todo explicadito.
De todos modos, el libro de Mauricio es para tener de cabecera, después con el tiempo y la práctica te vas soltando.
Si quieres aplicar más efectos (color del texto, etc) busca en el enlace que te dio RMG. Va de lo más simple a lo más complejo, desde celdas a tablas completas, etc. Muchas cosas no parecen prácticas, pero para usar en otra técnica más compleja no dejan de ser útiles.
Un saludo!
En la parte superior del espacio en el que escribes, si usas el botón 'Code', te aparecerá la palabra 'code' entre corchetes, un espacio, y luego otra vez la palabra 'code' entre corchetes. Si pegas el código en el espacio terminará apareciendo el código, digamos, bien, cuando mires tu mensaje en 'vista previa' (botón al lado de 'enviar').
Bien!
En esta ocasión ya he eliminado la consulta que te comenté y he añadido los campos que querías. He cambiado algo el aspecto del texto, eliminado bordes, puesto color de fondo....
Entiendo que si es de las primeras veces que te pones con una macro, sea difícil entender el funcionamiento, pero va todo explicadito.
De todos modos, el libro de Mauricio es para tener de cabecera, después con el tiempo y la práctica te vas soltando.
Si quieres aplicar más efectos (color del texto, etc) busca en el enlace que te dio RMG. Va de lo más simple a lo más complejo, desde celdas a tablas completas, etc. Muchas cosas no parecen prácticas, pero para usar en otra técnica más compleja no dejan de ser útiles.
Un saludo!
- Adjuntos
-
- Nueva base de datos1.7z
- (29.01 KiB) Descargado 146 veces
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
Libreoffice 6.4.2, en Windows 10
Re: Informe basado en una consulta
[RESUELTO, muchas gracias longi, me ha venido muy bien, yo ya estaba loco, solo decirte, que como trabajo, con el 3.2, he tenido que modificar alguna cosita, y también en vez de tenerlo en tres líneas, lo he dejado en una sola poniendo los resultados debajo de cada suma correspondiente.
Te lo agradezco y te saludo especialmente. Ahora voy con estadística a ver que puedo hacer y que seguro alguna pregunta mas tendré que hacer.
Un abrazo
Te lo agradezco y te saludo especialmente. Ahora voy con estadística a ver que puedo hacer y que seguro alguna pregunta mas tendré que hacer.
Un abrazo
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
[RESUELTO]. Me comi un corchete, lo siento.
OpenOffice 4.1.3 en windows 10
[resuelto] Informe basado en una consulta
hay que ver no doy una, pido perdon
OpenOffice 4.1.3 en windows 10
Re: Informe basado en una consulta
El primer post de tu tema, es el que debes marcar como RESUELTO, de esta forma, conseguiremos un Foro más ordenado.
Saludos
Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: Informe basado en una consulta
Hola!
Me gustaría conocer cómo quedó finalmente el código, ya que dices que al ser versión diferente tuviste que hacer algún cambio, y quisiera saber cómo son.
Gracias!
Me gustaría conocer cómo quedó finalmente el código, ya que dices que al ser versión diferente tuviste que hacer algún cambio, y quisiera saber cómo son.
Gracias!
Openoffice 4.1.7, en Windows 10
Libreoffice 6.4.2, en Windows 10
Libreoffice 6.4.2, en Windows 10