Ошибка при работе с Browser в Claron 5.5

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
OLI

Ошибка при работе с Browser в Claron 5.5

Сообщение OLI »

Есть несколько баз, которые отображены в одном окне.
При работе (как правило с базой, которая была вставленна последней) выдается ошибка: Error: (Record Not Found (35)) attempting to access a record from the .... file.
Такое чувство, что ошибка выдается при обращениее к ThisWindow.update.
Можно ли это как-нибудь это побороть?
Аватара пользователя
Tolusha
Активист
Сообщения: 123
Зарегистрирован: 11 Январь 2006, 16:50
Откуда: Украина, г. Черкассы
Контактная информация:

Сообщение Tolusha »

Что за работа и куда вставлена база :?:
Анатолий.
Аватара пользователя
StillZero
Ветеран
Сообщения: 458
Зарегистрирован: 06 Июль 2005, 2:17
Откуда: Хабаровск
Поблагодарили: 1 раз
Контактная информация:

Сообщение StillZero »

Есть несколько баз...далее поскипано
:D :D :D :D

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

а пока лидирует dedpahom:
- как проверить правильность ввода ИНН?
- в MSDN смотрел?

все это ИМХО и без обид
OLI

Сообщение OLI »

В окне при нажатие кнопки происходит добавление данных из текстовых файлов в поля баз данных. После этого выдается ошибка
(обычно в сообщении появляется имя базы описанной последней в
Table Schematic).
В Сlarione 5.0 при аналогичной работе никогда такого не возникало.
ru_alex
Ветеран
Сообщения: 333
Зарегистрирован: 21 Сентябрь 2005, 11:05
Откуда: Нижний Новгород
Контактная информация:

Сообщение ru_alex »

Я не очень понял, но если разные базы - это разные таблицы словаря, то могу предположить, что нужно перевыводить списки Browse. Такая ошибка возникает когда запись, присутствующая в очереди Browse, уже отсутствует в файле.
Попробуй поставь, например, метод BRW?.ResetSort(1) по всем Browse после твоей обработки данных.
ru_alex
Ветеран
Сообщения: 333
Зарегистрирован: 21 Сентябрь 2005, 11:05
Откуда: Нижний Новгород
Контактная информация:

Сообщение ru_alex »

В догонку, как правило имя файла, указанное в этих ошибках в C55ABC выводится неверно.
OLI

Сообщение OLI »

Спасибо, что Вы нам ответили.
К сожалению BRW?.ResetSort(1) нам не помогло.
Дело в том, что перед тем как идет зачитка из текстового файла данных в таблицы, выполняется очистка таблиц.
В начале мы пытались делать следующим образом:
close(tbl)
open(tbl,12h)
empty(tbl)
Выдавалась следующая ошибка:
You are calling CLOSE(tbl.tps) instead of FileManager.close()
Мы стали делать так:
set()
loop until eof()
next()
delete()
.
Эта ошибка перестала появляться, но зато появляется ошибка, описанная ранее (Record Not Found (35)) .
Может быть мы делаем что-то некорректно? Помогите справиться!
ru_alex
Ветеран
Сообщения: 333
Зарегистрирован: 21 Сентябрь 2005, 11:05
Откуда: Нижний Новгород
Контактная информация:

Сообщение ru_alex »

Если есть Browse по файлу, лучше для обработки пользоваться методами FileManager Class, а лучше RelationManager. Хотя ResetSort должен нормально отрабатывать.
set()
loop until eof()
next()
delete()
.
eof() лучше вообще не использовать
Попробуй так:
loop
set()
next()
if errorcode() then break.
if relate:tbl.delete() then break.
end
Ответить