파워빌더(PowerBuilder) 강의2 - 18.네트워크 장애 dw 프로그래밍
DB를 연동하여 dw(데이터윈도우)를 활용한 프로그래밍에서 DB 연결 후 네트워크 장애 등으로 연결이 끊어진다면 보통의 경우 어플리케이션을 재시작해야 합니다. 만약 dw 컨트롤에 데이터를 입력 중이었다면 그 데이터는 모두 사라집니다. 이럴 경우 네트워크 장애를 고려한 dw 프로그래밍이 필요합니다.
일반적인 dw 프로그래밍
1.DB 연결 -> 2.SetTransObject -> 3.Retrieve -> 4.데이터 변경 -> 5.데이터 저장 -> 6.DB 연결 해제
1.어플리케이션이나 윈도우의 open 이벤트에 다음과 같은 DB 연결 스크립트를 작성합니다.
sqlca.DBMS = ‘’
sqlca.ServerName = ‘’
sqlca.LogId = ‘’
sqlca.LogPass = ‘’
sqlca.AutoCommit = False
connect using sqlca;
if sqlca.sqlcode = -1 then
messagebox(‘알림’, ‘DB 연결 에러’)
end if
2.윈도우의 open 이벤트에 다음 스크립트를 작성합니다.
dw_1.setTransObject(sqlca)
3.윈도우 조회버튼의 clicked 이벤트에 다음 스크립트를 작성합니다.
dw_1.retrieve()
4.dw_1 컨트롤에서 데이터를 변경합니다.
5.윈도우 저장버튼의 clicked 이벤트에 다음 스크립트를 작성합니다.
dw_1.acceptText()
if dw_1.update() = 1 then
commit using sqlca;
else
rollback using sqlca;
end if
6.어플리케이션이나 윈도우의 close 이벤트에 다음 스크립트를 작성합니다.
disconnect using sqlca;
일반적으로 위와 같이 작성합니다. 그러나 일시적인 네트워크 장애가 발생할 경우 어플리케이션을 재시작하거나 윈도우를 다시 열어야 문제가 해결됩니다. 물론 작성 중이던 데이터는 모두 사라집니다.
네트워크 장애 dw 프로그래밍
이 글은 회원 전용입니다.
프리미엄 회원 모집
all4museum.tistory.com