PDA

Ver la Versión Completa : Cubos de información


newtron
16-09-2013, 14:15:08
Hola a tod@s.

Un cliente me ha preguntado si mi programa tiene "Cubos de información". Según creo esto son programas que se conectan a las bases de datos para poder consultar la información de forma dinámica y rápida.

¿Conocéis vosotros algún programa de este tipo que se pueda conectar a cualquier base de datos y no se dispare de precio?

Gracias y un saludo

Casimiro Notevi
16-09-2013, 15:33:18
¿Sólo te ha preguntado eso?, quizás sería inconveniente que le preguntaras exactamente qué necesita, lo mismo son informes y listados que ya tiene tu programa.

nlsgarcia
16-09-2013, 16:51:36
newtron,


..."Cubos de información". Según creo esto son programas que se conectan a las bases de datos para poder consultar la información de forma dinámica y rápida...


Revisa estos links:

OLAP : http://es.wikipedia.org/wiki/OLAP

Implementing OLAP in Delphi Applications : http://www.olap.ru/desc/microsoft/odelphi.asp

Torry's Delphi OLAP : http://www.torry.net/pages.php?id=750

InetSoft's OLAP Reporting Solution : http://www.inetsoft.com/company/olap_reporting/?utm_vendor=google&utm_source=easternsoutham&utm_campaign=olap&utm_medium=search&utm_content=5941129082&utm_term=cube%20in%20olap&gclid=CJ2MqpOO0LkCFSZp7Aod3BoAYA
Espero sea útil :)

Nelson.

newtron
16-09-2013, 17:01:41
¿Sólo te ha preguntado eso?, quizás sería inconveniente que le preguntaras exactamente qué necesita, lo mismo son informes y listados que ya tiene tu programa.

No no, lo que no quiere son los clásicos listados, es algo más relacionado con lo que comenta el amigo nlsgarcia, que por cierto le echaré un vistazo con tranquilidad.

Gracias a los dos.

Julián
16-09-2013, 23:27:09
Si mal no recuerdo en la VCL la versión enterprise (¿o quizá también en la profesional?) de , tampoco recuerdo bien si Delphi 6 y/o delphi 7 había unos componenets llamados TDecisionCube o algo así que creo son lo que tu cliente dice. No se si esos compos seguiran en las versiones actuales de Delphi, pero tenñian una pinta muy muy buena.

Un saludo.

Casimiro Notevi
16-09-2013, 23:56:07
Con mi comentario quería dar a entender algo que me ocurrió una vez, similar a este caso, alguien quería un "cubo de decisiones" y le preguntamos qué quería obtener con una herramenta de ese tipo. Nos contestó que quería obtener información de volúmen de ..., comparativas sobre ...., información relativa a ..., etc.
Y le contestamos: "pero si todo eso ya lo tiene nuestro programa". Y era verdad, claro.

nlsgarcia
17-09-2013, 01:47:07
newtron,


...en la VCL la versión Enterprise...Delphi 6 y/o Delphi 7 había unos componentes llamados TDecisionCube...


Esta imagen es de los Componentes Decision Cube en Delphi 7 Enterprise:

http://img10.imageshack.us/img10/64/uc1r.jpg

Revisa este link:

Using the Decision Cube without the BDE : http://edn.embarcadero.com/article/27848
Espero sea útil :)

Nelson.

mamcx
17-09-2013, 03:00:16
Otra opcion es usar Excel con https://www.microsoft.com/en-us/bi/powerpivot.aspx.

De esa forma, tu app se dedica a ser una fuente de datos (quizas proveyendo las vistas necesarias) y dejas a excel pa los usuarios y sus necesidades...

El problema de estas cosas de "inteligencia de negocios" es que una cosa es tener una herramienta que haga cubos y graficas y otra cosa es saber hacer cubos y graficas - de ahi a que muchos hacen cosas como graficos de pastel en 3D!-, y saber como estructurar los datos.

newtron
17-09-2013, 09:50:31
Con mi comentario quería dar a entender algo que me ocurrió una vez, similar a este caso, alguien quería un "cubo de decisiones" y le preguntamos qué quería obtener con una herramenta de ese tipo. Nos contestó que quería obtener información de volúmen de ..., comparativas sobre ...., información relativa a ..., etc.
Y le contestamos: "pero si todo eso ya lo tiene nuestro programa". Y era verdad, claro.

