퀵리포트에서 Datasource를 이용해 출력을 하는 경우 질문하신 내용대
로 중간에 짤리죠.. 더이상 찍을 데이터가 없으면 퀵리포트가 알아서
출력을 종료시키니까요..
이런 경우 퀵리포트의 OnNeedData 이벤트 핸들러를 작성하셔서 직접 제
어하셔야 합니다..
procedure TForm1.QuickRep1NeedData(Sender: TObject; var MoreData:
Boolean);
전체 찍을 데이터가 몇개이고 한장에 찍을 수 있는 데이터가 몇개인지
를 미리 계산한후 마지막장에서 한장에 찍을 수 있는 데이터로 딱 맞아
떨어지지 않으면 빈 양식을 계속 찍도록 해줘야죠..
위의 이벤트 핸들러 프로토타입을 보면 MoreData란 파라미터에 var 지
시자가 붙어 있으므로 이벤트 핸들러에서 계속 찍을지 말지를 결정할
수 있습니다.. MoreData := False ;를 해주시면 더 찍을 데이터가 있는
데도 그만 찍히게 되죠..
저같은 경우는 DB그리드는 사용을 안하고 스트링 그리드를 사용하기 때
문에 모든 퀵리포트의 출력은 OnNeedData 핸들러에서 직접 처리해주고
있는데 산수계산만 좀 잘하시면 아무 문제 없을 거여요..
퀵리포트의 BeforePrint 이벤트에서 제어에 필요한 값들을 계산하시면
될 것이고요..
기람..
미친병아리 서비였네용.. 삐약~ !!
[번 호] 1353 / 1362 [등록일] 98년 02월 13일 18:12
[등록자] KCMSYS
[제 목] [질문] Qreport 에서 출력 형태지정에 관해서..
─────────────────────────────────
안녕하세요..
Qreport 를 사용해서 리스트를 출력 하는데..
박스를 그리고 리스트 출력을 하거든요..
그런데 리스트가 문서 중간에서 끝날경우 문서의 일부분까지만
출력 하고 프린트가 종료 되는데.
데이타는 없더라도 출력 하던 그 페이지 끝까지 계속 박스를
그리면서 출력 하게끔 안됩니까??
중간에 박스양식이 끊기니까 무척 보기가 싫어서요..
한페이지가 가득 차도록 하는 방법을 좀 가르쳐 주세요..
고수분들의 한수를 기다립니다.. ^^;;
|