Ahora si me desconcentre un poco de las actividades de programación centrales, porque estube probando unos componentes de menu, ayudandole a Fernando a quemar un CD, revisando algunos errores de otras máquinas, y conecte una máquina para una persona que acaba de llegar.
Una distracción más fue que busque una forma adecuada de que el servidor se mantenga a tiempo, así que lo solución la posteo aquí http://abaqueiro.wordpress.com/2007/05/23/hora-exacta-en-linux/
Después de revisar el código, ya hice un pequeño cambio lo que hace que todos los calculos del modelo se calculen en la etapa de construcción del modelo:
if ( build.symbols[i].description.src=='input' &&
build.symbols[i].description.defval!=undefined
){ // tomar valor por default (no debería formar parte del Model?)
//cl('setting default for ' + build.symbols[i].description.symbol +
// ' to ' + build.symbols[i].description.defval );
build.symbolContext[ build.symbols[i].description.symbol ] =
build.symbols[i].description.defval;
} else if (
build.symbols[i].description.src=='calc' /* &&
build.symbols[i].description.depends==''*/
){ // calcular por unica ves aquellos calcs que no dependen de otro (CONSTANTES)
//cl('calculando por unica vez '+build.symbols[i].description.symbol);
build.symbolContext[ build.symbols[i].description.symbol ] =
eval( build.symbols[i].description.expr, build.symbolContext );
}
Así que ya actuliza, ahora voy a revisar que los cálculos estén correctos, como ya lo están los de la versión de producción. Y luego hacer unas modificaciones y revisarlos, para eso voy a generar 2 corridas en el modelo que ya esta en producción, haciendo algunos cálculos.
Después de estar haciendo algunas revisiones, los calculos parecen ser correctos. Ahora lo siguiente es crear el template, aquí vamos a ver si no hay problema porque haya variables que no vamos a mostrar.
Por hoy no voy a escribir ningun comentario más para aprovechar al máximo el tiempo restante.