powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Запрос с вычислениями
15 сообщений из 15, страница 1 из 1
Запрос с вычислениями
    #32827572
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Будьте любезны, пособите!

Не получается построить запрос с использованием вычисляемых полей.

Имеется основная таблица и несколько подчиненных к ней, связанных по полю "Вид затрат". Подчиненные таблицы представляют из себя расшифровку фактических величин составляющих (у каждого "Вида затрат" несколько составляющих) конкретного "Вида затрат" в разбивке по годам. Плюс в каждой подчиненной таблице есть несколько полей дополнительного уровня детализации (т.е. каждая составляющая делится на более мелкие составляющие).
В запросе мне нужно просуммировать все поля в каждой подчиненной таблице и затем сами подчиненные таблицы друг с другом для каждого года и "Вида затрат".
Пробовал групповые операции, делал промежуточные запросы на создание таблиц, но конечный запрос не строится (выводятся только названия полей, а "белая" область данных не выводится).
В "хелпе" я не нашел подробностей, как это нужно делать. На форуме таких топиков тоже не нашел.

Подскажите, пож, решение?

Спасибо!
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32827576
DataDigger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне непонятна структура - неудобно как-то по словестному описанию ее восстанавливать.
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32827595
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Michelloно конечный запрос не строится (выводятся только названия полей, а "белая" область данных не выводится).
И нам надо угадать, где в запросе ошибка?
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32828611
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DataDiggerМне непонятна структура - неудобно как-то по словестному описанию ее восстанавливать.Я приложил файл со снимком схемы данных. Там только вместо поля "Вид затрат" поле "Единица учета затрат", но суть одна и та же.
Каждая "Единица учета затрат" разбивается на составляющие (Энергозатраты, транспортные и т.п.), а те в свою очередь имеют свои составляющие (газ, тепло, электричество, ГСМ и т.п.). Плюс это все разбивается по годам. То есть для требуемого запроса нужно сначала просуммировать все составляющие в подчиненных таблицах (причем, как за все годы, так и за один выбранный год), а затем просуммировать сами подчиненные таблицы для получения в результате одной цифры для главной таблицы. То есть получится должна одна величина "Всего затрат по Единице учета затрат".


Владимир СанычИ нам надо угадать, где в запросе ошибка?Ну почти ))) Вернее, подсказать алгоритм действий. В имеющемся у меня пособии по Аксессу (к сожалению, без примеров) я прочитал, что такие вещи нужно делать с помощью группировки, а поэтому в несколько этапов, т.к. в запросе с группировкой нельзя производить вычислительные действия. Поэтому я сделал запросы с группировкой на создание таблиц, а из этих таблиц строю конечный запрос. Но, если промежуточные таблицы получаются, то простой запрос на их основе не выходит!
Подскажите, правильны ли мои действия? Где, предположительно, может быть ошибка?

Спасибо!
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32828789
Фотография msn13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
Подскажите, правильны ли мои действия? Где, предположительно, может быть ошибка?
А где прикажешь искать ошибки то????
Посмотри вложенные запросы
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32828957
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msn13
Код: plaintext
Подскажите, правильны ли мои действия? Где, предположительно, может быть ошибка?
А где прикажешь искать ошибки то????
Посмотри вложенные запросыА последовательность действий я правильно выполняю? По-другому можно как-то?
Как бы Вы сделали?
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32829079
Фотография msn13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
мне не понятно некоторые вещи.
что пишется в табл
а) учет затрат, там что одно пеле? бред полнейший
б) в таблицы затрат, ты что прописываешь?
в) список годов, она тебе вообще нафига?

я бы вообще построил подругому
а) табл учет затрат
номер операции\айди затраты\количество затраты
б)затраты
сделалбы одну таблицу
айди затраты\цена затраты
в)отсюда бы делал выжемку
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32829200
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
msn13мне не понятно некоторые вещи.
что пишется в табл
а) учет затрат, там что одно пеле? бред полнейший
б) в таблицы затрат, ты что прописываешь?
в) список годов, она тебе вообще нафига?