Cierto, lo tiene pero en forma de listado y mi cliente me ha dicho expresamente que no es eso lo que quiere. Por lo visto el programa que tiene actualmente usa SQL Server y le han preparado en Excel lo que se llama una "Tabla dinámica" que lo que hace es importar los datos de sus bases de datos y dar la posibilidad de ir arrastrando las opciones para incluir/excluir parámetros como fechas, clientes, familias, rutas, etc. y la información se va actualizando de forma automática en un grid. La verdad es que tiene buena pinta.



Esta imagen es de los Componentes Decision Cube en Delphi 7 Enterprise:

http://img10.imageshack.us/img10/64/uc1r.jpg

Revisa este link:
Espero sea útil :)

Nelson.

Catchis.... en mi Delphi 2007 no está esa pestaña, rebuscaré a ver si encuentro algo parecido pero me da que no.

Otra opcion es usar Excel con https://www.microsoft.com/en-us/bi/powerpivot.aspx.

De esa forma, tu app se dedica a ser una fuente de datos (quizas proveyendo las vistas necesarias) y dejas a excel pa los usuarios y sus necesidades...

El problema de estas cosas de "inteligencia de negocios" es que una cosa es tener una herramienta que haga cubos y graficas y otra cosa es saber hacer cubos y graficas - de ahi a que muchos hacen cosas como graficos de pastel en 3D!-, y saber como estructurar los datos.

Efectivamente, como le comentaba a Casimiro Excel hace algo parecido con las "Tablas dinámicas", el problema es que yo no me llevo demasiado bien con Excel y aparte quería buscar algo más profesional para solucionar este tema que no fuera una hoja de Excel.

Gracias a todos por vuestros comentarios.

PepeLolo
17-09-2013, 15:53:57
Efectivamente, como le comentaba a Casimiro Excel hace algo parecido con las "Tablas dinámicas", el problema es que yo no me llevo demasiado bien con Excel y aparte quería buscar algo más profesional para solucionar este tema que no fuera una hoja de Excel.

Gracias a todos por vuestros comentarios.

Si quieres algo profesional, mira esto http://www.devexpress.com/Products/VCL/ExPivotGrid/
Vale pasta, pero el ROI no tiene precio y los clientes lo flipan.

mamcx
17-09-2013, 16:05:13
Efectivamente, como le comentaba a Casimiro Excel hace algo parecido con las "Tablas dinámicas", el problema es que yo no me llevo demasiado bien con Excel y aparte quería buscar algo más profesional para solucionar este tema que no fuera una hoja de Excel.

Gracias a todos por vuestros comentarios.

Pues no le veo como podrás superar de una forma aun mas profesional lo que hace Excel. No es que hayan muchos controles de donde echarle la mano a esto.

Tampoco es que sea muy difícil interfazar excel, en especial desde la version 2007. Se puede conectar directo a tu BD y/o servicio web. Lo unico seria armar un conjunto de vistas para facilitar las cosas.

En ultimas, creo que sale mas rapido que aprendas como reusar Excel y/o las herramientas de sql server para reporteo (si es que usas Sql Server) que tratar de meter un componente nuevo, hacer la programacion y todo eso pa que al final es lo que te pide un solo cliente e igual luego te va a decir: Y como lo paso a Excel?

newtron
17-09-2013, 17:30:12
Si quieres algo profesional, mira esto http://www.devexpress.com/Products/VCL/ExPivotGrid/
Vale pasta, pero el ROI no tiene precio y los clientes lo flipan.

Gracias, le echaré un vistazo.

Pues no le veo como podrás superar de una forma aun mas profesional lo que hace Excel. No es que hayan muchos controles de donde echarle la mano a esto.

Tampoco es que sea muy difícil interfazar excel, en especial desde la version 2007. Se puede conectar directo a tu BD y/o servicio web. Lo unico seria armar un conjunto de vistas para facilitar las cosas.

En ultimas, creo que sale mas rapido que aprendas como reusar Excel y/o las herramientas de sql server para reporteo (si es que usas Sql Server) que tratar de meter un componente nuevo, hacer la programacion y todo eso pa que al final es lo que te pide un solo cliente e igual luego te va a decir: Y como lo paso a Excel?

