:: Visual Foxpro, Foxpro for DOS
Проблема при открытии неск. окон с различными данными
Dmitry85
Автор

Сообщений: 1
Дата регистрации: 28.05.2012
Здравствуйте.
Пишу интерфейс, где присутствует одновременное открытие нескольких форм.
Что напрягает периодически и чего не могу до конца понять:
Таблицы, которые отображаются в этих формах имеют разные имена и никак не пересекаются.
Но почему-то при открытии новой формы или закрытии одной из формы с таблицами( на закрытие этой формы я прописываю закрытие таблиц, используемых на этой форме) происходит сброс значений грида на какой-то др. форме.
Не всегда, но иногда случается. Пользователей жутко бесит.
Подскажите что именно я делаю не так или чего не понимаю.
Ratings: 0 negative/0 positive
Re: Проблема при открытии неск. окон с различными данными
PaulWist

Сообщений: 14621
Дата регистрации: 01.04.2004
Поставить в формах приватную сессию


------------------
Есть многое на свете, друг Горацио...
Что и не снилось нашим мудрецам.
(В.Шекспир Гамлет)
Ratings: 0 negative/0 positive
Re: Проблема при открытии неск. окон с различными данными
Влад Колосов

Сообщений: 22664
Откуда: Ростов-на-Дону
Дата регистрации: 05.05.2005
Плюс изучить в справке свойства и методы формы. Кнопка F1 поможет.
Где-то при закрытии формы закрывается текущая таблица, например. А текущей может быть какая угодно, если выбрана общая сессия данных.


------------------
Совершенство - это не тогда, когда нельзя
ничего прибавить, а тогда, когда нечего убавить.




Исправлено 1 раз(а). Последнее : Влад Колосов, 28.05.12 15:36
Ratings: 0 negative/0 positive
Re: Проблема при открытии неск. окон с различными данными
Alex Roublev

Сообщений: 3695
Откуда: Ярославль
Дата регистрации: 28.09.2002
Скорее всего у каждой формы сделан DataEnvironment с одним и тем же набором источников. При инициализации DE проверяет, открыты ли источники. Если нет - открывает. При Unload формы источники, естессно, закрываются. Смотрите свойство DE AutoCloseTables. По-умолчанию значение свойства .T.

Во-первых я использую классы форм. Во-вторых DataEnvironment создаю отдельным классом, который не связан с формами. Объявляю Public oDE_main As DataEnvironment и вызываю oDE_main = CreateObject("oDE_main"), пользую oDE_main.OpenTables()


------------------
И волки сыты, и овцы целы, и пастуху - вечная память...
Ratings: 0 negative/0 positive
Re: Проблема при открытии неск. окон с различными данными
Igor Korolyov

Сообщений: 34580
Дата регистрации: 28.05.2002
Alex Roublev
Во-вторых DataEnvironment создаю отдельным классом, который не связан с формами. Объявляю Public oDE_main As DataEnvironment и вызываю oDE_main = CreateObject("oDE_main"), пользую oDE_main.OpenTables()
А смысл? Единственная реальная "полезность" DE - это удобство работы форм-дизайнера (раскрывающиеся списочки для свойств ControlSource, RecordSource, возможность мышой перетащить таблицу/поле на форму). Более он не имеет никаких полезных применений, один лишь геморрой.


------------------
WBR, Igor
Ratings: 0 negative/0 positive


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

On-line: 9 (Гостей: 9)

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