Q&A

  • [Q] Qreport에서 Total Page Number


델파이 4.0 사용자입니다.



퀵레포트에서 페이지 넘버를 (현재 페이지 수) / (총 페이지 수) 로 출력하고



싶은데, 총 페이지 수를 지원하는 컴퍼넌트를 못찾겠네요.



QRsysdata 는 현재 페이지 수만을 지원하고,



QRExpr 에서 MAX(PAGENUMBER) 를 Expression으로 줘 봤으나, 0 으로만



나오더군요.



지원해줄 듯한데, 못찾으니 답답하네요.



결국 제가 생각해 낸 방법은, 출력하려는 모든 라인을 세본 다음,



총 페이지 수를 계산하는 것입니다. (무식 -_-;; 정확도도 떨어지구요.)



혹시 다른 방법이 있는지 알고 싶어 글 올립니다.



그럼, 빠른 답변 부탁드립니다.





2  COMMENTS
  • Profile
    박흥태 1999.08.05 01:16
    유니 께서 말씀하시기를...

    >

    > 델파이 4.0 사용자입니다.

    >

    > 퀵레포트에서 페이지 넘버를 (현재 페이지 수) / (총 페이지 수) 로 출력하고

    >

    > 싶은데, 총 페이지 수를 지원하는 컴퍼넌트를 못찾겠네요.

    >

    > QRsysdata 는 현재 페이지 수만을 지원하고,

    >

    > QRExpr 에서 MAX(PAGENUMBER) 를 Expression으로 줘 봤으나, 0 으로만

    >

    > 나오더군요.

    >

    > 지원해줄 듯한데, 못찾으니 답답하네요.

    >

    > 결국 제가 생각해 낸 방법은, 출력하려는 모든 라인을 세본 다음,

    >

    > 총 페이지 수를 계산하는 것입니다. (무식 -_-;; 정확도도 떨어지구요.)

    >

    > 혹시 다른 방법이 있는지 알고 싶어 글 올립니다.

    >

    > 그럼, 빠른 답변 부탁드립니다.

    >

    >



    이건 간단한 문제네요 ^^



    예를 들어

    작업하는 QuickReport의 TQuickRep Component의 이름이 QRep1이라면,

    총 페이지스는 QRep1.QRPrinter.PageCount를 가져오면 됩니다.



    단, 이는 QRep1이 먼저 Create된 다음에 계산해야합니다.

    그러므로 Preview나 Print에서 그냥 사용하는 것은 문제가 없지만,

    그 이전에 알고자하면 먼저 Prepare를 해줘야 알수있습니다.



    즐거운 하루되시기를 ^^





  • Profile
    유니 1999.08.07 05:23
    박흥태 께서 말씀하시기를...

    > 유니 께서 말씀하시기를...

    > >

    > > 델파이 4.0 사용자입니다.

    > >

    > > 퀵레포트에서 페이지 넘버를 (현재 페이지 수) / (총 페이지 수) 로 출력하고

    > >

    > > 싶은데, 총 페이지 수를 지원하는 컴퍼넌트를 못찾겠네요.

    >

    > 예를 들어

    > 작업하는 QuickReport의 TQuickRep Component의 이름이 QRep1이라면,

    > 총 페이지스는 QRep1.QRPrinter.PageCount를 가져오면 됩니다.

    >

    > 단, 이는 QRep1이 먼저 Create된 다음에 계산해야합니다.

    > 그러므로 Preview나 Print에서 그냥 사용하는 것은 문제가 없지만,

    > 그 이전에 알고자하면 먼저 Prepare를 해줘야 알수있습니다.





    답변 감사합니다.



    님의 말씀을 듣고 제가 해결한 방법입니다.



    QReport1.Prepare;

    QRLabelxTotalPage.Caption := '/' + IntToStr(QReport1.QRPrinter.PageCount);

    QReport1.Preview