:: Архив конференции по VFP до 2005 года
Help! I have error 130 (record is not locked)
Tim
Автор

Сообщений: 5
Дата регистрации: 19.09.2000
Здравствуйте, господа!
Не поможете ли в разрешении проблемы.
У меня в программе время от времени появляется сообщение об ошибке 130 (не заблокированная запись) когда я пытаюсь сделать replace. Причем она это делает не всегда, а через раз. Нигде явно я unlock не писал, set lock стоит в ON. А что делать - непонятно.
Спасибо, Тимофей Андреевский.
Ratings: 0 negative/0 positive
RE: Help! I have error 130 (record is not locked)
ВладимирМ

Сообщений: 14095
Откуда: Москва
Дата регистрации: 02.09.2000
Скорее всего, по каким-то причинам запись не может быть заблокирована.
Попробуй сделать так:

Set Reprocess to 5
IF RLOCK()
Replace ...
UNLOCK
ELSE
MessageBox('Не могу заблокировать запись!')
ENDIF
Ratings: 0 negative/0 positive
RE: Help! I have error 130 (record is not locked)
Tim
Автор

Сообщений: 5
Дата регистрации: 19.09.2000
Дело в том, что я делаю replace all ..., а через раз относится к тому что в одном случае этот всеобщий реплейс проходит, а в другом - нет.
Ratings: 0 negative/0 positive
RE: Help! I have error 130 (record is not locked)
ВладимирМ

Сообщений: 14095
Откуда: Москва
Дата регистрации: 02.09.2000
Если ты делаешь replace по нескольким записям в одной команде, то перед выполнением replace предпринимается попытка заблокировать ВСЮ таблицу.
В случае неудачи блокировки - отказ выполнения replace.
Значит, в приведенном мной примере тебе надо заменить RLOCK() на FLOCK().
Если задача сетевая, то возможно какую-то запись заблокировал другой пользователь
Ratings: 0 negative/0 positive


Извините, но у вас нет прав для того, чтобы оставлять сообщения в этом форуме.

On-line: 9 (Гостей: 9)

© 2000-2024 Fox Club 
Яндекс.Метрика