powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / exe, запись за пределами диапазона
9 сообщений из 9, страница 1 из 1
exe, запись за пределами диапазона
    #32892471
Фотография help123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди помогите...
Откомпилировал проэкт в *.ехе - в одной из форм при добавлении новой записи вылетает ошибка: "Запись находится за пределами допустимого диапазона"..... что делать....
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892486
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Приведи кусок кода, на котором вылетает эта ошибка.
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892502
Фотография help123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВладимирМПриведи кусок кода, на котором вылетает эта ошибка.
PRIVATE fieldcount, v_buyerk, v_receiverk
v_buyerk = buy.buyerk
COUNT FOR receive.buyerk = v_buyerk TO fieldcount
v_receiverk = ALLTRIM (v_buyerk) + ALLTRIM (STR (fieldcount + 1))
SELECT receive
APPEND BLANK IN receive
REPLACE receive.buyerk WITH buy.buyerk
REPLACE receive.receiverk WITH v_receiverk
********************************************************************
GO RECNO() IN BUY
ThisForm.Refresh
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892515
из приведенного кода совершенно непонятно какая рабочая область активна
а команды REPLACE лучше делать в активной рабочей области
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892534
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И на какой команде вылетает ошибка?

Я так понял, на

GO RECNO() IN BUY

Так ведь ты определяешь номер записи в таблице receive и пытаешься позиционироватья по этому номеру в таблице BUY. Почему ты уверен, что есть такая запись в таблице BUY?
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892544
lo-pata
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ты берешь recno() из таблицы receive - не факт, что в таблице BUY есть запись с номером recno('receive'). Если в BUY записей меньше чем recno('receive') - тогда ошибка и должна вылезать. Проверь, куда ты переходишь по GO.
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892552
Crispy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Возможно, это - при обращении к записи с номером > чем есть в таблице с текущим алиасом. Если в программе где-то происходит смена алиасов и ищется запись с большим номером - и уже в другой, меньшей по размеру таблице. Можно попробовать отследить это место с помощью Debugger-а, временно засунув куда-нибудь перед ошибкой: SET STEP ON. Найдя место - переключить там на нужный алиас SELECT-ом.
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892566
Фотография help123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем спасибо - ошибка связана с COUNT FOR..... она ведь перемещает указатель записи верно....
...
Рейтинг: 0 / 0
exe, запись за пределами диапазона
    #32892575
после команды COUNT... указатель уходит в EOF
и выполнение команды REPLACE receive.buyerk WITH buy.buyerk
неизвестно к чему приведет
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / exe, запись за пределами диапазона
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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