Cierto, por eso quiero ver todas las opciones para plantearme si usar algún componente o programa externo, exportar a Excel o directamente decirle a mi cliente que esa opción no la tengo disponible.

PepeLolo
17-09-2013, 22:16:47
En ultimas, creo que sale mas rapido que aprendas como reusar Excel y/o las herramientas de sql server para reporteo (si es que usas Sql Server) que tratar de meter un componente nuevo, hacer la programacion y todo eso pa que al final es lo que te pide un solo cliente e igual luego te va a decir: Y como lo paso a Excel?

El componente indicado es tan simple de usar como un Dataset. y un dbgrid. Instancias los tfield, creas los campos en el pivot como lo haces en un dbgrid. Indicas a través de las propiedades donde los quieres colocar (filtro, datos y/o columnas).
Activas el dataset en modo diseñó, personalizas la vista del pivot. Ya esta todo.
Puedes guardar/recuperar configuraciones, imprimir, exportar(Excel, HTML, XML, csv) filtrar, buscar, ordenar, clasificar, drown dril, gráficas).
Decenas de informes con un solo pivot. Los usuarios cuando lo conocen ya no quieren informes en papel.:D

mamcx
17-09-2013, 23:22:16
El componente indicado es tan simple de usar como un Dataset.

Tecnicamente, si. Y si los datos están bien estructurados resulta muy facil. El problema es si la BD tiene campos/estructuras dispares o si extraer la información necesaria requiere entendimiento de esas estructuras y como formatear la información.

Y luego esta como presentar esos datos. Hay es donde Excel resulta una opcion mas poderosa.

Pero al final eso no se sabe hasta que no se mira que necesidades hay en concreto...

PepeLolo
18-09-2013, 00:20:02
Tecnicamente, si. Y si los datos están bien estructurados resulta muy facil. El problema es si la BD tiene campos/estructuras dispares o si extraer la información necesaria requiere entendimiento de esas estructuras y como formatear la información.

Y luego esta como presentar esos datos. Hay es donde Excel resulta una opcion mas poderosa.

Pero al final eso no se sabe hasta que no se mira que necesidades hay en concreto...
Pero eso siempre es así. Cuando tratamos con OLAP, BI, ETC, ETC. siempre hay una transformación de datos de cualquier tipo. Uses las BBDD que uses, cuando tratas con el análisis de información, este no tiene nada que ver a como esta estructurada la información. Los requisitos no tienen nada que ver.
Al final como bien sabes, se trata de coger la coctelera añadir los ingredientes, agitar o mezclar y servir.

Excel es la herramienta más denostada por los usuarios sin conocimiento de esta y parte del resto. Para mi es la mejor herramienta financiera del mundo mundial y parte de la galaxia:), pero tiene un problema congénito. Hay muy y poca gente que sepa usarla.
Todos los días me encuentro con usuarios que desconoce como usar una tabla dinámica y más todavía... que es eso...!!!!!

Diseñar un libro en Excel que haga lo mismo que con los pivot de devexpress, lleva mucho más tiempo.... Y tienes que conjugar con el conocimiento Excel del usuario. Ojo que el modelo de uso es el mismo en Excel que los pivot devexpress.

Hasta el momento todo lo que he necesitado lo he resuelto con estos componentes. Claro que cuando hay que realizar transformación de datos, toca trabajar la BBDD (tablas, SP, trigger).

newtron
18-09-2013, 10:16:26
Excel es la herramienta más denostada por los usuarios sin conocimiento de esta y parte del resto.

... en eso estamos de acuerdo

Para mi es la mejor herramienta financiera del mundo mundial y parte de la galaxia:)....

... en esto quizás te pasas un poco :p

Pues igual me resulta más "barato" empaparme las tablas dinámicas de Excel y conectarme a mi base de datos via odbc para importar la información a la hoja y poder trabajar con ella.

PepeLolo
18-09-2013, 10:47:39
... en esto quizás te pasas un poco :p

Si, es lo que tenemos los de Toledo, semos muyyyyy exagerados!!

Pues igual me resulta más "barato" empaparme las tablas dinámicas de Excel y conectarme a mi base de datos via odbc para importar la información a la hoja y poder trabajar con ella.
Yo que tu probaría los dos modelos y así puedes conjugar lo mejor de los dos. Puedes descargar los componentes (probar y comparar).

