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

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

SQL [D7, Paradox]


petvv ©   (2006-05-19 13:14:00) 

Доброго времени суток господа !

У меня следующий вопрос:

Вот код:

for i:=0 to qOsn.RecordCount do
begin
qFuel.Close;
qFuel.Params[0].AsInteger:=qOsn.Fields[0].AsInteger;
qFuel.Active:=True;
qOsn.Fields[4].AsString:=qFuel.Fields[0].AsString; << -- А вот здеся он мне пишет qOsn: Dataset not in edit or insert mode.

qOsnov.Close;
qOsnov.Params[0].AsInteger:=qOsn.Fields[1].AsInteger;
qOsnov.Active:=True;
qOsn.Fields[5].AsString:=qOsnov.Fields[0].AsString;
qOsn.Next;
end;

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


Johnmen   (2006-05-19 13:58:00) [1]

TQuery+F1 -> Using TQuery -> Updating read-only result sets


petvv   (2006-05-19 13:33:00) [2]

Да qOsn это запрос вот код

qOsn.Params[0].AsDateTime:=DateBeg.Date;
qOsn.Params[1].AsDateTime:=DateEnd.Date;
qOsn.Active:=True;
for i:=0 to qOsn.RecordCount do
begin
qFuel.Close;
qFuel.Params[0].AsInteger:=qOsn.Fields[0].AsInteger;
qFuel.Active:=True;
qOsn.Edit;
qOsn.Fields[4].AsString:=qFuel.Fields[0].AsString;
qOsn.Post;
qOsnov.Close;
qOsnov.Params[0].AsInteger:=qOsn.Fields[1].AsInteger;
qOsnov.Active:=True;
qOsn.Fields[5].AsString:=qOsnov.Fields[0].AsString;
qOsn.Next;
end;


Johnmen   (2006-05-19 13:33:00) [3]

Work with read-only dataset
есть такая тема в хелпе.


petvv   (2006-05-19 13:30:00) [4]

Вставил следующий код
qOsn.Edit;
qOsn.Fields[4].AsString:=qFuel.Fields[0].AsString;
qOsn.Post;
А он мне

qOsn: Cannot modify a read-only dataset.


Johnmen   (2006-05-19 13:24:00) [5]

1. Нумерация записей нач. с 1, а не с 0.
2. В режим редактирования набор данных переводится вызовом метода Edit.

PS
Цикл по зписям делается не так. Но так while not Eof do begin


Sergey13   (2006-05-19 13:23:00) [6]

>Что я не так делаю ?
Не читаешь то, что "он" ТЕБЕ пишет. 8-)


Desdechado   (2006-05-19 13:22:00) [7]

для редактирования нужно перевести этот датасет в режим редактирования
методом Edit, Insert, Append


Vlad   (2006-05-19 13:22:00) [8]


> petvv ©   (19.05.06 13:14)  



> << -- А вот здеся он мне пишет qOsn: Dataset not in edit
> or insert mode


qOsn.Edit;
qOsn.Fields[4].AsString:= ...
qOsn.Post;


Наверх

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