퀵 리포트를 이용해 단어 카드 출력 프로그램을 만들고 있습니다.
그러니까, A4용지를 2개의 다단을 설정 하고 각 다단을 4 등분으로 나누어, 앞면엔 단어, 뒷면엔 뜻이 출력되도록 해야 하는데..
종이 뒷면에 대한 제어가 어렵네요.. 그림으로 설명 드리자면 다음과 같습니다.
A4용지
LOVE |
HOTEL |
NEXT |
COMPUTER |
HOME |
DOG |
ENGLISH |
CAT |
이렇게 앞면이 출력 되고, 뒷면을 출력시킬 때, 종이를 뒤집는 관계로 다음과 같이 좌우가 바뀌어 출력이 되어야 합니다.
호텔 |
사랑 |
컴퓨터 |
다음 |
개 |
집 |
고양이 |
영어 |
그런데, 퀵리포트의 경우, 무조건 DB에서 정렬해준 순서대로 일괄적으로 출력이 되더군요.
게다가 밴드의 위치가 변동되지 않아서 위의 그림처럼 출력시키지 못하고 있습니다.
이를 해결할만한 알고리즘이라도 있을까요?
이를 어떻게 해결 할수 있는 방법이 없을까요?
퀵리포트를 조작해서 문제를 손보기 어렵다면, 제가 생각 한 방법은 다음과 같습니다.
뒷면을 출력 시킬 때,
table1.next 를 4번 하여.. 오른편 단어들을 먼저 출력시킨다.
카운터가 4번 되면 table1.prior 을 하여 원상태로 복구 시킨
후 왼편의 단어들을 출력시킨다.
와 같은 알고리즘을 생각해 냈는데..
이와 같은 알고리즘을 사용하려면, 어떤 이벤트 메소드에 작성해야 하는지요..
아무튼, 고수님들의 조언을 구합니다.
님께서 구현하고자 하는것이 무었인지 이해갑니다.
기본적으로 QuickRep에서 자동화할수 있는 방법은 없는것 같습니다.
다만 로컬에 가상의 프린팅 테이블을 만들고 첫장의 단어리스트를 인쇄한 후,
뒷장에서는 가상 테이블에 소트 순서를 바꾸어 인쇄할 수 있지 않나요?
앞장 인쇄순서 단어
----------------------------------
1 LOVE
2 NEXT
3 HOME
4 ENGLISH
5 HOTEL
6 COMPUTER
7 DOG
----------------------------------
CAT은 없는것으로 하겠습니다.(단어가 꼭8개가 아니라는 가정하에서...)
그러나 뒷장은 순서가 좀틀리겠습니다. -->가상테이블 이용
뒷장 인쇄순서 단어
----------------------------------
1 호텔
2 컴퓨터
3 개
4 ------------------>가상 테이블에 공백 삽입
5 사랑
6 다음
7 집
8 영어
-----------------------------------
요렇게 인쇄되면 되지요
따라서 가상테이블은 8개의 레코드 단위로 삽입시킨후 뒷장인쇄의 Key순서만
맞추어주면 앞뒷면 인쇄시 열을 맞출수 있습니다.
앞장 인쇄시 (단어수 mod 4)로 계산하여 그 숫자만큼 가상테이블에 빈Data를 넣어주면
되구요 이때 일련번호 Key는 넣어주셔야 되고 인쇄완료후에는 가상테이블을 Clear해주세요.
Marek...