Q&A

  • 앗 소스와 이미지 올립니다. 좀 알려주시길.
안녕하세요 캡쳐한 이미지 처럼 처리를 하려구 합니다.
근데 Error가 발생해서 어떻게 해야할지 몰라서 질문 드립니다.

unit searchchild;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, ExtCtrls, OleCtrls, BSS2ClientLib_TLB, StdCtrls,
  DBTables;

type
  TForm1 = class(TForm)
    Bevel1: TBevel;
    StaticText1: TStaticText;
    Edit1: TEdit;
    Edit2: TEdit;
    StaticText2: TStaticText;
    StaticText3: TStaticText;
    Edit3: TEdit;
    Edit4: TEdit;
    StaticText4: TStaticText;
    StaticText5: TStaticText;
    Edit5: TEdit;
    Edit6: TEdit;
    StaticText6: TStaticText;
    StaticText7: TStaticText;
    Edit7: TEdit;
    Edit8: TEdit;
    StaticText8: TStaticText;
    Button1: TButton;
    Edit9: TEdit;
    Edit10: TEdit;
    Edit11: TEdit;
    StaticText9: TStaticText;
    Button4: TButton;
    Button5: TButton;
    BSS2Client1: TBSS2Client;
    StaticText10: TStaticText;
    Shape1: TShape;
    StaticText11: TStaticText;
    Edit12: TEdit;
    StaticText12: TStaticText;
    Edit13: TEdit;
    Edit14: TEdit;
    Edit15: TEdit;
    StaticText13: TStaticText;
    StaticText14: TStaticText;
    StaticText15: TStaticText;
    Button2: TButton;
    Button3: TButton;
    Button6: TButton;
    ADOConnection1: TADOConnection;
    DataSource1: TDataSource;
    Table1: TTable;
    Image1: TImage;
    Table1data: TMemoField;
    Table1name: TMemoField;
    Table1age: TIntegerField;
    Table1born_year: TIntegerField;
    Table1born_month: TIntegerField;
    Table1born_day: TIntegerField;
    procedure Button2Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);
begin
  if Edit12.Text = '' then
  begin showmessage('아이디를 입력하세요!');
  exit;
  end

  else if Edit13.Text = '' then
  begin showmessage('이름을 입력하세요!');
  exit;
  end

  else if Edit14.Text = '' then
  begin showmessage('나이를 입력하세요!');
  exit;
  end

  else if Edit15.Text = '' then
  begin showmessage('생일을 입력하세요!');
  exit;
  end;

  BSS2Client1.WGetFP4Regist  //Authentication Skin Load.

end;

procedure TForm1.Button6Click(Sender: TObject);
begin
  with table1 do // insert.
  begin
    TABLE1.IndexName := 'PK_ch_table'; //IndexName.
    if findkey([Edit12.Text]) then //Index Search.
    begin
      showmessage('입력된 자료입니다.');
      Edit12.SetFocus; //Edit12에 제어를 놓음.
    end else

    begin
      table1.Append; //ADD.
      table1data.Value := Edit12.Text;
      table1name.Value := Edit13.Text;
      table1.Post; //Save.
      showmessage('입력이 되었습니다.!');
      Edit12.Text := ''; //Edit에 입력된 값 초기화.
      Edit13.Text := '';
      Edit14.Text := '';
      Edit15.Text := '';
      Edit12.SetFocus;
      end;
end;
end;

end.

만든 Database의 Tabel의 각 필드 data, name에 값을 입력해서 넣으려구
합니다. Debugger Exception Notification창이 나오면 아래의 메시지가
나옵니다. 어떻게 해야할지요..

Project child.exe raised exception class EDatbaseError with message 'Table1: Cannot perform this operation on a closed dataset'.
~~ 어디가 잘못된건지요.
dataset이 닫혀 있다고 하는데 다 제대로 동작하는 것 같은데
도저히 찾을 수가 없네요..
좀알려주시면 감사.
0  COMMENTS