Q&A

  • 퀵리포트 여러장의 명세서 한번에 출력하기
제가 지금 하려고 하는 상황이...
한번의 버튼 클릭으로, 명세서 네 페이지를 출력하도록 하는 프로그램을 완성해야 합니다.
참고로, 명세서는 제목부분만 틀리고 다른 결과는 모두 같게 찍혀야 하구요.
[QuickRep를 여러개 올려놓고 작업한다.... ] 이 방법 말고 다른 방법이 있었으면 좋겠습니다.


4  COMMENTS
  • Profile
    romantic 2003.11.27 20:39
    버튼누를때 for 문 돌리면 되잖아요. ㅡ
    /*
    query1.first;

    for i := 1 to 4 do begin
      qq.label1 := query1a.value; // 이부분은 원하는 라벨을 넣으세요
      qq.print;

      query1.next;

    end;
    */

    이렇게 하면. 4장이 출력될텐데.ㅡㅡ

  • Profile
    초보 2003.11.27 22:56
    정확히 어떻게 하라는 건지 모르겠네요.
    다시 말씀드리지만 저는  초보거든요. ^^
    query1 ->query[i]같은 의미로 배열을 만들어서 for루프를 돌리면서 title만 바꿔가며 찍으라는 말씀이신거 같은데.....
    중요한건 어느 부분쯤에서 어떻게 코딩해야  할지를 모르는 거거덩여.


    procedure TPS3010frm.FormCreate(Sender: TObject);  
    begin
        j := 1;
        title[1] := 'a';
        title[2] := 'b';
        title[3] := 'c';
        title[4] := 'd';
    end;

    var title[i] : array(??);
    var j,  i  := int;

    procedure TPS3010frm.cmdPrint1Click(Sender: TObject);
    begin

      for i := 1 to 4 do
      begin
      PS3010QRpt1Frm.titleLB1  := title[j].value;
      PS3010QRpt1Frm.print;
      j = j+1;
      end

    end;

    머 대충 이런 개념인가여?
    근데 이거 안되는데여...

    1.  PS3010QRpt1Frm.print;-- 이런 개체도 안생기고..
    2. 예제에 들어주신대루 query1.next; 이런것도 .... title[j].next... 이런 식으로 쓰라는건지... 이것도 물론 적용안되구여.
    좀 자세히 알려주세요.
    답답합니다.
    ------------------------------------------------------------------

    .
  • Profile
    별볼일없는 2003.11.28 01:37
    4장에 제목만 다르게 출력한다면...

    PS3010QRpt1Frm :=  tPS3010QRpt1Frm.Create(Application)//리포트 폼을 생성하고

    for i := 1 to 4 do begin
      if i = 1 then
        PS3010QRpt1Frm.제목라벨.caption := 'a' ;
      if i = 2 then
        PS3010QRpt1Frm.제목라벨.caption := 'b' ;
      if i = 3 then
        PS3010QRpt1Frm.제목라벨.caption := 'c' ;
      if i = 4 then
        PS3010QRpt1Frm.제목라벨.caption := 'd' ;

      PS3010QRpt1Frm.퀵리포트명.print;
    end ;

    그리고 퀵리포트 boforprint 에 쿼리 값을 first 해주시면 되겠네요
    그래야 데이타 값이 출력할때 마다 같은 값이 나오겠죠

    그리고 밑에 내용중에
    이부분은 정의가 되지 않은 부분이니깐 다연히 에러가 나겠죠
    위와 같은 방법을 쓸려면 파인드컴퍼넌트라는 걸 써야되는데 구지 4개라고
    되어있다면 어려운 방법을 쓸필요가 있을까요
    '파인드컴퍼넌트' 요건 검색 해보심 많이 나올꺼에요

  • Profile
    초보 2003.11.28 19:20
    정말 감사합니다.
    제가 초보라서, 미리 제가 고민했을법한 부분까지 다시 상세히 수정해 주시기까지 했네요.
    미처 요 부분을 다시 찾아보진 못했구요, 어쨌든.... 요렇게 저렇게 해서 제대로 출력을 해 냈습니다.
    제 초보적인 질문에 성실히 답변해 주셔서 다시한번 감사드립니다.

    저도 빨리 실력을 키워서 여기 작은 보탬이 되었으면 좋겠네요.
    근데 참... 한가지 의문이 드는게 더 있는데여.
    프린트는 문제가 안되는데 프리뷰를 하고 싶을때...
    루프 안에 넣으면 프리뷰가 네번 실행되니 문제고, 앞으로 빼도 그렇고... 그렇죠?
    그런 문제가 있더라구여...
    요건 제가 천천히 함 연구해 볼랍니다.

    암튼... 다시한번 감사드려여~