Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как изменить RecordSource формы в режиме сводной таблицы / 19 сообщений из 19, страница 1 из 1
24.06.2004, 15:03:22
    #32575709
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Есть настроенная форма в режиме сводной таблицы. Т.е. поля источника данных привязаны к областям этой сводной таблицы. При смене источника данных в событиях Load или Оpen этой формы эта настройка проподает, форма выводится пустой. Естественно второй источник полностью идентичен первому (думаю, что не пройдет номер даже с переприсвоением того же источника). Источник данных представляет собой простой запрос. Если поменять источник в конструкторе, то всё работает. Есть ли выход?
...
Рейтинг: 0 / 0
24.06.2004, 15:07:00
    #32575723
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
А как ты меняешь соурс? Покажи код
...
Рейтинг: 0 / 0
24.06.2004, 15:15:25
    #32575749
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Как обычно

Me.RecordSource = "qry2"
...
Рейтинг: 0 / 0
24.06.2004, 15:18:05
    #32575756
йцук
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Код: plaintext
1.
2.
strPivotLayout = Me.XMLData
Me.RecordSource = "...."
Me.XMLData = strPivotLayout
...
Рейтинг: 0 / 0
24.06.2004, 15:20:08
    #32575770
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Странно, обычно работает. Не понятно мне только почему ты меня ешь на Load или Оpen, может быть в том и проблема. Но попробуй после этой команды запустить Requery. И еще, попробуй сделать тоже самое на новой форме с таким же комплектом контролов, но без кода, только этот код на Load или Оpen
...
Рейтинг: 0 / 0
24.06.2004, 15:39:40
    #32575824
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Йцук: xmlData не нашел, наверно, говорите об А2003, у меня А 2002.

Rivkin Dmitry: на открытии меняю соурс потому что форма вызывается из разных мест, анализ одинаковый, выборки разные. Никакого кода кроме одного события нет. Но там есть вычисляемы поля сведений и итоги, может это мешает.

Если ничего не поможет, попробую формировать сам запрос динамически, не меняя его в источнике...
...
Рейтинг: 0 / 0
24.06.2004, 15:40:54
    #32575833
йцук
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Me.PivotTable.XMLData
...
Рейтинг: 0 / 0
24.06.2004, 15:42:29
    #32575838
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
йцук, извините, нашел, только Me.PivotTable.xmlData
счас попробую...
...
Рейтинг: 0 / 0
24.06.2004, 15:45:53
    #32575849
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
vladKЙцук: xmlData не нашел, наверно, говорите об А2003, у меня А 2002.

Rivkin Dmitry: на открытии меняю соурс потому что форма вызывается из разных мест, анализ одинаковый, выборки разные. Никакого кода кроме одного события нет. Но там есть вычисляемы поля сведений и итоги, может это мешает.

Если ничего не поможет, попробую формировать сам запрос динамически, не меняя его в источнике...

Так может быть лучше перед открытием формы сформировать запрос и не ломать голову. И работать должно быстрее, т.к. при загрузке формы все равно будет грузиться предыдущий запрос, а потом уже перегрузится на новый...
...
Рейтинг: 0 / 0
24.06.2004, 15:48:12
    #32575854
йцук
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
авторпри загрузке формы все равно будет грузиться предыдущий запрос, а потом уже перегрузится на новый
Ну и пусть себе грузится какой-нибудь "Select СписокПолей Where False"
Заодно пользователь сумеет поля поперетаскивать - без торможения, неизбежного при наличии данных
...
Рейтинг: 0 / 0
24.06.2004, 15:50:57
    #32575865
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Всем спасибо, метод предложенный йцук'ом работает великолепно.
...
Рейтинг: 0 / 0
24.06.2004, 15:51:38
    #32575868
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
йцук авторпри загрузке формы все равно будет грузиться предыдущий запрос, а потом уже перегрузится на новый
Ну и пусть себе грузится какой-нибудь "Select СписокПолей Where False"
Заодно пользователь сумеет поля поперетаскивать - без торможения, неизбежного при наличии данных

Неа! Не сможет пользователь ничего таскать - Акс занят открытием запросов и ни фига не даст делать, притворится мертвым...
...
Рейтинг: 0 / 0
24.06.2004, 15:57:03
    #32575886
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
>т.к. при загрузке формы все равно будет грузиться предыдущий запрос

Точно ли это так?

Почему же тогда событие BeforeQuery наступает после Form_Open ? Или хотите сказать что они асинхронно идут?
...
Рейтинг: 0 / 0
24.06.2004, 16:00:26
    #32575897
йцук
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
авторПочему же тогда событие BeforeQuery наступает после Form_Open ?
потому что до Form_Open ничего произойти и не может
...
Рейтинг: 0 / 0
24.06.2004, 16:07:09
    #32575920
Rivkin Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
When you open a form, the following sequence of events occurs for the form:

Open → Load → Resize → Activate → Current
...
Рейтинг: 0 / 0
24.06.2004, 16:17:46
    #32575954
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Это я знаю, но для сводных форм есть дополнительное событие BeforeQuery Event
Код: plaintext
1.
Occurs when the specified PivotTable view queries its data source.
как йцук логично заметил ничего не может быть до open формы
Rivkin Dmitry написал
Код: plaintext
1.
 т.к. при загрузке формы все равно будет грузиться предыдущий запрос
BeforeQuery происходит после события open, если я меняю соурс в open, то почему будет грузиться предыдущий запрос?
...
Рейтинг: 0 / 0
24.06.2004, 16:19:35
    #32575958
йцук
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
посмотри лучше, до или после Form_Load оно (BeforeQuery) наступает
...
Рейтинг: 0 / 0
24.06.2004, 16:24:37
    #32575970
vladK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
Был не прав.
всё происходит так:
Form_BeforeQuery
Form_Open
Form_Load

Так что действительно будет грузится...

Однако в Form_BeforeQuery поменять соурс не даёт.
...
Рейтинг: 0 / 0
24.06.2004, 16:28:52
    #32575982
йцук
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как изменить RecordSource формы в режиме сводной таблицы
да и забей ты на это
установи в качестве источника Select НужныеПоля, и нехай себе грузится
все равно же ты его переопределяешь?

а переопределение я бы сделал по пользовательскому действию - в случае сложного запроса или большого количества данных
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как изменить RecordSource формы в режиме сводной таблицы / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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