MmsDatabase
Módulos
Los repositorios en base de datos de MMS están constituidos por módulos (algunos de ellos opcionales) que permiten la creación de bases de datos adecuadas a las diferentes características de la modelación.
Los módulos disponen de un número de versión, de modo que puedan incorporarse modificaciones y mejoras sin romper la compatibilidad con repositorios de base de datos anteriores.
A continuación se enumeran los diferentes módulos disponibles:
- Master: Estrictamente no es un módulo, sino un catálogo de módulos, que nos permite reconocer
si la base de datos contiene un repositorio de objetos de MMS y de qué modulos consta.
- Script: master.sql.
- Base: Módulo base en el que se definen las caracteristicas del objeto guardado. Es imprecindible para los demás módulos.
- Script de la versión 1: base.1.sql.
- Summary: Módulo de guardado del resumen del objeto MMS objeto.sne.
- Script de la versión 1: summary.1.sql.
- OZA: Módulo de guardado del objeto MMS objeto.oza.
- Script de la versión 1: oza.1.sql.
- Parameters (opcional): Módulo de guardado para las estimaciones y previsiones que almacena información de los parámetros estimados.
- Script de la versión 1: parameters.1.sql.
- Results (opcional): Módulo de guardado para las estimaciones y previsiones que almacena los principales resultados.
- Script de la versión 1: results.1.sql.
- Script de la versión 2: results.2.sql.
Métodos
Para extraer el script de la ultima versión (Text script = MmsDatabase::GetScriptPGSQL_LastVersion(?)
).
Todos los métodos habituales de los repositorios en carpeta (@RepositoryFolder
) son aplicables a los repositorios en base de datos (@RepositoryDatabase
).
Los argumentos de los métodos listados a continuación son:
- Tipo de objeto MMS (
Text subclass
): puede ser:"DataSet"
,"Model"
,"Estimation"
,"Forecast"
, etc.
- Información del objeto MMS (
Anything info
): admite las siguientes opciones:- El identificador del objeto (
Text info
):"<ObjectName>__<ObjectVersion>"
. - El par nombre-versión del objeto (
Set info
):[[ "<ObjectName>", "<ObjectVersion>" ]]
. - Su índice en la tabla de objetos del repositorio (
Real info
).
- El identificador del objeto (
Lista de métodos disponibles:
Set GetSummary (Text subclass, Anything info)
Obtiene el resumen (SNE) de un objeto Real SaveObject (NameBlock object, Text mode)
Guarda en el repositorio un objeto Real RemoveObject (Text subclass, Anything info)
Borra del el repositorio un objeto Real RemoveDataSet (Anything info)
Borra del el repositorio un DataSet Real RemoveModel (Anything info)
Borra del el repositorio un modelo Real RemoveEstimation (Anything info)
Borra del el repositorio una estimación Real RemoveForecast (Anything info)
Borra del el repositorio una previsión NameBlock LoadObject (Text subclass, Anything info)
Carga en el contenedor un objeto Real LoadDataSet (Anything info)
Carga en el contenedor de datasets un dataset Real LoadModel (Anything info)
Carga en el contenedor de modelos un modelo Real LoadEstimation (Anything info)
Carga en el contenedor de estimaciones una estimación Real LoadForecast (Anything info)
Carga en el contenedor de previsiones una previsión Real FindObject (Text subclass, Anything info)
Busca en el repositorio un objeto Real FindDataSet (Anything info)
Busca en el repositorio un dataset Real FindModel (Anything info)
Busca en el repositorio un modelo Real FindEstimation (Anything info)
Busca en el repositorio una estimación Real FindForecast (Anything info)
Busca en el repositorio una previsión Set GetObjectsCatalog (Text subclass)
Genera el catalogo de la class subclass que estan en el repositorio Set GetDataSetsCatalog (Real void)
Genera el catalogo de Datasets que estan en el repositorio Set GetModelsCatalog (Real void)
Genera el catalogo de Modelos que estan en el repositorio Set GetEstimationsCatalog (Real void)
Genera el catalogo de estimaciones que estan en el repositorio Set GetForecastsCatalog (Real void)
Genera el catalogo de previsiones que estan en el repositorio Set GetObjectsList (Text subclass)
Genera la lista de subclass que estan el repositorio Set GetDataSetsList (Real void)
Genera la lista de datasets que estan el repositorio Set GetModelsList (Real void)
Genera la lista de modelos que estan el repositorio Set GetEstimationsList (Real void)
Genera la lista de estimaciones que estan el repositorio Set GetForecastsList (Real void)
Genera la lista de forecasts que estan el repositorio
Uso del repositorio en base de datos
Para hacer uso de los repositorios en base de datos, debemos disponer de una base de datos con los distintos módulos instalados.
Una vez que disponemos de la base de datos adecuadamente creada debemos seguir los siguientes pasos:
- Crear de una conexión con
DBConnect
y almacenarla. Para más detalles véase DBConnect.
NameBlock dbConnection = DBConnect::Create(<alias>, <user>, <password>, ...); Real dbConnection ::Store(?);
- Crear una conexión de MMS. Para ello debemos indicar:
- El nombre del repositorio (name). Para ello podemos el mismo nombre (alias) de la conexión con DBConnect.
- El tipo de repositorio (type). Usaremos el tipo de gestor de base de datos: "pgsql", "oracle", etc.
- El origen de la información (source). En el caso de los repositorios en base de datos el nombre de una conexión con DBConnect previamente creada y almacenada.
- Una descripción del repositorio (description).
Real MMS::Network::ReplaceConnection(<name>, <type>, <source>, <description>);
- Abrir la conexión (crear el objeto
@Repository
) utilizando su nombre (name) y utilizarla como de costumbre.
NameBlock repository = MMS::Network::OpenConnection(<name>);