Service 개발

  • 테이블 유형 CIM 테이블 : MES Core 기능으로 MES 개발 시 기본적으로 필요한 테이블 MES 테이블 : 설계 및 개발 단계에서 필요 시 추가하는 테이블 HIST 테이블 : 각 테이블 별로 이력관리를 하기위한 테이블 CIM 테이블 컬럼 추가 시 Columns 파일에 컬럼명을 string 으로추가 MES 테이블 컬럼 추가 시 모델에 컬럼 추가 HIST 테이블은 PK = LASTEVENTSEQ

// 테이블 변경 시 프로시저 실행 필요
EXEC SP_GEN_TABLECOLUMN_INT

EXEC SP_GEN_TABLECOLUMN_EXT

EXEC SP_GEN_TABLECOLUMN_CUS :P_TABLENAME

  • 모델

 public class Cell : EntityTemplate
    {
        public override string TableName => "MES_CELL";
        public override string GroupName => "MES_CELL";
        public override string TableType => "MAIN";

        public string Cellid { get; set; }
        public string Cellname { get; set; }
        public string Siteid { get; set; } //SITEID 까찌가 테이블의 PK 
        public string Rackid { get; set; }
        public int Floor { get; set; }
        public int Section { get; set; }
        public int Capacity { get; set; }
    }

Service 호출 순서

  1. 표준화패키지 > Business > GP_ (서비스 최초 호출)

  2. WEBDATE vaildation ( 받아온 파라메터 검증)

  3. Service 로직

  4. dbContext 를 통해 ManagerExtensions 호출

  5. 호출 - 프레임워크 호출 : 내부 로직 은닉 , 상세 구현은 프레임워크에서 관리 - 직접개발한 API 호출

ErrorCode 와 다국어관리

/// <summary>
/// 치공구 세척장 기준정보가 존재하지 않습니다.
/// </summary>
E_GP_DURABLE_DURABLE_WASH_005,

이러한 ErrorCode 가 있을 때

// 치공구 세척장
System.Collections.Generic.List<CIM.MES.Entity.Facility> facilities = dbContext.SelectFacilityList("WAREHOUSE", "CLEAN", dbContext.Siteid).ToList();
if (facilities.Count == 0)
{
// 치공구 세척장 기준정보가 존재하지 않습니다.
throw new MesMultiLanguageException(GP_DurableErrorCode.E_GP_DURABLE_DURABLE_WASH_005);
}

다국어 등록을 해주어야 정상적으로 표시 됨.

Last updated