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

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

Проблемы после выполнения запроса. [D6, Access]


Крутыш ©   (2004-01-13 21:06:00) 

Братаны поясните, что нужно сделать???

Вот такую ошибку выдаёт программа, выполнив запрос, начинаю редактировать
и выходит вот такое сообщение.

Недостаточно сведений ключевого поля для обновления.

Помогите!!!


sniknik   (2004-01-13 23:41:00) [1]

вот это странная, и совсем не нужная конструкция
Adotable1.Recordset:=DataModule4.ADODataSet2.Recordset;
для рефреша достаточно
Adotable1.Active:=false;
Adotable1.Active:=true;

> Параметр q1 - это номер накладной.
> id_lek - уникальный идентификатор товара.
идентификация идет по двум полям, получается? id_nak + id_lek так?
а ситуации с несколькими одинаковыми товарами в одной накладной, не существует? номер накладной на всю накладную естественно один. как в этом случае менять будет?


Крутыш   (2004-01-13 22:21:00) [2]

Вообщем есть таблица с накладными EnterforNakladnye.
Связана через Adotable1.
Запрос нужен:
Когда пользователь в накладной ввёл какой - то товар,
а затем изменил в справочнике этот товар например
наименование, не закрывая эту накладную, он активирует
её, а там наименование старое. Вот этот запрос и нужен
для этого, т.е. для обновления наименований товаров.

select EnterforNakladnye.id_nak,EnterforNakladnye.nomer_nak,
EnterforNakladnye.id_lek,spravochniklek.name,
EnterforNakladnye.seria,EnterforNakladnye.cena,
EnterforNakladnye.ed_izmerenia,EnterforNakladnye.summa,
EnterforNakladnye.vremy,EnterforNakladnye.kol from EnterforNakladnye,spravochniklek where
(EnterforNakladnye.id_lek=spravochniklek.id_lek)and
(EnterforNakladnye.nomer_nak=q1)

Параметр q1 - это номер накладной.
id_lek - уникальный идентификатор товара.

После выполнения запрос идёт следующий код:

Adotable1.Active:=false;
Adotable1.Recordset:=DataModule4.ADODataSet2.Recordset;
Adotable1.Active:=true;

Обновление происходит нормально.
В гриде отображается как должно.
Но когда начинаешь редактировать вылазит вот такая ошибка.

sniknik[2] поле ключевое задано в таблице id_nak.

Выручайте братаны!!! Горю.


sniknik   (2004-01-13 22:09:00) [3]

может и нету его, этого ключевого поля?


softmaster   (2004-01-13 21:34:00) [4]

полностью симптомы приведи...
что за таблы, связи, что за запрос

А так на твой вопрос можно ответить НЕ ДОСТАТОЧНО СВЕДЕНИЙ КЛЮЧЕВОГО ПОЛЯ ДЛЯ ОБНОВЛЕНИЯ


Наверх

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