Nexacro

넥사크로17.1 - 바인딩 invalid value

초코파이쩡 2023. 2. 3. 14:40
반응형
★ 교육자료 다운로드 17.1버전 기준 
http://support.tobesoft.co.kr/Support/?menu=Education_material_View&postid=25 
★ 넥사크로 유튜브 참조 링크https://youtu.be/c11KeuVzGhg 

넥사크로17.1 이후 버전 에만 있는 invalid value 기능

invalid value란? 정삭적으로 값을 표현할 수 없어 invalid valu를 표현해 줍니다.

바인딩 하는 방법은 2가지가 있는데 1번째 방법은  https://develop-pie.tistory.com/23 해당 링크에 표현이 되어 있다

 

1. 2번째 방법을 이용하여 바인딩 해보기  화면에서 보고 있는 Form소스가 Form Service Group > form_Emp_Exe 인데 그 옆에 보면 오른쪽 화살표가 보인다 그걸 클릭하면 펼쳐진다 여기에 Objects에도 화살표가 있는게 그걸 누르면 펼쳐지는데 거기에 ds_emp Dataset이 보일것이다. 거기에서 다시한번 오른쪽 클릭하면 전체 컴포넌트 Dataset의 전체 컬럼 리스트가 다 나오게 된다. 순서 => Form Service Group > form_Emp_Exe > Objects > ds_emp Dataset > EMPL_ID

2. EMP_ID를 Mouse로 Drag해서 EMP_ID 영역에 놓으면 Bind Item 창이 Open 된다. 

3. 이번에는 Dataset의 최종 Column ID를 연결했기 때문에 Colubm ID(EMPL_ID)까지 자동으로 세팅이 되는걸 볼 수있다

OK Button 클릭

4. 그러고 실행(Reload) 하게 되면 이전 바인딩 때 https://develop-pie.tistory.com/22 FULL_NAME의 경우 바로 데이터가 표현이 되었지만, EMP_ID는  invalid value라고 나타난다 이부분은 17.1에 추가된 내용이며 17.0에는 없는 기능이다.

EMP_ID에 정상적인 값이 표현되지 않는다 이유는? invalid value는 컴포넌트 입장(MaskEdit)에서 컴포넌트가 원하는 데이터 형태로 값이 안들어오면 정상적으로 값을 표현할 수 없어 invalid value를 표현해 줍니다.

5. invalid value로 잡히며 왜 데이터가 잘못 됐는지 집어보자면 해당 컴포넌트를 확인 해보면 MaskEdit인걸 볼수가 있다

6-1.   MaskEdit 컴포넌트는 두 개의 속성을 체크해야 한다. 첫 번째 속성 탭을 선택하고  type 속성을 확인해야 한다 type를 설정해야 하는데 해당 type는 Dataset의 EMPL_ID를 가지고 판단을 한다 그런데 EMPL_ID는 AA001, AA002로 되어 있기 때문에 데이터 타입이 string type 이다. 그렇기 때문에 Type 설정값을 string로 설정한다 

6-2. 두번째로는 데이터에 맞는 format을 지정해 줘야 한다(예 : ### 을 넣던지 다른값을 넣던지 값을 지정해 줘야 한다) 그런데 어떤 값을 설정해야 할 지 알 수가 없는경우에 format속성에서 도움말(F1)을 눌러보세요

6-3 누르게 되면 MaskEdit 컴포넌트가 나오게 되는데  MaskEdit 를 Double Click하면 중간 부분에 type속성이 "String"일 때 적용되는 마스크 설정합니다 라는 도움말을 볼 수 있다. 여기서 문자열 마스크 문자를 확인한다.

6-4. EMPL_ID의 데이터를 하나 하나씩 따져보자, AA001 총 5개의 컬럼(문자)를 따져보자 

6-5 도움말 살펴보기 AA001을 표현하기 위해서 대문자를 표현하는 A와 숫자를 표현하는 #을 이용하여 format에 

AA-### 을 설정한다. AA-### 에서 -를 굳이 넣지 않아도 되지만 문자와 숫자를 분리해 주기 위해서 -을 넣었을 뿐이다 

1. 문자열 마스크 문자
"@" : 모든 Ascii 문자 (한글과 같은 다국어 문자는 입력 불가)
"#" : "0~9" 의 10진수 숫자
"*" : "a~z" 의 소문자와 "A~Z" 의 대문자
"9" : "a~z" 의 소문자, "A~Z" 의 대문자,"0~9" 의 10진수 숫자
"A" : "A~Z" 의 대문자
"a" : "a~z" 의 소문자
"Z" : "A~Z" 의 대문자와 "0~9" 의 10진수 숫자
"z" : "a~z" 의 소문자와 "0~9" 의 10진수 숫자

6-6 여기까지 하고 설정하고 저장 후 Reload하게 되면 데이터가 보인다( 반영후 반드시 저장하고 리로드 할것!!) 

이제 컬럼 을 클릭하면 데이터가 AA-001, AA-002가 보이게 된다

 

반응형