Q&A

  • QReport관련 질문..
QRCompositeReport를 이용하는데 겹쳐져서 나오는데.. 각 각 다른 page로 나오는 방법 알려주세요

procedure TSendMailFrm7.SpeedButton1Click(Sender: TObject);
var
    TmpNalJa : string;
begin
    QRepFrm := TQRepFrm.Create(Self);
    try
    with QRepFrm do begin
        QuickRep1.Page.LeftMargin := 10; //단위 : mm
        QuickRep1.Page.RightMargin := 10; //단위 : mm
        QuickRep1.Page.TopMargin := 7; //단위 : mm
        QuickRep1.Page.BottomMargin := 5; //단위 : mm
        QRLabel151.Caption := AdvStringGrid1.Cells[4,XRow];      
        QRLabel152.Caption := AdvStringGrid1.Cells[3,XRow];  
        QRLabel153.Caption := Copy(AdvStringGrid1.Cells[6,XRow],1,3) + '-' + Copy(AdvStringGrid1.Cells[6,XRow],4,2)+ '-' + Copy(AdvStringGrid1.Cells[6,XRow],6,5);  // 사업자등록
        QRLabel154.Caption := Copy(AdvStringGrid1.Cells[5,XRow],1,6) + '-' + Copy(AdvStringGrid1.Cells[5,XRow],7,7);  // 법인등록번호
        QRLabel155.Caption := AdvStringGrid1.Cells[7,XRow];  // 소재지
        QRLabel156.Caption := AdvStringGrid1.Cells[8,XRow];  // 소득자 성명

-------------------  중   략  ----------------------

       QRLabel324.Caption := AdvStringGrid1.Cells[170,XRow];  //
end;
        QrepFrm.QRCompositeReport1.Preview;
finally
    QRepFrm.Free;
end;
end;


위와 같이 사용해서 했지만 1page에 겹쳐서 나옵니다..
3  COMMENTS
  • Profile
    Marek 2006.11.29 19:37
    Marek입니다.

    첨부내용을 보니 알겠습니다.
    QuickReport를 처음 생성시킬때 File - New - Report폼을 생성하셨죠?
    그렇게 하지 마시고 일반 폼을 생성시키십시요.
    그 일반폼에 상단 QReport탭에서 QuickRep1, QuickRep2를 생성됨 폼에
    떨구고서 서식을 그려 넣으십시요.
    다음에 QRCompositeReport 컴포넌트를 떨구고 권오근님께서 하시던 방법중

    SpeedButton1Click 이벤트에서 아래와 같이 바꾸십시요,

    procedure TSendMailFrm7.SpeedButton1Click(Sender: TObject);
    begin
       try
          if frmPrint = Nil then  //QuickRep폼이 아닌 일반 회색폼입니다.
              frmPrint := TfrmPrint.Create(Self);

         ------------- 중략(데이타 코딩하십시요) --------------------
          frmPrint.QRCompositeReport1.Preview;
       finally
          frmPrint := Nil;
          frmPrint.Free;
       end;

    end;


    QrepFrm부분
    procedure TfrmPrint.QRCompositeReport1AddReports(Sender: TObject);
    begin
    with QRCompositeReport1 do
       begin
          Reports.add(QuickRep1);
          Reports.add(QuickRep2);
       end;
    end;

    한번 해보세요
    잘되길 바랍니다.
    동일한 내용을 멜 보내드렸습니다.

    Marek..


  • Profile
    세균맨 2006.11.29 00:52
    QRCompositeReport의 add를 해주세요..

    QRCompositeReport1AddReports  이베트에서

       QRCompositeReport1.Reports.Add(레포트폼명1);
       QRCompositeReport1.Reports.Add(레포트폼명2)
      

    추가할 폼명을 순차적으로 add를 하시면 될 것 같은데


  • Profile
    권오근 2006.11.29 01:53


    님이 말씀하신대로 했는데 안되네요...

    제가 메일 보내드렸는데 시간되시면 확인 부탁드립니다.