Q&A

  • 디비그리드에 레코드 선택출력...
정보처리 기사 문제를 풀다가 의문이 있어서요



폼을 두개 사용 합니다.

그리고 하나는 입력과 계산에.. 하나는 출력에..테이블은2개.



테이블 하나에는 입력정보를 다른 하나의 테이블에는 계산된테이블을 만듭니다.



예)..



제품. 10대 20대 30대 토탈... ->10,20,30은 계산된 필드 입니다.

??? 12 33 42 6767

ㅇㄹ 33 0 0 22

ㅇㅇ 0 0 0 0





입력 테이블



고객번호 제품 수량

32 44 33





위의 출력. 계산된 테이블중 토탈이 0인 레코드는 출력을 하지 않을 려고 합니다.

출력은 다른 폼에 디비그리드를 하나더 만들어 놓고 사용 합니다.

테이블에 filter를 가하니가 되지 않더라구요.. 계산된 필드라 그렇다는데...쩝..

부탁 드립니다.

2  COMMENTS
  • Profile
    이재식 1999.10.06 02:55
    이상헌 wrote:

    > 정보처리 기사 문제를 풀다가 의문이 있어서요

    >

    > 폼을 두개 사용 합니다.

    > 그리고 하나는 입력과 계산에.. 하나는 출력에..테이블은2개.

    >

    > 테이블 하나에는 입력정보를 다른 하나의 테이블에는 계산된테이블을 만듭니다.

    >

    > 예)..

    >

    > 제품. 10대 20대 30대 토탈... ->10,20,30은 계산된 필드 입니다.

    > ??? 12 33 42 6767

    > ㅇㄹ 33 0 0 22

    > ㅇㅇ 0 0 0 0





    > 입력 테이블

    >

    > 고객번호 제품 수량

    > 32 44 33

    >

    >

    > 위의 출력. 계산된 테이블중 토탈이 0인 레코드는 출력을 하지 않을 려고 합니다.

    > 출력은 다른 폼에 디비그리드를 하나더 만들어 놓고 사용 합니다.

    > 테이블에 filter를 가하니가 되지 않더라구요.. 계산된 필드라 그렇다는데...쩝..

    > 부탁 드립니다.



    이재식 Wrote :

    안녕하세요?

    질문이 다소 이해가 좀 안가지만, 의도는 알겠습니다.

    귀하의 경우처럼, 특정 값이 무엇일때 출력을 원하지 않는다면

    바로 GetText이벤트를 쓰는 것입니다.

    이 이벤트는 테이블 컴포넌트이든 쿼리 컴포넌트이든

    둘 다 있습니다.

    위에서 보니까 테이블 컴포넌트를 쓰신 것 같아요.(Filter얘기가 있어서)

    아무튼, Field Editor에 들어가시면(컴포넌트를 더블클릭)

    그냥 필드이든 계산된 필드이든 그것을 Add하세요.

    그리고, 해당 필드를 선택한뒤 F11(오브젝트 창)에 가보시면

    Event탭이 있죠.

    거기에 보면 GetText이벤트가 있어요.

    한마디로 특정 필드의 값이 0일때는 출력을 안하고 싶으면

    조건을 준다음에 DisPlayText := false라고 해주면 되거든요.

    GetText이벤트 사용법은 제가 전에 설명을 한 적이 있는데요,

    한번 검색해서 찾아보세요. 데이터베이스분류에 있어요.

    그럼...



  • Profile
    이상헌 1999.10.06 19:25
    <입력폼>

    출력테이블

    제품. 10대 20대 30대 토탈... ->10대,20대,30대는 계산된 필드 입니다.

    aaa 12 33 42 87 ->그리고 모든 제품코드는 데이블에

    bbb 33 0 0 33 입력되어 있습니다.

    ccc 0 0 0 0

    ddd 21 0 22 43





    입력 테이블

    고객번호 제품 수량

    32 a2 33

    23 a4 32

    12 a7 65







    입력 ------ [button]

    ------ [button]

    ------



    입력 폼은 대충 입런식 입니다.





    <출력폼>

    출력데이타



    제품. 10대 20대 30대 토탈

    aaa 12 33 42 87

    bbb 33 0 0 33

    ccc 0 0 0 0 <= 바로이부분 제품 ccc를 출력 되지 않게 하려 합니다.

    ddd 21 0 22 43



    총주문량:XXXX



    입력 데이타



    고객번호 제품 수량

    32 a2 33

    23 a4 32

    12 a7 65





    요렇게..



    제품. 10대 20대 30대 토탈

    aaa 12 33 42 87

    bbb 33 0 0 33

    ddd 21 0 22 43



    위의 답변대로 테이블을 두개 사용 했습니다.

    그리고 출력폼의 테이블은 입력폼에 있는출력테이블을 연결하여 사용 했습니다.

    답변해주신 대로 했더니 토탈만 출력이 안되더라구요. 에구...

    다시한번 부탁 드립니다. 방법이 없을까요. 배열을 썼으면 가능하겠지만

    데이타베이스로 해보고 싶어서요.

    디비그리드로는 제한을 가할수 있는 방법이 없나요?

    아님 테이블을 하나더 생성해야 하나? 토탈이 0이면 새테이블에 넣지않는다.....쩝.

    가능하면 새로운 테이블을 생성하지않고 하려고 합니다. 데이타가 중복되니깐요.

    다시한번 부탁 드립니다.





    이재식 wrote:

    > 이상헌 wrote:

    > > 정보처리 기사 문제를 풀다가 의문이 있어서요

    > >

    > > 폼을 두개 사용 합니다.

    > > 그리고 하나는 입력과 계산에.. 하나는 출력에..테이블은2개.

    > >

    > > 테이블 하나에는 입력정보를 다른 하나의 테이블에는 계산된테이블을 만듭니다.

    > >

    > > 예)..

    > >

    > > 제품. 10대 20대 30대 토탈... ->10,20,30은 계산된 필드 입니다.

    > > ??? 12 33 42 6767

    > > ㅇㄹ 33 0 0 22

    > > ㅇㅇ 0 0 0 0

    >

    >

    > > 입력 테이블

    > >

    > > 고객번호 제품 수량

    > > 32 44 33

    > >

    > >

    > > 위의 출력. 계산된 테이블중 토탈이 0인 레코드는 출력을 하지 않을 려고 합니다.

    > > 출력은 다른 폼에 디비그리드를 하나더 만들어 놓고 사용 합니다.

    > > 테이블에 filter를 가하니가 되지 않더라구요.. 계산된 필드라 그렇다는데...쩝..

    > > 부탁 드립니다.

    >

    > 이재식 Wrote :

    > 안녕하세요?

    > 질문이 다소 이해가 좀 안가지만, 의도는 알겠습니다.

    > 귀하의 경우처럼, 특정 값이 무엇일때 출력을 원하지 않는다면

    > 바로 GetText이벤트를 쓰는 것입니다.

    > 이 이벤트는 테이블 컴포넌트이든 쿼리 컴포넌트이든

    > 둘 다 있습니다.

    > 위에서 보니까 테이블 컴포넌트를 쓰신 것 같아요.(Filter얘기가 있어서)

    > 아무튼, Field Editor에 들어가시면(컴포넌트를 더블클릭)

    > 그냥 필드이든 계산된 필드이든 그것을 Add하세요.

    > 그리고, 해당 필드를 선택한뒤 F11(오브젝트 창)에 가보시면

    > Event탭이 있죠.

    > 거기에 보면 GetText이벤트가 있어요.

    > 한마디로 특정 필드의 값이 0일때는 출력을 안하고 싶으면

    > 조건을 준다음에 DisPlayText := false라고 해주면 되거든요.

    > GetText이벤트 사용법은 제가 전에 설명을 한 적이 있는데요,

    > 한번 검색해서 찾아보세요. 데이터베이스분류에 있어요.

    > 그럼...

    >