powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
7 сообщений из 7, страница 1 из 1
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32184849
Фотография Skleroz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте!
Опять эта набившая оскомину ошибка "Row cannot be located for updating. Some values may have been changed since it was last read" ADO, MDAC 2.7, Delphi 7, .MDB. Ключевое поле - счетчик, полей со значениями по умолчанию нет.
Сама проблема: если в _последней_ добавленной (даже про POSTенной уже) записи изменить одно из логических полей, то ADO теряется и выдает описанную выше ошибку. По CheckBox'ам видно, что значения этих полей NULL'евые... Пока не сделаешь что-нить вроде Requery. После этого они становятся False, и их можно изменять. Получается, что значения по умолчанию все-таки есть! Но я их не вижу!
Есть какие-нибудь предположения?
Заранее спасибо!
...
Рейтинг: 0 / 0
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32184875
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ОНО сдесь
...
Рейтинг: 0 / 0
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32186024
Фотография Skleroz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо Королевству Дельфи!
Вот кусок кода из моей программы, если кому нужно :)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
procedure ActivateAllTables(Connection: TADOConnection);
var
  i: integer;
begin
  if not Connection.connected then connection.Open;
  with Connection do begin
    for i:= 0  to DataSetCount- 1  do begin
      try
        with DataSets[i] do if not Active then begin
          AfterPost:=SetQueryProperties;
          AfterOpen:=SetQueryProperties;
          Open;
        end;
      except
      end;
    end;
  end;
end;

procedure SetQueryProperties(DataSet: TDataSet);
begin
  if DataSet is TADOQuery then with (DataSet as TAdoQuery) do begin
    Properties['Update Criteria'].Value:= adCriteriaKey;
    Properties['Update Resync'].Value:= adResyncAutoIncrement + adResyncInserts;
  end;
end;
...
Рейтинг: 0 / 0
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32186057
funikovyuri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я что вам советовал? То же самое - только тут еще установка этих свойств для всех DataSet'ов - что вообще говоря далеко не всегда нужно
...
Рейтинг: 0 / 0
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32187911
Фотография Skleroz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Там ответ раньше пришел... но все равно спасибо за ссылочку... почитаем...
...
Рейтинг: 0 / 0
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32188094
uranic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть еще такой компонетик TbetterADODataSet
Там все ще приятней, код присать не нужно.
В поисковиках думаю найти не сложно
...
Рейтинг: 0 / 0
ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
    #32319936
avec
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот эту строчку я не понял

AfterPost:=SetQueryProperties

И компилятор тоже ее не просек:

[Error] MainUnit.pas(2431): Incompatible types: 'method pointer and regular procedure'

Объясните, плз
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / ПОМОГИТЕ! Опять эта "Row cannot be located for updating..."
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]