powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отчет по нескольким запросам,,, есть ли выход?
19 сообщений из 19, страница 1 из 1
Отчет по нескольким запросам,,, есть ли выход?
    #32574686
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть несколько запросов(7) с полностью идентичной структурой:
Z1 ->P1;P2...P_n
Z2 ->P1;P2...P_n
....
Z7 ->P1;P2...P_n

Есть ли возможность суммировать поля (например Р1) ВСЕХ запросов, например
что то вроде Nz([*]![Р1];0), в поле отчета без муторного написания конструкции типа:

=Nz([Z1]![P1];0)+Nz([Z2]![P1];0)+......Nz([Z7]![P1];0)
(многие поля будут пустыми, поэтому Nz наверное обязательно? или нет...)
Кажется мой способ неудачен.
Заранее спасибо.
Ok.madg
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574689
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Z1
union all
Z2
union all
Z3
union all
Z4
union all
Z5
union all
Z6
union all
Z7

Это текст одного запроса, который будет содержать данные всех семи. Вместо Z1 и т.д. надо подставить тексты исходных запросов.
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574695
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Блин, совсем запарился!
В каждом запросе есть поле ID, для связи с основной таблицей.

Привожу текст запроса, в котором оставил две таблицы!кто сможет, поколдуйте... (или как это называется)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
SELECT Наименование.Код, Наименование.Кадастровый_номер, Наименование.Наименование,
Наименование.Организация_вид, Наименование.год, Наименование.ОКАТО, Наименование.ИНН,
Наименование.ОКПО, Наименование.КФС, Наименование.СПф, Наименование.Адрес,
Наименование.Кат_земель, Наименование.Вид_польз, Наименование.Кол_уч, Пользование.Пашня,
Пользование.Многолетние, Пользование.Сенокосы, Пользование.пастбища, Пользование.Мел_строительство,
Пользование.Покрыт_лесом, Пользование.Лесополосы, Пользование.Болота, Пользование.Под_водой,
Пользование.Площади, Пользование.Парки, Пользование.Застроенные, Пользование.Нарушенные,
Пользование.Полигоны_наруш, Пользование.Овраги_наруш, Пользование.Пески_наруш,
Пользование.Другие_наруш, Пользование.Пашня_орош, Пользование.Многолет_орош,
Пользование.Сенокосы_орош, Пользование.пастбища_орош, Пользование.Прочие_орош,
Собственность.Пашня, Собственность.Многолетние, Собственность.Сенокосы, Собственность.пастбища,
Собственность.Мел_строительство, Собственность.Покрыт_лесом, Собственность.Лесополосы,
Собственность.Болота, Собственность.Под_водой, Собственность.Площади, Собственность.Парки,
Собственность.Застроенные, Собственность.Нарушенные, Собственность.Полигоны_наруш,
Собственность.Овраги_наруш, Собственность.Пески_наруш, Собственность.Другие_наруш,
Собственность.Пашня_орош, Собственность.Многолет_орош, Собственность.Сенокосы_орош,
Собственность.пастбища_орош, Собственность.Прочие_орош
FROM (Наименование LEFT JOIN Собственность ON Наименование.Код = Собственность.ID_наименование)
LEFT JOIN Пользование ON Наименование.Код = Пользование.ID_наименование
WITH OWNERACCESS OPTION;

