Q&A

  • DB그리드에서 한컬럼에 두개의 필드값 넣기 ㅠㅠ 그리고 case문..
안냐세요.

DB그리드에서 각각의 컬럼에 필드가 하나씩 잡혀 있자나요.

그런데 그중 한컬럼에 원래 잡혀있는 필드가 나온값에 한칸띠우고 다른필드의 값을 넣고 싶습니다.

EX)

성별 | 성명 | 학번 | 나이

남 철수 99 20

만약 이것이라면

학번컬럼에 입학년도필드를 추가하는거처럼요..



성별 | 성명 | 학번 | 나이

남 철수 99 1999 20



이런식으로요..

따로 설정을 해주어야 하는지..

답변해주세요..ㅠㅠ

==========================================================

그리고 DB그리드에서 컬럼에 0또는 1이 들어갈때

GetText이벤트에서

case sender.AsInteger of

0 : Text := '남자';

1 : Text := '여자';

end;

이런식으로 주었는데 integer values에러가 나네요..

데이타베이스에서 필드는 char 01로 잡혀있구요..

ㅠㅠ...

언제나 행복하시길...





4  COMMENTS
  • Profile
    hobakpa 2001.05.29 02:03
    베나.. wrote:

    > 안냐세요.

    > DB그리드에서 각각의 컬럼에 필드가 하나씩 잡혀 있자나요.

    > 그런데 그중 한컬럼에 원래 잡혀있는 필드가 나온값에 한칸띠우고 다른필드의 값을 넣고 싶습니다.

    > EX)

    > 성별 | 성명 | 학번 | 나이

    > 남 철수 99 20

    > 만약 이것이라면

    > 학번컬럼에 입학년도필드를 추가하는거처럼요..

    >

    > 성별 | 성명 | 학번 | 나이

    > 남 철수 99 1999 20

    >



    이런 방법은 어떨지요....

    쿼리문에서 아예 99 1999 처럼 데이타를 조작을 해버리는겁니다.



    위에건 select 성별, 성명, 학번, 나이 from tablename

    아래건 select 성별, 성명, (학번 +' '+ 년도) 학번, 나이 from tablename

    런 식으로요..



    그런데 제가 지금 년도 학번필드타입이 정확하게 어떤걸로 잡혀있는지 몰라서

    년도 99를 1999처럼 00을 2000처럼 보이게 하는 데이타베이스내의 함수를 잘몰라서요.

    암튼 위 처럼하시면 바로 디비그리드에 뿌릴수 있습니다.



    도움이 되셧으면 합니다.







    > 이런식으로요..

    > 따로 설정을 해주어야 하는지..

    > 답변해주세요..ㅠㅠ

    > ==========================================================

    > 그리고 DB그리드에서 컬럼에 0또는 1이 들어갈때

    > GetText이벤트에서

    > case sender.AsInteger of

    > 0 : Text := '남자';

    > 1 : Text := '여자';

    > end;

    > 이런식으로 주었는데 integer values에러가 나네요..

    > 데이타베이스에서 필드는 char 01로 잡혀있구요..

    > ㅠㅠ...

    > 언제나 행복하시길...



    설마 0, 1이 테이블에 integer로 안들어 갔으리라 생각됩니다.



    if Sender.AsString = '0' then

    Text := '남자'

    else if Sender.AsString = '1' then

    Text := '여자'



    로 해보세요...암튼 도움이 되셨으면 합니다.

  • Profile
    베나.. 2001.05.29 03:48


  • Profile
    cell 2001.05.29 01:24
    단순히 조회만 한다면 편법으로 다음과 같이 해보세요

    일단 calculate 필드를 하나 생성하고(table or query 컴퍼넌트에서) (문자열로 사이즈는 두개의 필드를 더할시 최대한의 사이즈로 잡아줍니다) 이것을 hak라는 이름으로 만들었다면



    아래와 같이 학번에 두개를 보여주고자 할때

    그리드에서 학번에 대한 항목을 없애고 새로 생성한 hak필드를 선택해 줍니다.



    (table or query 컴퍼넌트에서)on calcu이벤트에서

    fieldbyname('hak').asstring = fieldbyname('학번').asstring + ' ' + fieldbyname('성명').asstring

    이렇게 하면 됩니다.

  • Profile
    구름 2001.05.28 23:32


    필드 가, 필드 나, 필드 다

    가와 나의 결합을 다에



    필드 나의 적당한 이벤트

    예로) exit

    fieldbyname(다).asstring = fieldbyname(가).asstring +' '+fieldbyname(나).asstring

    ...







    베나.. wrote:

    > 안냐세요.

    > DB그리드에서 각각의 컬럼에 필드가 하나씩 잡혀 있자나요.

    > 그런데 그중 한컬럼에 원래 잡혀있는 필드가 나온값에 한칸띠우고 다른필드의 값을 넣고 싶습니다.

    > EX)

    > 성별 | 성명 | 학번 | 나이

    > 남 철수 99 20

    > 만약 이것이라면

    > 학번컬럼에 입학년도필드를 추가하는거처럼요..

    >

    > 성별 | 성명 | 학번 | 나이

    > 남 철수 99 1999 20

    >

    > 이런식으로요..

    > 따로 설정을 해주어야 하는지..

    > 답변해주세요..ㅠㅠ

    > ==========================================================

    > 그리고 DB그리드에서 컬럼에 0또는 1이 들어갈때

    > GetText이벤트에서

    > case sender.AsInteger of

    > 0 : Text := '남자';

    > 1 : Text := '여자';

    > end;

    > 이런식으로 주었는데 integer values에러가 나네요..

    > 데이타베이스에서 필드는 char 01로 잡혀있구요..

    > ㅠㅠ...

    > 언제나 행복하시길...

    >

    >