Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Простой вопросик. Доступ к полям БД [Paradox]


Константинов ©   (2004-11-23 00:12:00) 

Вопрос простейший, но я даже не знаю на что грешить.
Пытаюсь редактировать значения поля таблицы ( TDateTime ) c помощью DateTimePicker

//показываем компонент в нужном месте
procedure TForm1.DBDataInDrawColumnCell(Sender: TObject; const Rect: TRect;
 DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
if (gdFocused in State) then
  begin
  if DBDataIn.SelectedField.FieldNo = 5 then
    begin
       DTPTemp.Left := DBDataIn.Left + Rect.Left + TabSheet1.Left;
       DTPTemp.Top  := DBDataIn.Top + Rect.Top + TabSheet1.Top;
       DTPTemp.Width := DBDataIn.Columns[3].Width + 4;
       DTPTemp.Date := Table1.FieldByName('Date').AsDateTime;
       DTPTemp.Visible := true;
       DTPTemp.BringToFront;
       DTPTemp.SetFocus;
    end;
  end;
end;

//пытаюсь записать значение даты
procedure TForm1.DTPTempExit(Sender: TObject);
begin
 Table1.FieldByName('Date').AsDateTime := DTPTemp.Date;
 DTPTemp.Visible := false;
end;

и ловлю error следующего содержания : "Table1: DataSet not in edit or insert mode"

Что я делаю не так? Объясните плиз балбесу...


jack128   (2004-11-23 01:22:00) [1]

procedure TForm1.DTPTempExit(Sender: TObject);
var
 f: boolean;
begin
f := Table1.State in [dsEdit, dsInsert];
if not f then
  Table1.Edit;
try
  Table1.FieldByName('Date').AsDateTime := DTPTemp.Date;
  DTPTemp.Visible := false;
  if not f then
    Table1.Post;
except
  if not f then
    Table1.Cancel;
  raise;
end;
end;


GanibalLector   (2004-11-23 01:19:00) [2]

>Table1: DataSet not in edit or insert mode"
Дык Table1.Edit или Table1.Insert если новая.ессесно post потом


Наверх

Титульная страница Поиск, карта сайта Написать письмо