я бы вообще построил подругому
а) табл учет затрат
номер операции\айди затраты\количество затраты
б)затраты
сделалбы одну таблицу
айди затраты\цена затраты
в)отсюда бы делал выжемкуМоя вина, я не до конца все объяснил.

а) В таблице "Учет затрат", естетственно, есть еще поля со множеством реквизитов. За ключевым полем "Единица учета затрат" скрывается код предприятия (соответственно, реквизиты - это его название, вид выпускаемой продукции и прочая).
б) Соответственно, в таблицах затрат прописываются фактические величины тех или иных (понесенных) затрат в каждом году.
в) Список годов не обязателен. Он просто нужен для выпадающего списка в форме. Главное, что поле "Год" в таблицах затрат - ключевое. Вместе с полем "Единица учета затрат" они формируют составной ключ, чтобы можно было к одной "Единице учета затрат" привязывать множество периодов (годов).

По-другому строить базу проблематично, т.к. такая схема продиктована ограничением доступа к объектам базы (она защищена на уровне пользователей). К разным затратам имеют доступ разные юзеры.

Можете ли Вы предложить алгоритм сабжа для существующей схемы базы?

Правильно ли я понимаю этот алгоритм:
1) запрос с группировкой
2) создание промежуточной таблицы
3) запрос с вычислением на основе промежуточной таблицы?

Какая наиболее вероятная ошибка может здесь быть (по Вашему опыту)?
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32829223
ппп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не знаю как с полями но можно попробовать
объединить таблицы т.е UNION применить
или вычислить по частям-т.е в первом запросе по 1 таб .... и тд
а потом свести в один запрос.
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32829311
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пппне знаю как с полями но можно попробовать
объединить таблицы т.е UNION применитьА где такая опция есть?

или вычислить по частям-т.е в первом запросе по 1 таб .... и тд
а потом свести в один запрос.Вот так у меня и организовано. Первый вид запросов работает нормально, а когда свожу все в один, то он не хочет показывать данные.
Вы, например, когда первый раз такое пытались сделать, с какими-то проблемами столкнулись?
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32829597
ппп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
покахи как сводишь
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32829665
Фотография msn13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Michello
ты правда выложи все запросы как ты енто делаешь
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32837768
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо, ребят большое! Ваше недоумение по моему вопросу заставило тщательней просмотреть свое творение. Ошибка была дурацкой (как теперь кажется) - к финальному запросу у меня цеплялась по INNER JOIN еще одна таблица, в которой не было никаких данных. Это блокировало вывод всех остальных данных.

Однако тщательный просмотр выявил гораздо более серьезные проблемы.

Оказывается, что при суммировании (стандартными средствами Акса) числовых данных из N-го количества подчиненных таблиц, когда такие таблицы связаны, помимо поля "Код", например, полем "Дата", во-первых, если, например, количество записей по датам не совпадает между таблицами, то результирующий запрос учтет не все данные (т.к. нет опции "FULL JOIN"), во-вторых, финальная сумма получается в N раз больше истинной, т.к. система будет считать все N повторений ключевого поля в подчиненных таблицах.
Поправьте меня, но, кажется, это так.
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32837789
ппп
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть левые и правые объединения, которые могут помочь при несовпадении числа строк в запросах.

-----
во-вторых, финальная сумма получается в N раз больше истинной, т.к. система будет считать все N повторений ключевого поля в подчиненных таблицах.
Поправьте меня, но, кажется, это так.
-----
А это как запрос составишь!
...
Рейтинг: 0 / 0
Запрос с вычислениями
    #32837819
Michello
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
пппЕсть левые и правые объединения, которые могут помочь при несовпадении числа строк в запросах.Однобокие объединения в любом случае не учтут не совпадающие строки "другого" бока (т.е. несовпадающие величины не просуммируются).

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


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