[ 파워빌더.DDDW - 태그(tag) 활용해서 dddw 자동으로 조회 ]
☞ | |
참고 글)tag 활용하기 http://cafe.naver.com/pentaeduclub/2523
----------------------------------------------------------- dw의 각 컬럼마다 보시면, property에 tag가 있다. 이를 이용해서 dddw에 아규먼트가 있어서 조회를 시켜줘야 하는 컬럼에 대한 자동 조회로직을 만들어 보자. 물론 아규먼트가 없는 dddw는 auto retrieve 속성만 체크해주면 되기 때문에 별 상관없다.(하위 버전은 안될 수도 있음)
방식은 간단하다. dddw 가 있는 컬럼의 태그에 아규먼트 값을 적어주는 것이다. 단, 전제조건은 공통코드 값처럼 고정이여야 한다는 것이다.
변수를 셋팅하는 방법은 아직 고민을 안해봤다..(머..규칙을 만들면..가능할지도...ㅎㅎ)
자, 본격적으로 설명을 해 보겠다. 예를 들어, dept_cd 라는 부서코드가 공통코드 테이블에 01 이라는 대표번호로 정의가 되어 있고, kind 라는 종류(어느 종률까? ㅋ) 를 나타내는 코드 내용이 공통코드 테이블에 02라는 대표번호로 정의가 되어 있다고 보자.
이럴 경우, 우린 두 가지 방법으로 dddw를 정의한다. 먼저, dept_cd, kind 컬럼용 dddw를 아규먼트 없이 각자 생성한다. 자동으로 조회시킨다. 두번째는 대표번호를 아규먼트로 하는 dddw를 하나 생성 해놓고, 스크립트에서 getchild() 해서 직접 조회해준다.
전자의 경우에는 편하지만, 그 코드수만큼 dddw를 만들어야 한다. 형식이 똑같다면, 자원의 낭비가 될 수도 있다. 이점에 기인해서 후자의 경우를 좀 편하는 하는 방법을 적용한 것이다.
dept_cd, kind 컬럼의 태그에 각 각 01, 02만 셋팅해놓는다.
이제 공통 조상 윈도우에서는 다음과 같은 함수를 하나 만들어서 open 시에 실행만 시켜주면 된다. 그전에 함수 하나 더 추가 함수명 : stringtokenize 아규먼트 : ref string as_source string as_separator 리턴값 string integer li_pos if isnull( as_source ) or IsNull( as_separator ) THEN SetNull( ls_Null ) li_pos = Pos( as_source, as_separator ) Return ls_retValue
함수명 : wf_set_comdddw 아규먼트 : datawindow adw 리턴값 없음
DatawindowChild ldwc_child |
'파워빌더 > dddw (DropDownDatawindow)' 카테고리의 다른 글
파워빌더.DDDW - filter.방향키 제어 (0) | 2017.01.26 |
---|---|
파워빌더.DDDW - filter.sort (0) | 2017.01.26 |
파워빌더.DDDW - 디스플레이 된값을 가져오는 함수 (0) | 2017.01.26 |
파워빌더.DDDW - 에 존재하는 컬럼값 얻기 (0) | 2017.01.26 |
파워빌더.DDDW - 처리 방법 (0) | 2017.01.26 |