powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Программная модификация DataEnvironment
15 сообщений из 15, страница 1 из 1
Программная модификация DataEnvironment
    #39722986
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Коллеги!

Есть форма Ф, у нее ДЕ - DataEnvironment.
В ДЕ, перед стартом формы Ф, должна появиться таблица Т.
После закрытия формы Ф из ее ДЕ таблица Т должна быть удалена.
Следует отметить, что и без добавления-удаления программа работает правильно, но, я думаю, что это некрасиво...

Как это сделать программно?
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723000
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пропиши в DT.BeforeOpenTables()
Код: sql
1.
2.
lcTable = 'my_table' && как-то задаем таблицу
use in 0 &lcTable alias Table_T
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723002
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Я попробую, а как удалить?
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723004
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если хочешь сделать генератор формы с заполнением DE, то изучай aSelObj()
Например
Код: sql
1.
2.
3.
4.
5.
6.
7.
			if aSelObj(laDE,2)> 0
				loDe=laDE[1]
				with loDE
					.WriteMethod('BeforeOpenTables', '...')
					.AddObject('CA', 'CursorAdapter')
					with .CA
					    ...
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723008
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UAPDima T,

Я попробую, а как удалить?
что удалить? Это просто код чтобы открыть нужную таблицу(ы) до того как начнется инициализация контролов формы, которые скорее ссылаются на поля таблицы.
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723009
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Удалить из ДЕ вышеназванную таблицу
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723011
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UAPDima T,

Удалить из ДЕ вышеназванную таблицу
21715216 перебирай объекты внутри loDE, найди и удали ненужный.
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723012
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,

Спасибо большое! Я проверил, предложенное вами решение полностью удовлетворяет моим эстетическим потребностям!
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723261
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UAPDima T,

Спасибо большое! Я проверил, предложенное вами решение полностью удовлетворяет моим эстетическим потребностям!Осталось только выяснить задлянафига сей геморрой нужен?
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723266
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

Эта тема все о том же см. http://www.sql.ru/forum/1302972/internal-consistency-error

Очень плохо работает связка Форма (модальная)+ Грид+Таблица, открываемая НЕ по алиасу.

Вот и приходится изворачиваться.

Возможно, я не проверял, проще, без ДЕ, открыть таблицу с неким алиасом ДО открытия формы и, чтобы Грид обращался

к таблице по алиасу
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723278
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
UAP,
трындец...

Что такое "таблица, открываемая по алиасу"? Это открытие таблицы сразу с установкой ей алиаса? Если да, то при чем тут DE?
Таблица легко и свободно открывается в методе Load (собственно и предназначенном для открытия таблиц) сразу с нужным алиасом без каких-либо танцев с бубнами. Код соответствующий тут уже показали. Зачем тут велосипед с треугольными колесами?
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723280
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,
Пожалуйста, дайте ссылку, чтобы я не танцевал с бубном, как вы выразились
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723390
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Data Environment смотрит на окружение данных и если все таблицы уже открыты, то ничего повторно не открывается. "Смотрит", естественно, по алиасам, поскольку среда FoxPro идентифицирует таблицы в рабочих областях именно по их алиасам

Как следствие, если Вы не хотите, чтобы Data Environment автоматически открывал таблицы, то Вы должны их открыть самостоятельно. В методе BeforOpenTables() объекта DataEnvironment

О чем Вам и написал Dima T сразу же после Вашего вопроса. Обратите внимание на опцию alias в команде use. Именно это значение Вам нужно корректно задать
...
Рейтинг: 0 / 0
Программная модификация DataEnvironment
    #39723410
UAP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый ВладимирМ!

Спасибо за внимание к моему вопросу...

Очень жаль, что конструкция

This.Grid1.RecordSource = ""
This.Grid1.RecordSourceType = 0
This.Grid1.RecordSource = 't.dbf'

работает плохо.

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

Не трогайте значения по умолчанию без понимания того, на что это повлияет. Ничего "понятного" Вы не получите. FoxPro - это язык. Пусть и программирования, но язык. У него слова могут обозначать вовсе не то, что те же самые слова обозначают в других языках программирования. Другая языковая среда - другие "понятия", пусть и обозначенные тем же самым словом

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


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