레시피 스키마 지침

레시피는 구조화된 대상, 목록보기 및 NetLogic 개체에 대한 배포와 향상된 추적성을 위한 메타데이터가 포함된 사용자 지정 가능한 스키마를 지원합니다.

배포 및 구조

  • 레시피를 배포할 특정 대상을 설정할 수 있습니다. 대상의 구조는 레시피 스키마에 저장된 구조와 동일해야 합니다.
  • 레거시 레시피 스키마와 새로운 레시피 스키마를 동일한 프로젝트에서 사용할 수 있지만 수동으로 조정해야 할 수도 있습니다.

사용법 및 매개변수

  • 목록 보기 또는 NetLogic을 사용하여 레시피를 사용할 수 있습니다.
  • 레시피 매개 변수는 레시피스키마 편집기에서 선택한 항목 또는 데이터 항목입니다. 목록 보기에 표시된 레시피 매개 변수는 항상 읽기 전용으로 표시됩니다.

레시피 스키마 관리

  • 무제한 매개변수와 메타데이터로 레시피 스키마를 생성, 편집 및 저장할 수 있습니다.
  • 작성자, 생성 날짜 또는 관련 이미지와 같은 사용자 지정 메타데이터를 정의하고 저장할 수 있으며, 이를 통해 레시피의 추적성과 맥락 이해가 향상됩니다.

성능 및 트랜잭션 관리

레시피는 특정 작업에 대해 삽입/업데이트/삭제 작업 수를 증가시킵니다. 이로 인해 작업 완료 시간이 증가할 수 있으며, 특히 원격 데이터베이스 및 지연 시간이 긴 경우에 영향을 받을 수 있습니다. 데이터 손실을 방지하기 위해 최소한의 트랜잭션 관리가 지원됩니다. 트랜잭션 관리는 사용자 지정할 수 없습니다.
중요: 데이터로거 및 이벤트로거로 작업할 때 데이터 손실을 방지하려면 레시피에 사용하는 데이터베이스와 동일한 데이터베이스를 사용하지 않는 것이 좋습니다.
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

SQL 쿼리 예제

다음 SQL 쿼리를 사용하여 런타임에 레시피와 해당 메타데이터를 관리합니다.
레시피 목록
SELECT * FROM Recipes WHERE RecipeSchemaName = 'DemoRecipeSchema' ORDER BY Name
레시피 및 해당 메타데이터 목록
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
특정 레시피의 편집 모델 항목
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
EditModel 저장소 테이블
EditModel 저장소 테이블에는 다음 구조가 포함되어 있습니다
EditModel 저장소 테이블
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는 JSON 개체의 배열입니다.
[ { "RelativeBrowsePath": ["TargetSpeed"], "ElementAccess": null, "Value": 1500.0, "DataTypeId": "Float", "ActualDataTypeID": "Float" }, { "RelativeBrowsePath": ["TorqueLimit"], "ElementAccess": null, "Value": 15.5, "DataTypeId": "Float", "ActualDataTypeID": "Float" } ]
의견을 작성 부탁드립니다.
이 자료에 대한 문의사항이나 요청사항이 있습니까? 여기에 요청사항을 작성 부탁드립니다.
Normal