Opened 14 years ago
Last modified 14 years ago
#430 closed enhancement
Actualizar (o añadir) un DataSet de un modelo — at Version 4
Reported by: | atorre | Owned by: | |
---|---|---|---|
Priority: | critical | Milestone: | Release 0.6 |
Component: | Edition | Keywords: | Model, DataSet, actualizar |
Cc: |
Description (last modified by )
Hola MMS,
debería existir una opción de actualizar/sincronizar un DataSet de un modelo a partir de una actualización del DataSet o de una nueva versión.
Actualmente, si ya se se ha hecho un proceso de construcción del DataSet y, a partir de éste, se ha creado el modelo, cuando se quiere añadir una nueva variable, hay que generar el DataSet de nuevo con la nueva variable (obvio) y crear de nuevo el modelo a partir de éste.
Change History (4)
comment:1 Changed 14 years ago by
comment:2 Changed 14 years ago by
(In [2097]) Como una alternativa a la resolución del tique #430 se introduce un método ::SetData
para las @Variable
que permite fijar la caché de los datos de manera alternativa, en lugar de reevaluar la expresión.
El método puede facilitar cierta actualización del dataset, actualizando cada variable con llamadas del tipo:
// Se localiza la variable relativa a 'nuevaVariable' y se le cambian los datos por la de ésta Real dataSet::GetVariable(nuevaVariable::GetIdentifier(?))::SetData(nuevaVariable::GetData(?));
Refs #430
comment:3 Changed 14 years ago by
No sé cuántos métodos saldrán exactamente de este ticket pero uno podría ser el de actualizar los datos de las variables a partir de un nuevo DataSet. Sigue una función de usuario que hace eso:
NameBlock MMS_Est_ReplaceDataSet_VxV(NameBlock est, NameBlock dsNew) { NameBlock model = est::GetModel(1); NameBlock ds = model::GetDataSet(1); Set ds_Stat = DataSet_VarStat(ds); Set EvalSet(dsNew::GetVariables(0), Real(NameBlock var) { Real ds::GetVariable(var::GetIdentifier(?))::SetData(var::GetData(?)); Real 0 }); Set ds_Stat_Rep = DataSet_VarStat(ds); Set ds_Stats = [[ ds_Stat, ds_Stat_Rep ]]; est };
comment:4 Changed 14 years ago by
Description: | modified (diff) |
---|
Se han revisado los mecanismos de enlaces entre los objetos de MMS (#556) de modo que ahora es posible sustituir las variables del dataset y comprometer la estabilidad de un modelo.
Para otros mecanismos de edición, como sustituir un objeto por otro, fusionar dos objetos, etc. Véanse los tiques: #556 y #323
Por si no está contemplado en lo anterior: estaría bien poder eliminar un DataSet o directamente poder Reemplazar.