Directrices del esquema de receta
Las recetas admiten la implementación en destinos estructurados, objetos de VistaDeLista y NetLogic, y esquemas personalizables con metadatos para mejorar la trazabilidad.
Despliegue y estructura
- Puede establecer un destino específico donde implementar la receta. La estructura del destino debe ser la misma que la estructura guardada en el esquema de la receta.
- Puede utilizar el esquema de recetas heredado y el nuevo esquema de recetas en el mismo proyecto, pero es posible que requiera ajustes manuales.
Uso y parámetros
- Puede usar recetas con una VistaDeLista o mediante NetLogic.
- Un parámetro de receta es un Elemento o ElementoDeDatos seleccionado en el editor RecipeSchema. Los parámetros de receta representados en una VistaDeLista siempre se presentan como solo lectura.
Gestión del esquema de receta
- Puede crear, editar y almacenar esquemas de recetas con parámetros y metadatos ilimitados.
- Puede definir y almacenar metadatos personalizados, como el autor o la fecha de creación o una imagen asociada, lo que mejora la trazabilidad y la comprensión contextual de las recetas.
Gestión del rendimiento y de las transacciones
Las recetas introducen un número elevado de operaciones de inserción/actualización/eliminación para determinadas tareas. Esto puede aumentar el tiempo necesario para completar las operaciones, especialmente para bases de datos remotas y alta latencia. Para evitar la pérdida de datos, se admite una gestión mínima de transacciones. La gestión de transacciones no es personalizable.
IMPORTANTE:
Para evitar la pérdida de datos al trabajar con RegistradorDeDatos y RegistradorDeEventos, se recomienda encarecidamente no utilizar la misma base de datos que se utiliza para las recetas.
Consulta a
EmbeddedDatabase
, ejemplo: SELECT R.*, M.* FROM Recipes AS R LEFT JOIN "RecipeMetadata_RecipeSchema1" AS M ON R.Id = M.RecipeId WHERE R.RecipeSchemaName = 'RecipeSchema1' ORDER BY R.Name
Ejemplos de consulta SQL
Utilice las siguientes consultas SQL para administrar las recetas y sus metadatos en tiempo de ejecución:
Lista de recetas
SELECT * FROM Recipes WHERE RecipeSchemaName = 'DemoRecipeSchema' ORDER BY Name
Lista de recetas y sus metadatos
SELECT R.*, M.* FROM Recipes AS R LEFT JOIN RecipeMetadata_DemoRecipeSchema AS M ON R.Id = M.RecipeId WHERE R.RecipeSchemaName = 'DemoRecipeSchema' ORDER BY R.Name
Elementos del modelo de edición de una receta específica
SELECT * FROM EditModel WHERE RecipeName = {#name:sql_literal} AND RecipeVersion = {#version:sql_literal} ORDER BY DisplayName SELECT * FROM EditModel WHERE RecipeName = {#name:sql_literal} AND RecipeVersion = {#version:sql_literal} AND TypeDisplayName = {#type_name:sql_literal} ORDER BY DisplayName
Tabla de almacenamiento de EditModel
La tabla de almacenamiento de EditModel contiene la siguiente estructura
ItemId | ItemRelativeBrowsePath | TypeId | DisplayName | TypeDisplayName | DataItems |
|---|---|---|---|---|---|
Motor1_id | ["Machine", "Motors", "Motor1"] | MotorType_id | Motor1 | Motor | data_items_array |
Motor2_id | ["Machine", "Motors", "Motor2"] | MotorType_id | Motor2 | Motor | data_items_array |
Tank1_id | ["Machine", "Tanks", "Tank1"] | TankType_id | Tank1 | Tank | data_items_array |
DataItems es una Matriz de objetos JSON:
[ { "RelativeBrowsePath": ["TargetSpeed"], "ElementAccess": null, "Value": 1500.0, "DataTypeId": "Float", "ActualDataTypeID": "Float" }, { "RelativeBrowsePath": ["TorqueLimit"], "ElementAccess": null, "Value": 15.5, "DataTypeId": "Float", "ActualDataTypeID": "Float" } ]
Entregue su opinión