Q&A

  • 쿼리결과를 DBGrid에 출력하려면....
쿼리 결과를 DBGrid에 출력하려고하는데
select 지역,
         우편번호,
         학교
  from schoolmst
이런 쿼리 문장이 있습니다.
쿼리컴퍼넌트에 new Field로 해서 지역, 우편번호, 학교를 추가하고,
DBGrid에 출력할때 우편번호가 예를 든다면 111111이런식으로 되어있는데
111-111이런식으로 표현하기 위해서 저는 항상 CalcFields를 이용해서
출력했습니다.
(Query1.FieldByName('우편').AsString :=
                   Copy(Query1.FieldByName('우편').AsString,1,3) + '-' +
                   Copy(Query1.FieldByName('우편').AsString,3,3))
이런식으로 말이죠.
그런데 만약 New Field로 추가하지 않고 CalcFields를 이용하지 않고
111-111을 표현할 수 있는 방법이 있습니까...
제가 New Field를 할 수 없는 이유는 조회를 할때마다 Field명이 추가 되었
다가 줄었다가 할 수 있기 때문입니다.(우편,우편1 일수도 있고, 우편, 우편1,
우편2, 우편3 일수도 있기 때문입니다.)
고수님들의 조언을 바랍니다.
급하거든요.
                          
  
3  COMMENTS
  • Profile
    major 2003.05.29 19:58


    안녕하세요..

    그러시면 필드를 쿼리 컴포넌트에서 추가를 시키시고...
    그리고 나서 쿼리 컴포넌트를 더블 클릭하면 조그만한 창에 필드 리스트를
    Add 시키거나 아니면 코딩으로 해서 Field에 있는 Display Format이라는
    프로퍼티에 포맷을 주시면 될 것 같은데요...

    타입에 따라서 Float인 경우에는 DisplayFormat에 포맷을 !###-###;0;
    이렇게 주시고요... 타입이 String 인 경우에는 EditMask에 !###-###;0;
    이렇게 포맷을 주시면 될 것 같아요..

    그럼 즐프하시고요...
  • Profile
    이정택 2003.05.29 20:06
    우선 답변감사합니다.
    하지만 제가 하고 싶은건 쿼리 컴퍼넌트에 필드를 추가 할 수 없거든요.
    이유는 필드의 갯수가 1개일경우도 있고 2개 3개 4개일 경우도 있기 때문입니다.

  • Profile
    ㉯㉰감자 2003.05.29 23:07
    지금 하실려는 부분이 Grid의 Fixed컬럼의 Caption을 바꿀려고 하시는건가요?

    그럼... Query를 실행하고 나서 Grid 헤더를 바꾸셔도 되구요

    쿼리할때 미리 alias등으로 타이틀을 적어도 되죠

    select field1 as 우편1, field2 as 우편2 from post

    이런식으로 하시면 DBGrid에도 우편1과 우편2로 표시됩니다.

    뭐 여러가지 방법이 있겠지만... 미리 디자인타임에서 결정하시지 마시고

    쿼리 Open하고 나서 Grid에 타이틀을 넣고, 사이즈 조정하고 하시면 잘 될거라 생각되네요..

    아 위 2가지 방법 말고도 Query에 필드들을 동적으로 추가 해줘도 뭐 상관은 없겠네요... (하지만 이 방법은 추천할만하지 않네요)

    DBGrid외에 추천할 만한 DBGrid는 TMSSoftware에서 나온것이 있구요(쉐어웨어) 또는 RxLib(무료)내에 DBGrid도 쓸만합니다. DBGrid는 기능이 좀 없어서...

    그럼 즐프하세요...
    • KDDG_09
      2003.05.30 22:42
      2개의 리포트를 그냥 합치는 것이라면 컴포지트리포트를 사용하세요(CompositReport) 퀵리포트 데모에도 ...
    • yosule
      2003.05.30 20:44
      델파이 IDE 메뉴에서  Component->import ActiveX 선택면 ActiveX 리스트 가 보이는 화면...
    • 오병주
      2003.05.30 18:34
      안녕하세요... 다 됩니다.... 컴포넌트중에 QRCompositeReport 를 사용하세요... 그러면 4개의 ...
    • major
      2003.05.30 18:59
      그냥 CompositeReport를 사용하셔도 되는데... 간단한 것 좀 알려 드리려고 몇 자 적습니다... 다...
    • 미친코딩
      2003.05.30 18:20
      아~ 그리고 며칠전 자료실에 Jet Engine만 setup하는거 올려났는데 access 안깔린데서 테스트할려면 그거...
    • 미친코딩
      2003.05.30 18:10
      병윤님 말씀대로 매개변수가 너무 적다...그건 90% 필드 정보가 잘못되어서 나오는것입니다. 테이블의 ...
    • 김병윤
      2003.05.30 11:26
      General SQL error, [Microsoft][ODBC Microsoft Access Driver] 매개변수가 너무 적습니다. 4이(가) 필...
    • 안유환
    • 2003.05.30 07:34
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박정일
      2003.05.31 02:30
      Gen_wave라는 컴포넌트가 있습니다. 근데 설명이  일본말로 되어 있다네요... 한글로 바꾼 버...
    • 이정은
    • 2003.05.30 04:51
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김병윤
      2003.05.30 11:35
      Query1.Close; Query1.SQL.Clear; Query1.SQL.Add(' UPDATE A SET '); Query1.SQL.Add(' A = :PRM_A&nbs...
    • yosule
      2003.05.30 11:14
      wNumEdit1.value값이 String인 경우    Query1.SQL.Add('a = ' + wNumEdit1.value); wNumEdi...
    • 이종택
    • 2003.05.30 03:05
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 미소나눔
      2003.05.30 19:40
      즐푸~~ type   TStruct = Record     OrderNo : Integer;  &nbs...
    • 김준영
    • 2003.05.30 01:46
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 압스
    • 2003.05.30 01:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 오선배
      2003.05.30 03:35
         ShowMessage(inttostr(trunc(0.008*1000+1e-10))); Intel Cpu 의 Floating point Error ===...
    • 방은정
    • 2003.05.30 00:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • ㉯㉰감자
      2003.05.30 00:47
      Combo박스로 입력 받으심이 어떨런지요? 아래는 샘플 소스... 폼에 button1개, combobox1개 올렸습니...
    • 휴초보
    • 2003.05.29 21:32
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 강신구
    • 2003.05.29 21:30
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 박종철
    • 2003.05.29 21:17
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김수경
      2003.05.29 21:34
      Delphi의 TDateTime형중 정수 부분은 날짜을, 소수 부분은 시간을 나타냅니다. 그러므로 TDateTime현 ...
    • 우소
      2003.05.29 23:10
      DateUtils 에 IncDay() 함수가 있어요 간단히 구하세요
    • 포 맷
    • 2003.05.29 20:21
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 박준호.시나브로
      2003.05.29 20:34
      그냥 각각의 버튼클릭 이벤트에서 처리하면 되는거 아닌가여? 굳이 질문하신 방법대로 하신다면 Butt...
    • 곽재근
    • 2003.05.29 20:19
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 곽재근
      2003.05.30 07:33
      컴퍼넌트를 추가(?) 셋업 하니 나오더군요.... ^^ 컴퍼넌트명은 RX 입니다... 어디에 쓰는지 모르...
    • 신민수
      2003.05.29 23:45
      dpr, pas, dfm 파일만 있으면 소스 수정하고, 컴파일하는데 아무 문제 없을겁니다. dcu파일은 프로그램 ...
    • 하늘이
    • 2003.05.29 20:02
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 타락천사
      2003.05.29 23:33
      안녕하세여. 타락임다.. 델마당 자료실에 있습니다. http://www.delmadang.com/cwb-bin/CrazyWWWBoar...
    • 별볼일없는
      2003.05.29 23:26
      델파이 cd 없나요?   사용자 설치 하시면 bde만 설치되는데요... ㅡㅡ;
    • 이정택
    • 2003.05.29 19:52
    • 3 COMMENTS
    • /
    • 0 LIKES
    • major
      2003.05.29 19:58
      안녕하세요.. 그러시면 필드를 쿼리 컴포넌트에서 추가를 시키시고... 그리고 나서 쿼리 컴포넌트...
    • 이정택
      2003.05.29 20:06
      우선 답변감사합니다. 하지만 제가 하고 싶은건 쿼리 컴퍼넌트에 필드를 추가 할 수 없거든요. 이유는 필...
    • ㉯㉰감자
      2003.05.29 23:07
      지금 하실려는 부분이 Grid의 Fixed컬럼의 Caption을 바꿀려고 하시는건가요? 그럼... Query를 실행하고...
    • 별볼일없는
      2003.05.29 23:57
      별 볼일 없는 잔머리.. ㅋㅋㅋ keydown에 요렇게 하면....    if (key = vk_return) and (...
    • irashi
      2003.05.30 21:20
      답변 감사합니다. 위방법은 좀 문제가 있어서요 실제 엔터키 외에 타이핑하는 경우이데 밑으로 내려가...
    • irashi
      2003.05.30 21:47
      keydown에서   if Memo1.Lines.Count = 9 then     begin  ...