Entradas

Mostrando las entradas de agosto, 2010

PIENSO-PIENSO: Como modelar datos acumulados

Imagen
Tengo la tabla con las ventas de mi empresa que tiene la estructura

Ventas * Id Fecha Cliente    (*Producto      ImporteVenta    )
Esta tabla tiene millones de registros y no están uniformemente distribuidos (algunos clientes compran mucho y otros muy poco).
Se necesitan hacer consultas por
Mes Trimestre Año Producto Cliente
y cualquier combinación de ellas. 
Por ejemplo consultas validas son:
Cuales son las ventas del cliente X en el Año Y? Cuales son las ventas del cliente X en el mes D del producto Z? Todas las consultas posibles deben ejecutarse en menos de 1 segundo.
1) Cual seria su modelo de datos para resolver dichas consultas?
2) Si se agrega la dimensión Pais, como se ve afectado el modelo de datos?
El mejor diseño, se gana una tableta de chocolate amargo Lindt de 300gr. Si no le gusta el chocolate amargo, puede ser una de chocolate con leche. 
Si el ganador quiere se lo doy en el Encuentro GeneXus. Sino se lo hago llegar a su casa. Si es en el exterior, vemos como hacemos. 


Aclaracion: Los datos s…

GeneXus: Si hubiera foro de betatesting plantearía estas sugerencias.

Imagen
1) Marca visual en la Navigation View el estado de build de un objeto main.
La ventana de Output no es buena para  ver si algo fallo al compilar, sobre todo si hay muchos objetos involucrados.
2) Full text search Seria bueno incorporar el manejo del indice a los for each
O sea poder hacer algo del estilo 
for each    where atttexto contains &texto       Msg(AttTexto)  endfor
sin tener estructuras adicionales y pudiendo mezclar busquedas en el indice y otras condiciones por filtros de la base de datos.
3) Cut/Paste de objetos  Para mover un objeto de carpeta, seria bueno poder utilizar el mismo paradigma que usa windows.
4) Copy/Paste de Objetos Para SaveAs dentro de la KB
5) Copy/Paste de Objetos entre KB Para exportar de una kb y para importarla en otra. 
6) Drag & Drop de objetos entre versiones. Para mandar de una version a otra. 
7) Al importar falta una opcion para que me preservar todos los objetos de mi KB.  Con las opciones puedo elegir importar todos los objetos, los mas nuevos o los ma…

POST DE VIERNES: Fotos de baño publico.

Imagen

Proyecto TICA ejemplo de gobierno digital en Costa Rica.

Imagen
En la nota editorial de La Nacion (principal diario de Costa Rica) dicen :
La apertura de Mer-link es un importante paso adelante, como en su momento lo fue el TICA (Tecnología de Información para el Control Aduanero), ejecutado con apoyo del Gobierno uruguayo, para agilizar los trámites aduaneros, mejorar el control y por esa vía incrementar la recaudación. El proyecto demostró su utilidad en todos los flancos, pero a costa de abrirse camino entre una maraña de intereses creados.La automatización del proceso aduanero y la eliminación de papeleo debieron contar, desde el inicio, con un apoyo entusiasta, pero la consecuencia última del TICA es el control y la transparencia, conducente al incremento en la recaudación fiscal, buena para el país y no tanto para algunos sectores.El resaltado lo puse yo

Es bueno que reconozcan que el nuestro proyecto ayudó a mejorar el gobierno digital de un país importante como Costa Rica.

Wiki de procedimientos aduaneros.

Imagen
Ésta pretende ser una pequeña contribución a lograr un gobierno mas abierto.

En la Dirección Nacional de Aduanas, desde hace unos tres meses hay un wiki para que los nuevos procedimientos aduaneros se registren en el mismo.

Para muchos dentro de la organización, es todo un cambio de paradigma el tener en forma pública los procedimientos y también que los mismos puedan ser vistos por todos.
La plataforma del wiki da un dinamismo que antes no se tenia para adaptar los procesos y los controles a una realidad que cada día cambia mas rápido.
Tengo fe que puede ayudar para hacer a la aduana un poco mas eficiente.

También se publican ahí las resoluciones de la dirección que llaman Ordenes del Dia.

PD: Pablo Brenner planteó una idea de tener un Wiki para el parlamento, que puede estar buena.

Variables Websession en cluster con balanceo de carga

Imagen
Me tocó instalar una aplicación GeneXus web, que utiliza variables websession en un cluster con NLB (varios servidores con balanceo de carga entre ellos.

La aplicación hacia un Login guardando información de si el usuario estaba conectado o no en una websession.

Cuando la aplicación era instalado en un servidor único, funcionaba correctamente. Cuando la persona se conectaba, podía hacer varias operaciones manteniendo la sesión. Si no tenia actividad por 20 minutos, desconectaba al usuario (el tiempo es configurable).

El problema que se daba cuando funcionaba en el cluster, era que el usuario se conectaba y se desconectaba todo el tiempo, sin un patrón muy claro. Busque en el WEBSAC y no encontré nada.

Como por defecto las aplicaciones ASP.NET guardan las websession en la memoria del working process del IIS. Como en esta aplicación pueden haber mas de un working process, se pierden las sesiones y por lo tanto el usuario ve como se desconecta la aplicación.

La información de la sesión, …

Acelerar la instalación de GeneXus X ev1.

Imagen
Tengo un problema en mi notebook por el cual GeneXus se cae por motivos no demasiado claros. Para ver si lograba solucionarlo con nuevas versiones, hice la instalación de varios preview de GeneXus X Ev1 U3.

Una de las cosas que me molestaba es lo que demora la instalación de GeneXus.

Lo que hacia era:

salvaba el contenido de la instalación anterior.ejecutaba el instalador desinstalaba la versión anteriorinstalaba la nueva versión, que me preguntaba en que directorio lo queria instalar. 
Lo que me parecía un poco absurdo era que me obligara a desinstalar y luego permitiera instalar en cualquier directorio. Lo mas razonable era que permitiera dejar la versión anterior y permita tener 2 versiones diferentes en el PC, siendo que funciona correctamente.

GusCarr me paso un consejo diciendo que alcanza con renombrar el directorio donde esta instalada la version vieja de GeneXus para que todo el proceso sea mucho mas corto, pues la desisntalación es rápida (no tiene nada para desinstalar) y ya q…