Q&A

  • 넘 급해염.. 제발 갈켜주세염..
DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??



7  COMMENTS
  • Profile
    ㅏㅔㅔ 2001.07.24 01:03
    처음답변하신 분 처럼 locate를 한번써 보세요!!!

    locate문은 table,query모두 사용할 수 있습니다.



    예)



    if locate('name',Edit1.text,[locaseinsensitive]) =false then

    showmessage('찾는자료가 업슴')

    else showmessage('차찾슴');









  • Profile
    하기 2001.07.23 23:47
    참고가 될지 모르겠지만요...

    Locate에 대해 한번 찾아 보세요...

    ^^;



    짱아 wrote:

    > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

    > 근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??

    >

  • Profile
    뽀록이 2001.07.24 00:55
    하기 wrote:

    > 참고가 될지 모르겠지만요...

    > Locate에 대해 한번 찾아 보세요...

    > ^^;

    >

    > 짱아 wrote:

    > > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

    > > 근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??

    > >



    답변이 되길

    query4.Close;

    query4.Open;//이것으로 쿼리는 오픈이 되면서 그리드에 데이타가 나오는 거죠

    그 다음에

    if query4.Locate('ITEM_NAME',Edit1.Text,[]) = False then

    showmessage('찾는 내용이 없습니다.');



    //필드명 ,찾을내용 ,옵션



    이렇게 하면 그 데이타 위치로 갈것입니다.

    다른 내용 필요 없이 이렇게 함 해 보세요



  • Profile
    짱아 2001.07.24 00:12
    하기 wrote:

    > 참고가 될지 모르겠지만요...

    > Locate에 대해 한번 찾아 보세요...

    > ^^;

    >

    > 짱아 wrote:

    > > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

    > > 근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??

    > >

    답변 우선 감사해염..

    제가 LOCATE를 사용해봤거든여..

    아래와 같이..

    ST1 := '%' + Search_Fld.Text + '%';



    QUERY4.CLOSE;

    QUERY4.OPEN;



    with Query4 do

    begin

    If Locate('ITEM_NAME',query3.FieldByName('ITEM_NAME').AsString,[loPartialKey]) = False Then

    Else



    Close;

    Sql.Clear;

    Sql.Add(' SELECT * ');

    Sql.Add(' FROM KORMAP03 ');

    Sql.Add(' WHERE ITEM_NAME LIKE :ST1 ');

    ParamByName('ST1').AsString := ST1;

    Open;

    End;

    근데 안되염...

    ㅜ.ㅜ 모가 잘못된건지... ㅠ.ㅠ



  • Profile
    하기 2001.07.24 01:27
    If Locate('ITEM_NAME', VarArrayOf([Edit1.Text]), loPrtialKey) = False then

    ... ^^;



    짱아 wrote:

    > 하기 wrote:

    > > 참고가 될지 모르겠지만요...

    > > Locate에 대해 한번 찾아 보세요...

    > > ^^;

    > >

    > > 짱아 wrote:

    > > > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

    > > > 근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??

    > > >

    > 답변 우선 감사해염..

    > 제가 LOCATE를 사용해봤거든여..

    > 아래와 같이..

    > ST1 := '%' + Search_Fld.Text + '%';

    >

    > QUERY4.CLOSE;

    > QUERY4.OPEN;

    >

    > with Query4 do

    > begin

    > If Locate('ITEM_NAME',query3.FieldByName('ITEM_NAME').AsString,[loPartialKey]) = False Then

    > Else

    >

    > Close;

    > Sql.Clear;

    > Sql.Add(' SELECT * ');

    > Sql.Add(' FROM KORMAP03 ');

    > Sql.Add(' WHERE ITEM_NAME LIKE :ST1 ');

    > ParamByName('ST1').AsString := ST1;

    > Open;

    > End;

    > 근데 안되염...

    > ㅜ.ㅜ 모가 잘못된건지... ㅠ.ㅠ

    >

  • Profile
    sky 2001.07.23 23:29
    짱아 wrote:

    > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

    > 근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??

    >





    저두 비슷한 기능을 구현한 적이 있어서 제가 한 방법을 알려 드릴께요.

    두가지 방법이 있는데요.

    첫번째.. TTable을 쓰셨다면 TTable.FindNearest(['찾을값']); 을 이용해 보세요.



    전 TQuery를 사용했기 때문에 두번째 방법을 썼는데요.

    찾을 값을 찾을때까지 루프를 도는 것이죠.

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

    Query.First;

    While(not Query.Eof) do

    begin

    if (Query.FieldByName('code').AsString = strCode) then

    exit;

    Query.Next;

    end;

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



    도움이 되셨길..



  • Profile
    짱아 2001.07.23 23:45
    sky wrote:

    > 짱아 wrote:

    > > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다...

    > > 근데 너무 많은 데이타로 인해 데이타를 찾기가 힘드니.. EDIT에 특정 CODE또는 NAME을 입력하여 해당 데이타 위치까지 찾아가려고 하는데염.. 어떻게 해야 하져??

    > >

    >

    >

    > 저두 비슷한 기능을 구현한 적이 있어서 제가 한 방법을 알려 드릴께요.

    > 두가지 방법이 있는데요.

    > 첫번째.. TTable을 쓰셨다면 TTable.FindNearest(['찾을값']); 을 이용해 보세요.

    >

    > 전 TQuery를 사용했기 때문에 두번째 방법을 썼는데요.

    > 찾을 값을 찾을때까지 루프를 도는 것이죠.

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

    > Query.First;

    > While(not Query.Eof) do

    > begin

    > if (Query.FieldByName('code').AsString = strCode) then

    > exit;

    > Query.Next;

    > end;

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

    >

    > 도움이 되셨길..

    >



    님 감사합니다..

    근데 커서가 EDIT에 쓰여진 값을 찾아가지 못하긴 마찬가지인걸여..

    어쩌면 좋을지..



    • 짱아
    • 2001.07.23 23:12
    • 7 COMMENTS
    • /
    • 0 LIKES
    • ㅏㅔㅔ
      2001.07.24 01:03
      처음답변하신 분 처럼 locate를 한번써 보세요!!! locate문은 table,query모두 사용할 수 있습니다. 예...
    • 하기
      2001.07.23 23:47
      참고가 될지 모르겠지만요... Locate에 대해 한번 찾아 보세요... ^^; 짱아 wrote: > DBGRID에 CODE...
    • 뽀록이
      2001.07.24 00:55
      하기 wrote: > 참고가 될지 모르겠지만요... > Locate에 대해 한번 찾아 보세요... > ^^; > > 짱아 w...
    • 짱아
      2001.07.24 00:12
      하기 wrote: > 참고가 될지 모르겠지만요... > Locate에 대해 한번 찾아 보세요... > ^^; > > 짱아 w...
    • 하기
      2001.07.24 01:27
      If Locate('ITEM_NAME', VarArrayOf([Edit1.Text]), loPrtialKey) = False then ... ^^; 짱아 wrote: ...
    • sky
      2001.07.23 23:29
      짱아 wrote: > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다... > 근데 너무 많은 ...
    • 짱아
      2001.07.23 23:45
      sky wrote: > 짱아 wrote: > > DBGRID에 CODE와 NAME라는 것을 조회해서 뿌려주게 되어 있습니다... > ...
    • 몰라
    • 2001.07.23 22:31
    • 0 COMMENTS
    • /
    • 0 LIKES
    • ㅏㅔㅔ
    • 2001.07.23 22:18
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김지엽
      2001.07.23 23:23
      RDB라는건 RDBMS를 뜻하는 거겠지요? 그 경우도 refresh 명령어 잘 먹던데.. 어쩌면 DB의 TransIsolati...
    • ㅏㅔㅔ
      2001.07.23 23:59
      김지엽 wrote: > RDB라는건 RDBMS를 뜻하는 거겠지요? > 그 경우도 refresh 명령어 잘 먹던데.. > > ...
    • DRAGON
    • 2001.07.23 21:31
    • 3 COMMENTS
    • /
    • 0 LIKES
    • ^-_-^
      2001.07.23 22:26
      yo` 엑셀데이터를 바로 오라클디비로 넣지는 못할껍니다. 자료실에 보면 DBM 2000이라는 오라클용 ...
    • DRAGON
      2001.07.23 22:33
      ^-_-^ wrote: > yo` > > 엑셀데이터를 바로 오라클디비로 넣지는 못할껍니다. > > 자료실에 보면 D...
    • ^-_-^
      2001.07.24 19:18
      yo` 일반적으로 델파이를 기본값으로 설치를 하셨다면... c:program filescommon filesBorland Sha...
    • 왕초보
    • 2001.07.23 21:24
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 정성훈
      2001.07.23 22:37
      예제 보냈습니다. 좀 간단하게 만들어서 도움이 될지 모르겠습니다. MDI 형식으로 해서 보냈습니다. 그...
    • 하기
      2001.07.23 22:34
      우선 문자입력이 안되게 하는것은 Form2의 Edit속성중 Enabled나 ReadOnly속성을 바꾸어 주시면 되고요......
    • 박준영
    • 2001.07.23 21:22
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 하기
      2001.07.23 22:25
      uses DBIProcs... Session.GetAliasNames(ListBox1.Items); //Alias명을 넣어주고... ... proc...
    • 클마스
    • 2001.07.23 21:06
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 하기
      2001.07.23 22:08
      with Table1 do begin For i := 0 to FieldCount -1 do ListBox1.Items.Add(Fields[i].Fi...
    • 클마스
      2001.07.24 20:20
      하기 wrote: > with Table1 do > begin > For i := 0 to FieldCount -1 do > ListBox1.I...
    • 박기웅
    • 2001.07.23 21:00
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 한휘
      2001.07.23 21:34
      음.. 쿼리를 해올때 아예.. 앞의 두자리나 세자리만을 가져오는 필드를 만드는 것입니다. 그리고 디비그리...
    • 박기웅
      2001.07.23 22:19
      한휘 wrote: > 음.. 쿼리를 해올때 아예.. 앞의 두자리나 세자리만을 가져오는 필드를 만드는 것입니다. ...
    • 한휘
      2001.07.23 22:29
      그러면.. 원래의 필드도 가져오고.. 끊어진 필드도 가져와서 보여주기는 끊어진 필드로 하고 내부적으로 ...
    • 백운선
      2001.07.23 23:47
      박기웅 wrote: > db그리드 클릭시 어느 몇번째 필드가 클릭 되었는지 알수 있는 방법은 없나요.. Qu...
    • 한휘
      2001.07.23 21:43
      DB그리드에 OnColEnter 이벤트 발생시에... DBGrid1.SelectedIndex 를 체크하면 되겠네요.. 박기웅...
    • 짱아
    • 2001.07.23 20:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 바람개비
      2001.07.24 00:53
      테이블을 사용하셨다면 FindKey,FindNearest 등을 사용하시던가 아님 Range(SetRangeStart,ApplyRange 등)...
    • ^-_-^
      2001.07.23 21:29
      yo` 카운터를 구현하실때, 로직의 차이죠..똑같습니다만, 하루에 한번만 체크하실려면 해당 아이피를...
    • 이지용
    • 2001.07.23 20:51
    • 1 COMMENTS
    • /
    • 0 LIKES
    • ^-_-^
      2001.07.23 21:38
      yo` 4000건의 레코드라면 별로 많은것도 아닌뎅 ^^'' 방법이야 여러가지가 있겟지만은 일반적으로 s...