powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Переоткрыть курсор в SHARE
7 сообщений из 7, страница 1 из 1
Переоткрыть курсор в SHARE
    #35507383
Mука
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый!
Есть проблема следующего содержания. Существуют 2 объекта созданные от класса производного от класса Session, разные по функционалу. Один объект, созданный от Session (словной назовем его оSession_1) формирует курсор. Хочется поюзать этот курсор в другом объекте (оSession_2). В оSession_1 курсор переоткрываю в SHARE в оSession_2 при попытке открыть этот курсор ругается, что File is in Use . Как поюзать курсор в другой дата сессии ?
...
Рейтинг: 0 / 0
Переоткрыть курсор в SHARE
    #35507388
MукаДобрый!
Есть проблема следующего содержания. Существуют 2 объекта созданные от класса производного от класса Session, разные по функционалу. Один объект, созданный от Session (словной назовем его оSession_1) формирует курсор. Хочется поюзать этот курсор в другом объекте (оSession_2). В оSession_1 курсор переоткрываю в SHARE в оSession_2 при попытке открыть этот курсор ругается, что File is in Use . Как поюзать курсор в другой дата сессии ?
Для начала попробовать добавить в команду открытия во второй сессии слово again.
...
Рейтинг: 0 / 0
Переоткрыть курсор в SHARE
    #35507391
Мука
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть again.

Код: plaintext
1.
2.
3.
4.
5.
Procedure UseTable( cTable, cAlias )
	If !Used(cAlias)
		Use (cTable) In  0  Again Alias (cAlias) Shared
	Endif
	Return Used( cAlias )
	Endproc

Вот так переоткрываю, в cTable передаю путь к курсору полученный через DBF()
...
Рейтинг: 0 / 0
Переоткрыть курсор в SHARE
    #35507428
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему бы не перелить данные курсора из обьекта оSession_1 в оSession_2. Там сформировать копию курсора, внести необходимые изменения, перебросить эту копию обратно в оSession_1 и синхронизировать данные.

Посмотри здесь

А юзать курсор как таблицу (используя DBF() и т.д.) уж больно по-хакерски. Результат может быть неожиданным. :-(
...
Рейтинг: 0 / 0
Переоткрыть курсор в SHARE
    #35507579
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переоткрыть курсор в другой DataSession - не получится. Дело в том, что курсоры открываются (создаются) в режиме Exclusive

Код: plaintext
1.
2.
3.
4.
5.
* Таблица-источник
CREATE CURSOR curSource (f1 I)
* Собственно курсор
SELECT * FROM curSource INTO CURSOR curTarget NOFILTER
?IsExclusive("curTarget")

А переоткрыть таблицу, открытую в режиме Exclusive в другой DataSession нельзя.
...
Рейтинг: 0 / 0
Переоткрыть курсор в SHARE
    #35507623
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Эксперементировать неохота, но если переоткрыть курсор в той же сессии, а
потом уже пытаться открыть его в другой?

Use (dbf('CurTarget')) in 0 alias CurTarget_2 again shared
use in CurTarget

И вот тут открываем в другой сессии?


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Переоткрыть курсор в SHARE
    #35507630
piva
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я уже показывал, только придется городить вьюху в базе (базу можно и в помойке создать)

тынц
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Переоткрыть курсор в SHARE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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