powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
8 сообщений из 8, страница 1 из 1
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32538835
ilya79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
Есть параметризованный VIEW отоборажаемый в GRID объекте.
Родскажите наилучший способ обновления данных при изменении параметров VIEW(SQL).
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32539142
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LOCAL nParameter
nParameter = "новое значение"
=Requery("MyView")

Здесь nParameter - это имя параметра, записанного после вопросительного знака в дезайнере (или при программном создании) View
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32540652
ilya79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
При использовании Requery выдается ошибка о необходимости перезагрузки Dataenvironment, а этого очень не хотелось бы.
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32540804
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подробнее. Что за параметризированный View? Приведите его команду Select-SQL.

Если он построен через дезайнер, то в режиме модификации View это пункт главного меню Query, подпункт View SQL
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32542914
ilya79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Параметр - это то, что было определено выше и обозначается в дизайнере знаком вопроса "?". Суть SQL-View не так важна, форма примерно такая: SELECT <TABLE1>.*, <TABLE2>.* FROM <TABLE1> INNER JOIN <TABLE2> ON <TABLE1>.ID = <TABLE2>.ID AND <TABLE1>.<FIELD> = (?nParam). Важно, то что при вызове Requery() выдается сообщение о необходимости перегрузки Dataenvironment (Form's data layer). Выход из нанной ситуации известен - вызов USE. Но является ли это оптимальным?
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32542929
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, именно суть команды Select-SQL имеет принципиальное значение. Если в результате другого значения параметра получается другая СТРУКТУРА результирующей таблицы (т.е. разный набор полей, разные типы или размерности полей), то последствия непредсказуемые.

Вообще-то, в "штатном" режиме именно так (через Requery()) и обновляется View. Никаких перезагрузок DataEnvironment не нужно. Если же у тебя это требуется, значит происходит именно изменение структуры результирующего запроса.

Еще одна проблема может быть связана сбуферизацией View. Если View находится в табличном режиме буферизации (5), то перед Requery() может последовать запрос на сброс (откат) изменений внесенных в буфер.
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32542963
ilya79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Об изменении структуры запроса от параметра речи не идет. Есть только зависимость значений SQL-View от значения параметра .

Меня заинтересовал параметр Cursor object - CursorSource. Нет ли здесь аналогии по функциональности с RecordSource в Grid-e?
...
Рейтинг: 0 / 0
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
    #32543020
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тот курсор, который отображается в DataEnvironment - это всего-лишь "визуализация" реальной таблицы или View. Программировать (в смысле программно менять в процессе работы) какие-либо настройки этих курсоров крайне не желательно.

Их цель всего-лишь помочь пользователью "построить" форму и настроить DataEnvironment при открытии и закрытии формы . Вмешиваться в эти объекты в процессе работы формы - не нужно. Да и смысла особого не имеет.

Все, что Вы хотите сделать с таблицами или View выполняется штатными командами минуя объекты-курсоры в DataEnvironment.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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