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

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

Если он построен через дезайнер, то в режиме модификации View это пункт главного меню Query, подпункт View SQL
...
Рейтинг: 0 / 0
01.06.2004, 14:38
    #32542914
ilya79
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
Параметр - это то, что было определено выше и обозначается в дизайнере знаком вопроса "?". Суть 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
01.06.2004, 14:46
    #32542929
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
VIEW(PARAM)->CURSOR(DATAENVIRONMENT)->GRID : REFRESH?
Нет, именно суть команды Select-SQL имеет принципиальное значение. Если в результате другого значения параметра получается другая СТРУКТУРА результирующей таблицы (т.е. разный набор полей, разные типы или размерности полей), то последствия непредсказуемые.

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

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

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

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

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


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