Тоесть нужны и сами поля запроса, поле в котором будет вычисляться сумма одноименных полей по нескольним запросам.
Извините за такое идиотство......
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574700
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А мой ответ прочитать не довелось?
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574703
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч, спасибо за редакцию топа!! Уж очень некультурно вышло.. :(
Довелось..... ну не знаю как это делается тот кусок приведен из конструктора :(

Если не трудно, приведи код для двух этих запросов а постараюсь применить к остальным.
Спасибо!
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574705
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
madgЕсли не трудно, приведи код для двух этих запросов а постараюсь применить к остальным.
Я не могу привести для этих двух, потому что тут я вижу только один.
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574718
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я наверное как то не очень спрашиваю...
Как правильно организовать сумму по столбцам в ленточной форме записи идут так:
ID; №; Наименование....

<Сумма поМноголетние>
Пользование.Многолетние
Собственность.Многолетние

.....
?????.Многолетние

PS
Блин, базомаратель хренов!!!! :(
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574719
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
madgСаныч, спасибо за редакцию топа!! Уж очень некультурно вышло.. :(
Довелось..... ну не знаю как это делается тот кусок приведен из конструктора :(

Если не трудно, приведи код для двух этих запросов а постараюсь применить к остальным.
Спасибо!

сохраняешь запросы под именами z1 и z2

руками в конструкторе запросов пишешь
(select * from z1) union (select * from z2)
сохраняешь под именем z3
далее работаешь как с обычным запросом(кроме открытия конструктором)
т.е. можно запускать открывать Recordset и querydef применять .execute
строить списки (und so waiter und so fort ..)
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574721
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А. Тогда, наверно, так:

select Многолетние, Сенокосы, ... from Пользование
union all
select Многолетние, Сенокосы, ... from Собственность
union all
.....
union all
select Многолетние, Сенокосы, ... from ?????
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574723
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир СанычА. Тогда, наверно, так:

select Многолетние, Сенокосы, ... from Пользование
union all
select Многолетние, Сенокосы, ... from Собственность
union all
.....
union all
select Многолетние, Сенокосы, ... from ?????
Саныч а чем тебе * не приглянулась в select ?
при любви автора к русским названиям он попутает поля а в Union построитель не пашет!
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574726
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Мне не нравится * в юнионе, потому что если случайно физический порядок полей в таблицах не совсем совпадает, то получится ерунда.
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574730
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир СанычМне не нравится * в юнионе, потому что если случайно физический порядок полей в таблицах не совсем совпадает, то получится ерунда.

Сейчас буду пробовать ....
а по поводу * а с полем ID которое есть в во всех запросах тоже будет union all или нет?
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574732
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
madgа по поводу * а с полем ID которое есть в во всех запросах тоже будет union all или нет?
Нихт ферштейн...
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574739
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч madgа по поводу * а с полем ID которое есть в во всех запросах тоже будет union all или нет?
Нихт ферштейн...
Я про вот что union all - наверное объединение записей, но ID если так тоже объединится? Или как?

Ну это так....

Делаю вроде как сказано:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Report_Activate()
Me.RecordSource = "SELECT * Аренда_зем_долей.Пашня, ....
FROM Аренда_зем_долей" 
Union ALL 
SELECT Аренда_МС.Пашня, 
FROM Аренда_МС"

End Sub


Пробовал вставлять и в SQL и VBA и то и другое посылает.....
Наверное не туда :) "вставляю" ?
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574741
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
madgЯ про вот что union all - наверное объединение записей, но ID если так тоже объединится? Или как?
Если это поле, то конечно. В чем проблема? Юнион просто располагает записи из нескольких таблиц одну под другой. Поле под полем. Если надо их как-то группировать и сортировать, то в отчете это делается в окошке Sorting & Grouping.

madgPrivate Sub Report_Activate()
Me.RecordSource = "SELECT * Аренда_зем_долей.Пашня, ....
FROM Аренда_зем_долей"
Union ALL
SELECT Аренда_МС.Пашня,
FROM Аренда_МС"

End Sub

Я пометил красным две вещи, которые вызовут ошибку. И третья - в VBA так разрывать строки нельзя.
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574742
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может есть решение проще:
Заменить конструкцию - данные для поля:
=Nz([Z1]![P1];0)+Nz([Z2]![P1];0)+......Nz([Z7]![P1];0)

На что нибуть приличнее?

А то, чую, в такие дебри забреду.....
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574744
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
madgМожет есть решение проще:
Заменить конструкцию - данные для поля:
=Nz([Z1]![P1];0)+Nz([Z2]![P1];0)+......Nz([Z7]![P1];0)

На что нибуть приличнее?

А то, чую, в такие дебри забреду.....
Так мы к этому и идем. Все для того и делается.

1. Сажаем отчет на юнион.
2. Группируем его по ID, создаем для этой группы футер.
3. В этом футере ставим поле (вместо этого страшного):
=Sum(Nz(P1;0))
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574749
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
madg Владимир Саныч madgа по поводу * а с полем ID которое есть в во всех запросах тоже будет union all или нет?
Нихт ферштейн...
Я про вот что union all - наверное объединение записей, но ID если так тоже объединится? Или как?

Ну это так....

Делаю вроде как сказано:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Private Sub Report_Activate()
Me.RecordSource = "SELECT * Аренда_зем_долей.Пашня, ....
FROM Аренда_зем_долей" 
Union ALL 
SELECT Аренда_МС.Пашня, 
FROM Аренда_МС"

End Sub


Пробовал вставлять и в SQL и VBA и то и другое посылает.....
Наверное не туда :) "вставляю" ?



а чем не нравиться идея обьединять по Union запросы и в recordsource писать имя Union ?
...
Рейтинг: 0 / 0
Отчет по нескольким запросам,,, есть ли выход?
    #32574758
madg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде что то получается!!!
Спасибо!
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Отчет по нескольким запросам,,, есть ли выход?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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