nlsgarcia
18-09-2013, 18:25:16
newtron,


...me resulta más "barato" empaparme las tablas dinámicas de Excel y conectarme a mi base de datos via odbc...



...Yo que tu probaría los dos modelos y así puedes conjugar lo mejor de los dos...


Revisa estas imágenes del componente ExpressPivotGrid v12 en Delphi 7:

http://img543.imageshack.us/img543/9502/hdkz.jpg

http://img819.imageshack.us/img819/6776/n483.jpg

http://img843.imageshack.us/img843/1362/8ymu.jpg

http://img841.imageshack.us/img841/9185/ydqs.jpg

Quizás quieras considerar el uso de este componente en tu proyecto, es cuestión de acordar costos vs beneficios con tus usuarios y la posibilidad de utilización a futuro en otros proyectos similares.

Espero sea útil :)

Nelson.

newtron
19-09-2013, 10:04:14
Nelson.

Gracias por tus capturas de pantalla, la verdad es que tiene bastante buena pinta, lo que no sé es el tiempo que me supondrá poder implementar esto en mi aplicación. Tendré que echarle un vistazo con detenimiento.

Gracias y un saludo

PepeLolo
19-09-2013, 13:56:10
Nelson.

Gracias por tus capturas de pantalla, la verdad es que tiene bastante buena pinta, lo que no sé es el tiempo que me supondrá poder implementar esto en mi aplicación. Tendré que echarle un vistazo con detenimiento.

Gracias y un saludo

Caso real. La facturación de un periodo (Fecha, Cliente, Agente, Mes, Trimestre, Año, importe, descuentos)

Con el campo "Fecha", Puedes crear columnas en el Pivot para que te muestre (Año, Mes y Trimestre) hay más transformaciones para un campo de tipo Fecha (día de la semana, semana del año, lunes, martes, miércoles...)

Un Pivot desde CERO.
Crear formulario, colocar pivot, TQuery, TDataSource, enlazar, crear objetos "TcxDBPivotGridField" ( 15 minutos ) + el tiempo que lleve construir la SQL.

Todo sin la necesidad de escribir código.

newtron
19-09-2013, 17:04:21
Ummmmmmmmmm.... eso es lo que vale 999.99$ ? si es así se me sale un poco de presupuesto.

nlsgarcia
19-09-2013, 17:46:35
newtron,


...se me sale un poco de presupuesto...


Te comento:

1- Si eliges realizar el análisis de datos con Excel, de seguro obtendrás buenos resultados y sin ningún costo adicional, es una opción muy viable.

2- Si por el contrario eliges usar los componente de Express GridPack, obtendrás una solución mejor integrada a tus programas, más amigable para el usuario, de un nivel más profesional y con la posibilidad de utilización a futuro en otros proyectos similares, es cuestión de evaluar costos vs beneficios.

3- Te sugiero instalar la Suite Express GridPack (http://go.devexpress.com/DevExpressDownload_VCLTrial.aspx), revisar los ejemplos, hacer pruebas y en función de ello y de las variables de tu proyecto tomar una decisión mejor estructurada.

4- Los componentes de DevExpress en general, son excelentes adiciones a Delphi por su estabilidad, facilidad de uso y documentación, realmente son una opción a considerar.

Espero sea útil :)

Nelson.

Casimiro Notevi
19-09-2013, 18:00:27
1- Si eliges realizar el análisis de datos con Excel, de seguro obtendrás buenos resultados y sin ningún costo adicional, es una opción muy viable.

¿Cómo es eso?, ¿Microsoft regala ahora Windows y MS Office? ;)

nlsgarcia
19-09-2013, 18:14:25
Casimiro Notevi,


...¿Microsoft regala ahora Windows y MS Office?... :D

No realmente no, pero según entiendo la empresa ya posee una versión de Excel.

Espero sea útil :)

Nelson.

newtron
19-09-2013, 18:16:04
¿Cómo es eso?, ¿Microsoft regala ahora Windows y MS Office? ;)

Lo que quiere decir es que si ya tiene Excel no tiene que hacer ningún desembolso, no seas malo. :p

Gracias por tu información Nelson.