SQL 쿼리 테이블
쿼리 테이블은 캔버스에 시스템 혹은 외부 데이터 베이스에 저장된 데이터를 표 형태로 출력 할때 사용하는 그래픽 개체 입니다. 쿼리 테이블에 SQL 연결정보와 쿼리 문을 설정해 데이터 베이스의 쿼리 결과를 표에 표시 합니다.
아래 그림은 쿼리 테이블의 설정화면 예시 입니다. 설정화면에서 데이터 베이스 연결정보와 SQL 쿼리문등 표에 표시할 정보를 설정 합니다.
Method
쿼리 테이블에서 제공하는 기능은 아래 표와 같습니다.
리턴 값 |
함 수 |
설 명 |
표에 선택된 항목 변경시 이벤트를 수신 합니다. |
||
쿼리문 실행후 데이터 로딩이 완료되었을때 완료 이벤트를 수신 합니다. |
||
clear( ) |
표의 데이터를 지우고 초기화합니다 |
|
표에 선택된 항목을 제거 합니다. |
||
int |
count( ) |
표에 출력된 데이터 행 갯수를 반환 합니다. |
int |
현재 선택된 행번호를 반환 합니다. |
|
fitColumn( ) |
표의 컬럼 넓이를 글자 크기에 맞게 맞춥니다. |
|
execute( ) |
쿼리 테이블 설정화면에서 설정한 쿼리문을 실행 합니다. 새로고침과 같은 용도로 사용하실수 있습니다. |
|
|
exportToFile( titleName ) |
표에 표시된 데이터를 파일(엑셀, CSV)로 출력 합니다. |
resetQuery(queryString) |
주어진 퀴리문을 실행 하여, 실행 결과를 표에 출력 합니다. |
|
resizeSection( column, width ) |
쿼리 테이블의 컬럼 너비를 설정합니다. |
|
list[variant] |
rowData( row ) |
쿼리 테이블의 주어진 행의 데이터를 반환 합니다. |
setValueConvertor(functor ) |
쿼리 테이블에 데이터 변환 함수를 등록 합니다. 쿼리 결과값에 연산식을 적용하여 새로운 값을 표시할 수 있습니다. |
|
쿼리 테이블에 주어진 행을 선택 합니다. |
||
주어진 컬럼의 표시이름을 설정 합니다. |
||
쿼리 테이블에 주어진 컬럼 명으로 테이블 헤더를 설정 합니다. |
|
|
쿼리 테이블의 선택된 항목 변경시 이벤트를 수신받을때 사용합니다. 이벤트 발생시 핸들러의 이름은 고정되어 있으며 아래 그림과 같이 추가 할수 있습니다. def onCurrentIndexChanged (obj,index) obj : 이벤트가 발생한 리포트 테이블 개체 입니다. index : 현재 선택된 인덱스 입니다.
|
|
|
쿼리문 실행후 데이터 출력이 완료되었을때 완료 이벤트를 수신 합니다. 데이터 출력 완료후 추가적인 작업을 할때 이벤트 핸들러를 등록해 사용할 수 있습니다. 이벤트 수신 핸들러 함수 이름은 고정되어 있으며 아래 그림과 같이 추가 할수 있습니다. 예)
|
현재 선택된 행 번호를 반환 합니다. 선택된 행이 없는 경우 -1을 반환 합니다. 예)
|
execute() |
|
쿼리 테이블 설정화면에서 설정한 쿼리문을 실행 합니다. 새로고침과 같은 용도로 사용하실수 있습니다. 예)
|
|
|
쿼리 테이블 화면에 표시된 데이터를 파일로 출력 합니다.
예)
결과) 스크립트 실행시 파일 저장 화면이 표시 되며, 저장 버튼 클릭시 파일로 저장 됩니다. |
|
|
주어진 퀴리문을 실행 하여, 실행 결과를 표에 출력 합니다. 일반적으로 화면에 입력한 정보에 따라 쿼리문을 생성후 실행하는 용도로 사용될 수 있습니다. 예를 들어 화면에서 선택한 날짜를 읽어 해당 날짜의 데이터를 불러올수 있습니다. 아래 예제는 화면에서 입력한 정보를 읽어 새 퀴리를 실행 하는 예제 입니다. 예)
결과) |
|
|
지정할 컬럼의 너비를 설정 합니다. 예)
|
|
|
주어진 행의 데이터를 리스트 형식으로 반환 합니다. 반환값은 데이터 베이스에 저장된 데이터 타입 형식에 따릅니다. 예)
결과) >>> (2, u'101', u'101', u'2022-12-20', 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) |
|
|
본 기능은 변환 함수를 등록해 쿼리결과값에 계산식을 적용해 새로운 값을 만들때 사용합니다. 예를들어 데이터 베이스 테이블의 'dong', 'ho' 컬럼을 합쳐 하나의 컬럼으로 표에 표시 하거나 결과값 뒤에 단위를 붙여 테이블에 표시할 수도 있습니다. 변환 함수는 행별로 실행하며 변환 함수의 인자를 통해 쿼리 결과 값이 행별로 함수 인자로 전달되 실행 됩니다. 변환 함수는 다음과 같습니다. def 함수명 (rowNo,value)
tuple 형식은 수정이 불가능 하며 데이터 변경을 위해서는 리스트로 변환하여 사용합니다.
예)
|
|
|
주어진 컬럼의 헤더 이름을 설정 합니다.
예)
결과) |
|
|
쿼리 테이블의 전체 컬럼의 헤더이름을 설정 합니다.
예)
결과) |