Q&A

  • dbf Table 동적생성하는 방법좀 빨리 ~~ 아시는 분.....
DBF Table동적생성 하는 방법좀 부탁 합니다.

1  COMMENTS
  • Profile
    송병철 2001.06.27 08:10
    헬프게시판에 나와있던 내용입니다..

    잠시 그내용을 빌려쓰던차에 알려드립니다..



    *********************************************



    procedure TVTP_BP010F.FormShow(Sender: TObject);

    var

    TableList : TStringList;

    i : Integer;

    begin

    {***************************************************************************

    동적테이블의 생성 및 삭제

    ****************************************************************************}

    TableList := TStringList.Create;



    try { Temp.DB 존재유무 체크 후 존재하면 삭제 }

    Session.GetTableNames('DBDEMOS', '*.DB', False, False, TableList);

    for i := 0 to TableList.Count - 1 do begin

    if TableList.Strings[i] = 'Temp' then begin

    with Qry_Dynamic_Table do begin

    DatabaseName := 'DBDEMOS';

    Close;

    SQL.Clear;

    SQL.Add('DROP TABLE ''Temp.DB''');

    ExecSQL;

    end;

    end;

    end;

    finally

    TableList.Free;

    end;



    with Tbl_Dynamic_Table do begin

    Active := False; { Table을 Disconnect시킨다 }

    DatabaseName := 'DBDEMOS'; { Database Alias }

    TableName := 'Temp'; { Table Name }

    TableType := ttDefault; { Type = ttDefault, ttParadox, ttDbase }



    with FieldDefs do begin {Field 집합형 }

    Clear;

    Add('ASM_DIR_NO' , ftString,10, True); { FieldName, FieldType, Size, Required }

    Add('MODEL' , ftString, 8, True);

    Add('BRAND' , ftString, 6, True);

    Add('ORDER_QTY' , ftString, 9, True);

    Add('PALLET_NO' , ftString,12, True);

    Add('PC_TYPE' , ftString, 3, True);

    Add('PC_GRADE' , ftString, 1, True);

    Add('ASM_EXP_QTY', ftString, 9, True);

    end;



    with IndexDefs do begin

    Clear;

    Add('Index1', 'ASM_DIR_NO', [ixPrimary, ixUnique]); { IndexName, FieldName, Type }

    end;

    CreateTable; { Table 생성 }

    end;



    end;



    function TVTP_BP010F.FU_Dynamic_Table_Insert(sASM_DIR_NO ,

    sMODEL ,

    sBRAND ,

    sORDER_QTY ,

    sPALLET_NO ,

    sPC_TYPE ,

    sPC_GRADE ,

    sASM_EXP_QTY : String) : Boolean;

    begin

    {Checked 된 값을 구하고 동적테이블에 Insert}

    with Qry_Dynamic_Table do begin

    Close;

    Sql.Clear;

    Sql.Add('INSERT INTO Temp '

    + ' (ASM_DIR_NO , MODEL , BRAND , ORDER_QTY , '

    + ' PALLET_NO , PC_TYPE , PC_GRADE , ASM_EXP_QTY) ');

    Sql.Add(' VALUES (:ASM_DIR_NO ,:MODEL ,:BRAND ,:ORDER_QTY , '

    + ' :PALLET_NO ,:PC_TYPE ,:PC_GRADE ,:ASM_EXP_QTY) ');

    Prepare;

    ParamByName('ASM_DIR_NO').AsString := sASM_DIR_NO;

    ParamByName('MODEL').AsString := sMODEL;

    ParamByName('BRAND').AsString := sBRAND ;

    ParamByName('ORDER_QTY').AsString := sORDER_QTY;

    ParamByName('PALLET_NO').AsString := sPALLET_NO;

    ParamByName('PC_TYPE').AsString := sPC_TYPE;

    ParamByName('PC_GRADE').AsString := sPC_GRADE;

    ParamByName('ASM_EXP_QTY').AsString := sASM_EXP_QTY;



    Try

    ExecSql;

    Except

    MessageDlg('동적테이블(Temp)에 데이타 십입중 에러.',mtError,[mbok],0);

    Exit;

    End;

    end; {with Qry_Dynamic_Table }



    Result := True;

    end;

    • 초보자
    • 2001.06.27 02:32
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 파도랑
      2001.12.11 00:38
      Windows2000 프로페셔널, Windows2000 서버, Windows ME 에서 테스트 해봤는데 전혀 사용하는데 문제 없더...
    • 묵혼
      2001.06.27 17:45
      제가 알기로도 폰트문제가 아니면 거의 문제가 없습니다. 그러나 제가 사용해본 결과 퀵레포트에서 사용자...
    • s
      2001.06.27 03:11
      델파이를 잘못 설치했거나 메모리가 부족한 경우 같습니다. DSK 파일과는 관계가 없어요. 아니면 진짜 ...
    • 강호규
      2001.06.27 02:18
      이곳에서 "DSK" 로 검색해 보세요! --------------------------------------------- aparadin wrote: > ...
    • 짱아
    • 2001.06.27 01:35
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 강호규
      2001.06.27 01:42
      안녕하세요? 질문을 자주 올리시는 군요... 이 에러는 메시지에 나온대로 Dataset 이 수정 또는 삽입 모...
    • 짱아
      2001.06.27 01:46
      허걱 ~ 질문 자주올려 죄송해요... 근데요... edit; 를 해줬는데.... ^^;; 강호규 wrote: > 안녕하...
    • 강호규
      2001.06.27 01:51
      소스를 간단히 정리해서 올려주세요. ---------------------------------------------------------- 짱...
    • 짱아
      2001.06.27 04:12
      감사해요... 정말정말 감사해요.. ^^ 해결됐어요.. 덕분에... 근데요.... 강호규 wrote: > 소스를...
    • 초보
    • 2001.06.27 00:49
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이진수
      2001.06.27 01:15
      Edit17.text := DateToFmt(Query1.fieldByName('insa_ipdate').AsString); 를 Edit17.text := DateToFmt(...
    • 초보
      2001.06.27 01:25
      [Error] U_insa101.pas(792): Incompatible types: 'String' and 'TDateTime'
    • 이진수
      2001.06.27 01:56
      안녕하세요 이진수입니다. Query1.ParamByName('ipdate').AsString := FmtToDate(Edit17.Text); 조...
    • 송병철
      2001.06.27 08:10
      헬프게시판에 나와있던 내용입니다.. 잠시 그내용을 빌려쓰던차에 알려드립니다.. ******************...
    • 강호규
      2001.06.27 01:45
      혹, 이것이 아닌가요? C:Program FilesBorlandDelphi5Bindelphi32.dsk 한번 지워보세요.... ---------...
    • 김동수
      2001.06.27 23:01
      혹시 추가로 콤포넌트를 까셨나여? 그렇지 않고 디폴트로 사용하신다면 환경옵션(인바이런먼트 옵션..영어...
    • 이태성
    • 2001.06.26 23:32
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이진수
      2001.06.27 00:36
      Ctrl-F9 누르심 됩니다. -_-; 이태성 wrote: > 안녕하세요 > 다름이아니오라 > 비주얼C 나 다른언어...
    • 하기
      2001.06.27 00:12
      F9(Run)을 하시지 마시고 Build를 하시면 되거든요... 그러니까 project에 보시면 아마도 Built all proje...
    • 초보
    • 2001.06.26 23:00
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이진수
      2001.06.27 00:38
      글쎄 TDataBase설정에서 대부분의 경우 제대로 작동을 하지만 님의 경우에는 적당한 Driver Name을 주었는...
    • 초보
      2001.06.27 04:57
      먼저, 메인폼이 있고, 데이터 모듈을 포함하고, 데이터 모듈에서 이렇게 Create Event에 이렇게 작성하고...
    • Burier
    • 2001.06.26 22:41
    • 3 COMMENTS
    • /
    • 0 LIKES
    • s
      2001.06.27 03:09
      CreateProcess로 생성해야 TerminateProcess로 쉽게 죽이죠.. 뭐 꼭 CreateProcess로 생성해야 하는건 아...
    • 토맛토
      2001.06.27 00:40
      TerminateProcess(appHandle,0); 여기서 appHandle은 해당 어플리케이션의 핸들값입니다. Burier wro...
    • 이진수
      2001.06.27 00:40
      실행되고 있는 exe를 FindWindow로 찾으신후 그 핸들에다가 SendMessage로 WM_CLOSE를 날리면 되겠네요 ...
    • 이진수
      2001.06.27 00:41
      음 오픈을 어떤식으로 하시는 지는 잘모르겠지만요 TQuery를 사용해서 원하는 부분만 읽어온다면 좀 빠르...
    • woji
      2001.06.27 01:20
      이진수 wrote: > 음 오픈을 어떤식으로 하시는 지는 잘모르겠지만요 > TQuery를 사용해서 원하는 부분만 ...
    • sunny
    • 2001.06.26 22:06
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이진수
      2001.06.27 00:52
      대충 만들겠습니다. 여기다가 직접 작성하는 거니깐 복사해서 제대로 실행 안된다고 뭐라 하지 마시길 -_-;...
    • 뽀록이
      2001.06.26 22:27
      sunny wrote: > 안녕하세요.... > 텍스트파일을 읽어들여서 특정문자열의 갯수를 알고 싶은데.... -.- >...
    • 토맛토
      2001.06.27 00:37
      확인하지 않고 쓰는 글이라 장담할 순 없지만 GROUP BY 절에는 함수를 쓸 수 없는 것으로 압니다. 작성하...
    • 아침햇살
      2001.06.27 03:12
      우선 질문을 읽어주셔서 감사합니다 제가 사용했다는 함수는 인테베이스에서 SubStr을 사용할수있게 iSQL...
    • yosule
      2001.06.28 12:43
      아침햇살 wrote: > 우선 질문을 읽어주셔서 감사합니다 > 제가 사용했다는 함수는 인테베이스에서 SubStr...
    • aparadin
      2001.06.27 01:00
      초보 wrote: > 예를 들어 주민등록번호 6자리 7자리를 입력할때 > 앞에 6자리가 다차면 자동으로 뒤에 7...
    • 뽀록이
      2001.06.26 22:31
      초보 wrote: > 예를 들어 주민등록번호 6자리 7자리를 입력할때 > 앞에 6자리가 다차면 자동으로 뒤에 7...