Q&A

  • 테이블 조인시...
현재 customer, cine_service, service, claim_service
이렇게 4개의 테이블이 있습니당.

customer 는 고객번호,주소,핸드폰1,핸드폰2,핸드폰3..... 의 고객 상세 테이블
cine_service 는 고객번호,일련번호,일자,영화서비스,..
service 는 고객번호,일련번호,일자,서비스내용
claim_service 는 고객번호,일련번호,일자,틀레임서비스내용

이런식으로 구성 되어 있습니다.
현재 필요한것은 어떤 한고객의 모든 리스트를 출력 하고 싶습니당.
출력 형태는
첫번째 페이지는 고객의 상세 내역
두번째 페이지는 밑에와 같은 형식

고객번호 : 0000000000      이름: 아무개
영화서비스 내역
      일련번호 일자 영화서비스내용(예 1 20020316 달마야놀자
                                                    2 20020317 더원
                                         .
                                         .
서비스내역
      일련번호 일자 서비스내용 (예 1  20020301 꽃배달 서비스      
                                               2  20020304 차량배달
                                         .
                                         .
                                         .
클레임 서비스내역  
      일련번호 일자 클레임서비스내용(예 1 20020314 뭐라고 얘기함
                                                       2 20020315 난리를 침
                                         .
                                         .
                                         .  

요런 형태로 뽑고 싶습니당. 그러니까 한 고객당 2장씩 출력 되겠져?
현재는 스트링 그리드에 조회된 고객들중 한 고객을 선택한 후 인쇄 버튼을
누르면 그 고객의 상세 내역만 출력 되게끔 되어 있습니다(퀵리포트이용)
- 쿼리컴포넌트 이용

위 처럼 하려면 어떠한 방법을 써야 합니까?
자세한 예제가 있슴 더 좋겠구여...기럼.부탁 드립니당.

2  COMMENTS
  • Profile
    나두초보!! 2002.03.20 20:28
    마스타, 디테일로..
    퀵리포트에
    rbDetail에.. 고객상세
    rbSubDetail.... 기타테이블로

    자식들의 datasource를 부모의 쿼리나 테이블 컴포넌트에 연결..
    잡아서 하심 될것입니다.


  • Profile
    김경록 2002.03.20 02:33
    이건 한몫에 끝내기란 다소 시간이 많이 걸리거나..
    잘 안될 소지가 보이네여..
    델파이6에서는 어떻게 지원이 가능한지는 알아보진 않았지만..

    일단여..
    고객의 상세용을 출력하는 퀵리포터 1개..
    그리구..
    두번째 페이지라고 말씀하셨던 내용의 퀵리포터 1개를
    따로 만드셔서..
    화면상에는 보여주지 않구..
    곧바로 출력해 버리면 될것 같습니다..
    물론 이 방법을 사용했던 적이 있습니다..

    퀵리포터 출력하는 방법은 아실런지.. (아시겠쪄?  *^^*)
    이궁.. 혹시나..

    첫번째 페이지용 퀵리포터 Create
    첫번째 페이지용 Query를 이용해서 내용 조회
    첫번째 퀵리포터명.Prepare;
    첫번째 퀵리포터명.Print;
    첫번째 퀵리포터명.Free;
    첫번째 퀵리포터명 := Nil;

    두번째 페이지용 퀵리포터 Create
    두번째 페이지용 Query를 이용해서 내용 조회
    두번째 퀵리포터명.Prepare;
    두번째 퀵리포터명.Print;
    두번째 퀵리포터명.Free;
    두번째 퀵리포터명 := Nil;

    이렇게 하면,
    출력상으로 쭈욱하고 나옵니다
    하지만, 페이지 단위를 출력한다면,
    예를 들어.. 총 2페이지중 1페이지  -->  1/2
    이런식으로 출력할려면, 문제가 있다는것을 알려 드립니다.
    다른 방법으로 하시면,
    많은 시간이 소요될것 같아서..
    이렇게라도 말씀드립니다..


                     최강의 프로그래머를 위하여~~~  



    • 유창원
    • 2002.03.19 04:54
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 유창원
      2002.03.19 07:44
      스스로 해결을 해버렸군요. 아 갈길은 멀고도 험하구나.... 간단한 소스는 자료실에 올라가 있습니다.(78...
    • 정성훈
    • 2002.03.19 03:58
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 최석기
      2002.03.19 04:19
      방법이 두가지 있네요 1. FormatFloat('#,##0',1000) 2. Format('%.0n',[1000.00]
    • 정성훈
      2002.03.19 04:34
      님의 답변 정말 감사합니다. 그런데.. ... var a : String; begin a := '10000'; Edi...
    • 최석기
      2002.03.19 05:16
      이궁... 에러가 뜨면 왜 에러가 뜨는지 함 도움말 찾아보는 습관을 들이는게 좋을 듯 싶네요.. forma...
    • 정성훈
      2002.03.19 06:05
      님 덕분으로.. 문제 해결.. 님 정말 감사해요.^^
    • 미소나눔
      2002.03.19 04:07
      procedure TForm1.Button2Click(Sender: TObject); var   s : string;   n, pos : ...
    • freelab
    • 2002.03.19 03:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.03.19 05:14
      /////////////////////////////////////////////////////// 속성중에 wordwrap을 False로하세요.
    • 이영석
    • 2002.03.19 03:27
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 공성환
      2002.03.19 03:28
      sum을 하기전에... select sum(nvl(필드값,0))          .... ...
    • BlueSea
    • 2002.03.19 03:25
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 김경록
      2002.03.20 02:24
      DB 서버가 어떤 종류인가여? DB서버가 있는 OS는 어떻게 되는가여?
    • 공성환
      2002.03.19 03:27
      데이타베이스가 어떤건지는 모르지만... 트리거이벤트를 사용해보세요...
    • 염상철
      2002.03.19 19:35
      with query1 do begin       close;      &nb...
    • BlueSea
      2002.03.20 23:50
      답변 해주신 분들 먼저 감사합니다. 근데 트리거는 테이블에 Insert나 update가 될때 발생되는건데 ...
    • 나두초보!!
      2002.03.20 20:28
      마스타, 디테일로.. 퀵리포트에 rbDetail에.. 고객상세 rbSubDetail.... 기타테이블로 자식들의 dat...
    • 김경록
      2002.03.20 02:33
      이건 한몫에 끝내기란 다소 시간이 많이 걸리거나.. 잘 안될 소지가 보이네여.. 델파이6에서는 어떻게 지...
    • 문상준
    • 2002.03.19 02:25
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 칼리
      2002.03.19 02:49
      같은 네트워크상의 컴터는 실아이피 라는 말이 애매하군요. 공인 고정 IP인지? 아니면 내부에서 사용하...
    • 문상준
      2002.03.19 09:56
      실아피라 함은 고정아이피란 말입니다.. 그리고 핑은 떨어집니다.. reply xxx.xx.xxx.xx 뭐 이런식으...
    • 김기수
      2002.03.19 01:52
      아래와 같이 WideString으로 바꾸면 됩니다.
    • 미소나눔
      2002.03.19 04:04
      procedure TForm1.Button1Click(Sender: TObject); var   n, i, max : integer;   ...
    • 김경록
      2002.03.20 02:38
      물론 될것이라 판단됩니다.. (실제로 업무에서도 그렇게 사용한 후에 배포를 했었습니다..) 파라독스도 ...
    • 박성훈
    • 2002.03.19 00:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.03.19 04:43
      안녕하세요. 최용일입니다. 흠... .inc파일 보시면 $ifdef 문이 보이실겁니다. 이게 해답이네요... ...
    • Delphi Kim
    • 2002.03.18 22:56
    • 1 COMMENTS
    • /
    • 0 LIKES
    • Delphi Kim
      2002.03.19 00:34
      아쒸.....울 나라를 어케 보구...쩝!!! delphi6에 있는 install shield 버그랍니다... 고쳐달라구 얘...
    • 김진석
    • 2002.03.18 21:54
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 신동훈
      2002.03.19 06:04
      저도 잘은 모르지만... 델파이 오랫동안 안쓰다고 요즘 다시 쓰기시작하는터라... 혹시 다음과 같이 코...
    • 정진우
    • 2002.03.18 21:39
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 홍성락
      2002.03.18 22:32
      //////////////////////////////////////////////////////// 전에도 같은 질문이 있었는데요... FloatToS...
    • 정진우
      2002.03.19 02:44
      설명하신 방법들은 문자열로 표현해주기 위한 방법들이고요~ 계산된 값은 소숫점부분이 이상한것 같습니다...
    • 김동일
    • 2002.03.18 20:53
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박상윤
      2002.03.27 08:53
      pas 파일이있으면 컴파일을 다시 하시면 됩니다... 만약 형이 맞지 안거나 하면... 비슷한 형으로 바궈주...
    • 염상철
    • 2002.03.18 20:33
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 초보임당
      2002.03.18 20:45
      mdi child 불러 올때 제가 쓰는 거고여... mdi child 폼은 프로퍼티에 폼 스타일을 fsMDIChild로 바꾸어 ...
    • 염상철
      2002.03.18 20:51
      일반폼을 불러 오고 싶은건데.. form1.show; form1.showmodal; 을 하면 에러가 나는데 그냥 불러 와 지...
    • 초보임당
      2002.03.18 21:05
      일반 폼은여 ...form style 을 nomal 로 바꾸시고 역시 옵션에서 일단      &n...
    • 장명선
    • 2002.03.18 20:21
    • 0 COMMENTS
    • /
    • 0 LIKES