:: Visual Foxpro, Foxpro for DOS
Запрет на создание временного файла
Vedmak
Автор

Сообщений: 5949
Откуда: CiTY
Дата регистрации: 30.10.2003
Приветствую!

На одном рабочем месте (Windows 10 x64) приложение работающее c DBF при выполнении SQL-Select получает ошибку.

lcFilter = ''
IF !EMPTY( ThisForm.txtFind.Value )
lcFilter = lcFilter+" and '"+LOWER(ALLTRIM(ThisForm.txtFind.Value))+"'$LOWER( l.code )"
ENDIF
IF !goUser.object_all()
lcFilter = lcFilter+" and ( l.dobject=" + TRANSFORM( goUser.record.object )+" or l.kobject=" + TRANSFORM( goUser.record.object )+")"
endif
lcFilterStatus = ""
if !EMPTY( This.chkStatusNew.Value )
lcFilterStatus = IIF( EMPTY(lcFilterStatus), "", lcFilterStatus+',') + TRANSFORM( move_status_new )
ENDIF
if !EMPTY( This.chkStatusSent.Value )
lcFilterStatus = IIF( EMPTY(lcFilterStatus), "", lcFilterStatus+',') + TRANSFORM( move_status_sent )
ENDIF
if !EMPTY( This.chkStatusSigned.Value )
lcFilterStatus = IIF( EMPTY(lcFilterStatus), "", lcFilterStatus+',') + TRANSFORM( move_status_signed )
ENDIF
if !EMPTY( This.chkStatusRejected.Value )
lcFilterStatus = IIF( EMPTY(lcFilterStatus), "", lcFilterStatus+',') + TRANSFORM( move_status_rejected )
ENDIF
if !EMPTY( lcFilterStatus )
lcFilter = lcFilter + ' and INLIST(l.status,' + lcFilterStatus + ')'
ENDIF
IF EMPTY( This.chkSyncOk.value )
lcFilter = lcFilter+" and l.sync<>"+TRANSFORM(sync_ok)
endif
select l.id, l.code, l.date, L.total1, l.total2, ;
l.sync, sync_name( l.sync ) sync_t, ;
l.status, move_status_name( l.status ) status_t, ;
l.kobject, object_name( l.kobject, .t. ) kobject_t, ;
l.dobject, object_name( l.dobject, .t. ) dobject_t ;
from move_list l ;
where l.type = move_type_local ;
and BETWEEN( l.date, Thisform.cntPeriod.date_from, Thisform.cntPeriod.date_to ) ;
&lcFilter ;
into cursor (This.cursor_alias)

[attachment 30395 IMG_27112018_174041_0.png]

Игнорирование этого сообщения к краху приложения не приводит и курсор заполняется корректно и доступен для использования.

В чем может быть проблема ?


------------------
Говорить стоит лишь для тех, кто слушает.
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
po2

Сообщений: 2864
Откуда: Иркутск
Дата регистрации: 22.12.2001
Не знаю, исправлена ли в последних версиях Fox неточность, на которую я наступал при работе с 6-кой. Бывало, что на действительно быстрых машинах временный файл оказывался занятым, банально из-за того, что система генерируя для него имя на основе показаний таймера выдавала значение совпадающее с созданным мгновением ранее.
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
pasha_usue

Сообщений: 3647
Откуда: Е-бург
Дата регистрации: 06.10.2006
into cursor (This.cursor_alias) NOFILTER READWRITE
Ratings: 0 negative/2 positive
Re: Запрет на создание временного файла
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Странное имя для темпового файла (там курсоры создаются) - c:\mn v2\temp\...
А что возвращает SYS(2023) интересно (каталог временных файлов)...
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
Vedmak
Автор

Сообщений: 5949
Откуда: CiTY
Дата регистрации: 30.10.2003
of63
Странное имя для темпового файла (там курсоры создаются) - c:\mn v2\temp\...
А что возвращает SYS(2023) интересно (каталог временных файлов)...

Я сам переназначаю папку для временных файлов, т.к. пару раз сталкивался с ситуацией когда рабочее место админом было так перекрыто запретами, что даже в системную времянку не было доступа. Имя файла генерит фокс (или виндовая API).

resource = .\foxuser.dbf
codepage = 1257
screen = on
TMPFILES=..\TEMP

Свои временные объекты я создаю функциями

function tmp_file
param cExt
return SYS(2023)+"\$"+SUBSTR(SYS(2015),4)+iif(!empty(cExt),cExt,".tmp")
endfunc
function tmp_form
return "F"+SYS(2015)
endfunc
function tmp_alias
return "A"+SYS(2015)
endfunc


------------------
Говорить стоит лишь для тех, кто слушает.




Исправлено 1 раз(а). Последнее : Vedmak, 11.12.18 09:05
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
PaulWist

Сообщений: 14601
Дата регистрации: 01.04.2004
po2
Не знаю, исправлена ли в последних версиях Fox неточность, на которую я наступал при работе с 6-кой. Бывало, что на действительно быстрых машинах временный файл оказывался занятым, банально из-за того, что система генерируя для него имя на основе показаний таймера выдавала значение совпадающее с созданным мгновением ранее.

Есть такая беда на 9SP2, лечится таймаутом.


------------------
Есть многое на свете, друг Горацио...
Что и не снилось нашим мудрецам.
(В.Шекспир Гамлет)
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
Vedmak
Автор

Сообщений: 5949
Откуда: CiTY
Дата регистрации: 30.10.2003
pasha_usue
into cursor (This.cursor_alias) NOFILTER READWRITE

Спасибо, помогло! Настало время...компы быстрее фокса.


------------------
Говорить стоит лишь для тех, кто слушает.
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
Время придет, Саня! И мы этому не порадуемся...
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
of63

Сообщений: 25161
Откуда: Н.Новгород
Дата регистрации: 13.02.2008
of63
Время придет, Саня! И мы этому не порадуемся...
Внук живет и процветает?! Надеюсь
Ratings: 0 negative/0 positive
Re: Запрет на создание временного файла
Vedmak
Автор

Сообщений: 5949
Откуда: CiTY
Дата регистрации: 30.10.2003
Все хорошо. И тебе добра!


------------------
Говорить стоит лишь для тех, кто слушает.
Ratings: 0 negative/0 positive


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

On-line: 16 AndyNigmatec  (Гостей: 15)

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