powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / игнорировать всплывающие сообщения об ошибке
11 сообщений из 11, страница 1 из 1
игнорировать всплывающие сообщения об ошибке
    #35436075
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обрабатываю большую таблицу, для записей делаю определенные действия, связанные с запросом и получением данных в курсор, но периодически появляется ошибка, что ресурс не найден, и появляется окно обработки ошибки
file is in use
cancel suspend ignore help
игнорируя ошибки вручную, несколько раз, обработка возобновляется.

вопрос
можно ли сделать чтобы оно автоматически игнорировала все эти ошибки?
складывается ощущение что файл занят, из-за того что не успел обработаться оператором, как подождать когда он освободится?
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436099
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поиграйся настройкой

SET TABLEVALIDATE
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436109
у Вас многмп-я работа?
с таблицей еще кто-то работает?
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436121
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никто не работает, я могу предполагать, что просто фокс запросом вытаскивает данные из таблицы, и тут же следующий оператор пытаеца опять использовать эту таблицу..
но с другой стороны если все выполняется последовательно, то почему возникает ошибка доступа к файлу?
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436165
покажиет прибл-й код, демонстрирующий
последовательность команд, которые Вы выполняете
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436175
Burn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Версия фокса?
С чемто подобным сталкивался на FPD 2.0 на относительно быстрых для этого времени машинах.
Пробовали лечить всякими задержками перед выдачей запросов. Когда помогало, когда нет.
После перехода на FPD 2.6a проблема пропала.
В VFP данной проблемы не наблюдал никогда
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436191
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
примерно так


авторclose table
set deleted on
use x:\moregistr alias moregistr in 2
use x:\uslper alias uslper in 3

select 3
go top

do while !eof()
st1=alltrim(uslper.s1)
st2=alltrim(uslper.s2)
st3=alltrim(uslper.s3)
st4=alltrim(uslper.s4)
sex1=uslper.sex
vg1=uslper.vg
if st4+'s'='s'
*p(Ej|Ek)
if (st3+'s'='s')and(st4+'s'='s')
select count(*) as pc from moregistr where (at(alltrim(st1+','),alltrim(sostg))>0) and (at(alltrim(st2+','),alltrim(sostg))>0) and sex=sex1 and vg=vg1 into cursor mycur
pc1=mycur.pc
select count(*) as pc from moregistr where (at(alltrim(st2+','),alltrim(sostg))>0) and sex=sex1 and vg=vg1 into cursor mycur
pz1=mycur.pc
select count(*) as pc from moregistr where (at(alltrim(st1+','),alltrim(sostg))>0) and sex=sex1 and vg=vg1 into cursor mycur
pz2=mycur.pc

if pz1<>0
z1=pc1/pz1
else
z1=0
endif
if pz2<>0
z2=pc1/pz2
else
z2=0
endif
replace uslper.p1 with z1
replace uslper.lp1 with z2
endif
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436286
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
версия foxpro 6 это на счет функции set tablevalidate
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436373
пляски с курсором mycur
переписывайте так, раз хочется селектом
можно в 6-ке и просто кауном считать

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
local laR[ 1 ]
create cursor pp (tt i, pp i)
insert into pp values ( 1 ,  2 )
select count(*) ;
	from pp ;
	where tt= 1  ;
	into array laR
? laR[ 1 ]

после испр-я,
проверяйте наличие ош-ки
и сообщайте рез-т
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436399
ради приличия перепишите - оч.режет глаз

(st3+'s'='s')And(st4+'s'='s')

Код: plaintext
1.
if empt(st3) and empt(st4)


If pz1<>0
z1=pc1/pz1
Else
z1=0
Endif
Код: plaintext
1.
 z1 = iif(pz1<> 0 , pc1/pz1,  0 )
...
Рейтинг: 0 / 0
игнорировать всплывающие сообщения об ошибке
    #35436423
HANK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ок
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / игнорировать всплывающие сообщения об ошибке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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