[ 파워빌더.DataWindow - Procedure dw 업데이트 ]
☞ | |
피비에서는 데이터윈도우를 디비에 업데이트(인서트,델리트,업데이트)할떄
프로시저를 데이터윈도우에 붙여서 액세스가 가능 합니다.
장점은 저장시 복잡한 업무 로직을 프러시저에서 해결 할 수 있음으로 클라이언트 로직이
가벼워 질수 있는것과 유지 보수가 용이 하다는 점입니다. 데이터를 저장 하면서 체크하는 로직이 엄청 많다거나
여러 테이블을 핸드링 해야 할때 좋고.. 주요 업무 로직을 서버쪽에 두기 때문에 쓰리티어 효과도 낼 수 있습니다.
각설 하고 다들 아시겠지만 모르시는 분들을 위해 무조건 따라하기 시작...
환경은 오라클 10g 유저명은 스코트 유저로 부서 테이블에 인서트 업데이트 하는 로직을 예로 설명..
일단 부서테이블에 자료를 넣는 프러시저를 컴파일 합니다. 스크립트는 아래꺼 긁어서 컴파일..
CREATE OR REPLACE PROCEDURE prc_dept (A_DEPTNO NUMBER, Begin UPDATE DEPT
부서코드 부서명 위치를 입력 받아 부서 테이블에 넣는 초 간단 프러시저 입니다. (부서코드 낫 파운드 떨어지면 무조건 신규로 입력이 들어 가면 됩니다.)
프러시저 컴파일 하고 나서 데이터 윈도우 그립니다.
프러시저 업데이트 메뉴 선택..
탭이 세개가 나옵니다. 인서트 업데이트 델리트에 대해서 프로시저를 각각 지정 할 수 있습니다
미리 컴파일한 프러시저를 선택 합니다.
dw 상의 컬럼과 프러시저 상의 인풋 아귀먼트를 연결 합니다. (나중에 dw상의 컬럼 값이 프러시저 아규먼트로 넘어 갑니다.) 프러시저가 인서트나 업데이트일떄 같이 사용가능한 프러시저이기에 업데이트, 인서트탭 똑같이 지정 하고 오케 버튼..
로우 업데이트 프로퍼티는 안하셔도 됩니다.
데이터 윈도우 저장시 해당 로우에 대해서 신규 수정 삭제에 대해서 해당 I/O에 대해서 정의된 프러시저를 태웁니다.
-----------------------
1분만에 만든 초간단 클라이언트 화면..예제..
오픈 // Profile SCOTT
조회 dw_1.Retrieve()
입력 dw_1.InsertRow(0)
저장 if dw_1.Update() = 1 Then |
'파워빌더 > DataWindow' 카테고리의 다른 글
파워빌더.DataWindow - 동적 버튼 생성 (0) | 2017.01.26 |
---|---|
파워빌더.DataWindow - 그리드에서 컬럼 위치 정하기 (0) | 2017.01.26 |
파워빌더.DataWindow - function (0) | 2017.01.26 |
파워빌더.DataWindow - Print 응용 (0) | 2017.01.26 |
파워빌더.DataWindow - Type 알아내기 (0) | 2017.01.26 |