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

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

SET TABLEVALIDATE
...
Рейтинг: 0 / 0
17.07.2008, 11:42
    #35436109
игнорировать всплывающие сообщения об ошибке
у Вас многмп-я работа?
с таблицей еще кто-то работает?
...
Рейтинг: 0 / 0
17.07.2008, 11:47
    #35436121
HANK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
игнорировать всплывающие сообщения об ошибке
никто не работает, я могу предполагать, что просто фокс запросом вытаскивает данные из таблицы, и тут же следующий оператор пытаеца опять использовать эту таблицу..
но с другой стороны если все выполняется последовательно, то почему возникает ошибка доступа к файлу?
...
Рейтинг: 0 / 0
17.07.2008, 11:58
    #35436165
игнорировать всплывающие сообщения об ошибке
покажиет прибл-й код, демонстрирующий
последовательность команд, которые Вы выполняете
...
Рейтинг: 0 / 0
17.07.2008, 11:59
    #35436175
Burn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
игнорировать всплывающие сообщения об ошибке
Версия фокса?
С чемто подобным сталкивался на FPD 2.0 на относительно быстрых для этого времени машинах.
Пробовали лечить всякими задержками перед выдачей запросов. Когда помогало, когда нет.
После перехода на FPD 2.6a проблема пропала.
В VFP данной проблемы не наблюдал никогда
...
Рейтинг: 0 / 0
17.07.2008, 12:03
    #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
17.07.2008, 12:27
    #35436286
HANK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
игнорировать всплывающие сообщения об ошибке
версия foxpro 6 это на счет функции set tablevalidate
...
Рейтинг: 0 / 0
17.07.2008, 12:41
    #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
17.07.2008, 12:46
    #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
17.07.2008, 12:50
    #35436423
HANK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
игнорировать всплывающие сообщения об ошибке
ок
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / игнорировать всплывающие сообщения об ошибке / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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