|
|
|
| Добрый день!
Имеется сохраненный перекрёстный запрос как источник подчиненной формы, но при открытии формы – ругается «невозможно использование перекрестного запроса в качестве источника записей в подчиненной форме – измените значение свойств заголовки столбцов»
Делаем в конструкторе в свойствах «заголовки столбцов» например 0;1;2;3;4 (что соответствует нашим столбцам) – все ок, но… к-во и наименование столбцов каждый раз различно (на то он и перекрестный запрос) соответственно это свойство нужно менять в VBA, как я понимаю через QueryDefs. Возможно ли это и как? Второй день капаю – мозг уже сломал. | |
|
| |
|
|
|
| а почему не вставить запрос как подчиненная форма/отчет, а не источник записей? | |
|
| |
|
|
|
| Мастер сформирует форму из запроса (т.е. все равно будет форма с источником записей из перекрестного запроса), но с фиксированным к-вом полей из столбцов запроса. У меня поля формы формируются динамически перебором из rst.Fields (QueryDefs), т.к. к-во столбцов может быть разное. Пример - разбивка года по квартально 4 столбца, по месячно - 12
Т.е. мне нужно чтобы в форме отображался перекрестный запрос с динамическим к-вом полей (Пример - разбивка года по квартально 4 столбца, по месячно - 12). Отдельно форму я сделал (поля формы формируются динамически перебором из rst.Fields (QueryDefs). ) - в табличном режиме - все ок. Теперь нужно вставить это в другую форму. Проблема - см. выше. | |
|
| |
|
|
|
| 1. поясните конечную цель ваший действий?
2. почему нельзя просто вставить запрос в форму? - никакого гемора вообще нет.
3. если это запрос на 12 месяцев - сделай его не перекрестным, а групповым с суммированием
типа
select .... , SUM(iif( Month(дата)=1, Kol_vo, 0)) as Pole_1, SUM(iif( Month(дата)=2, Kol_vo, 0)) as Pole_2 .... from tabla .....
п.с. подправил добавил SUM | |
|
| |
|
|
|
| Конечная цель - вывести в форме ввиде таблицы перекрестный параметрический запрос с динамически изменяемым количеством полей (столбцов) (может быть 3 столбца, а может 20) | |
|
| |
|
8 Кб. |
|
| если подчиненная таблица (с запросом) не должна отзываться на действия юзера, а быть просто информативной - то вполне достаточно воткнуть в нее запрос, а не изголяться с полями и названиями столбцов - т.к. это геморно и как правило не приводит к результату.
см. файл.
или я чего-то не понимаю | |
|
| |
|
|
|
| Должна отзываться на деиствия юзера :) Вообщем пошел немного по другому пути. Спасибо!!! | |
|
| |
|
|
|
| так может во временную таблу все спихивать и программно показывать только первых N столбцов таблы? на основании кол-ва полей перекрестного запроса. | |
|
| |