Diretrizes do esquema de receita
As receitas oferecem suporte à implementação em destinos estruturados, objetos ExibiçãoEmLista e NetLogic e esquemas personalizáveis com metadados para melhor rastreabilidade.
Implementação e estrutura
- Você pode definir um destino específico onde implementar a receita. A estrutura do destino deve ser a mesma que a estrutura salva no esquema de receita.
- Você pode usar o esquema de receita legado e o novo esquema de receita no mesmo projeto, mas isso pode exigir ajustes manuais.
Uso e parâmetros
- Você pode usar receitas com uma ExibiçãoEmLista ou usando NetLogic.
- Um parâmetro de receita é um Item ou ItemDeDados selecionado no editor EsquemaDeReceita. Os parâmetros de receita representados em uma ExibiçãoEmLista são sempre apresentados como somente leitura.
Gerenciamento de esquema de receita
- Você pode criar, editar e armazenar esquemas de receita com parâmetros e metadados ilimitados.
- Você pode definir e armazenar metadados personalizados, como autor, data de criação ou uma imagem associada, o que melhora a rastreabilidade e a compreensão contextual das receitas.
Gerenciamento de desempenho e transações
As receitas introduzem um número elevado de operações de inserção/atualização/exclusão para determinadas tarefas. Isso pode aumentar o tempo necessário para concluir as operações, especialmente para bancos de dados remotos e alta latência. Para evitar a perda de dados, é oferecido suporte ao gerenciamento mínimo de transações. O gerenciamento de transações não é personalizável.
IMPORTANTE:
Para evitar a perda de dados ao trabalhar com RegistradorDeDados e RegistradorDeEventos, é altamente recomendável não usar o mesmo banco de dados que é usado para receitas.
Exemplo de consulta ao
EmbeddedDatabase
: 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
Exemplos de consultas SQL
Use as seguintes consultas SQL para gerenciar receitas e seus metadados em tempo de execução:
Lista de receitas
SELECT * FROM Recipes WHERE RecipeSchemaName = 'DemoRecipeSchema' ORDER BY Name
Lista de receitas e seus metadados
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
Itens do modelo de edição de uma receita 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
Tabela de armazenamento do EditModel
A tabela de armazenamento do EditModel contém a seguinte estrutura
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 é uma 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" } ]
Dê sua opinião