powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Строка ИТОГО с запросе
24 сообщений из 24, страница 1 из 1
Строка ИТОГО с запросе
    #39517422
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья, приветсвую всех!
Помогите, пожалуйста, в реализации задумки
Напечатал все в Word и сохранил как картинку - так понятнее будет.
Голову уже почти"сломал"
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517427
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это нереляционно.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517451
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, да Вы правы, но есть как есть
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517502
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нормализуйте свои данные вот в такой формат:
Дата Номер Диапазон Формат Коробки22.07.201718-913012322.07.201719-1013034522.07.2017110-11130200...............22.07.2017211-12100250
Ну или сразу возьмите произведение Формат*Коробки:
Дата Номер Диапазон Формат_Коробки22.07.201718-91559022.07.201719-104485022.07.2017110-1126000...............22.07.2017211-1225000
Ну и дальше тупо
Код: vbnet
1.
2.
3.
SELECT Дата, Номер, Диапазон, SUM(Формат_Коробки/1000*8*60)/IIF(Номер=1;524;234)
FROM [конвертированная таблица]
GROUP BY Дата, Номер, Диапазон


Дальше, если хочется, можно опять свернуть с помощью TRANSFORM/PIVOT
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517511
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina, сделано так специально - для отображения в таком виде и заполнения
Запросом конвертировать в Ваш вариант можно? Попробовал Перекрестный запрос - не получается транспонировать.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517516
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Citizen_avayaГолову уже почти"сломал"
естественно, супер мудрые формулы, особенно для читающих ваш вопрос

можно предположить
--вес единицы 130/1000
--вес коробок 123 кор * весЕдиницы*колШтукВКоробке

дальше я пасс
деление на 524 и 234 и умножение на 60 --понять не смогла
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517524
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Citizen_avayaПопробовал Перекрестный запросТут нужна обратная операция. Но Access не знает про UNPIVOT, его придётся делать "вручную".

Citizen_avayaсделано так специально - для отображения в таком виде и заполненияЭто очень плохо, когда отображение влияет на структуру, а не наоборот.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517536
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА,

ВЕРНО
можно предположить
--вес единицы 130/1000
--вес коробок 123 кор * весЕдиницы*колШтукВКоробке


дальше я пасс
деление на 524 и 234 и умножение на 60

524 и 234 - это максимум коробок за 60 мин
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517587
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Citizen_avaya,

а поделив вес коробок на (коробок в мин)
получим вес в минуту

---
может теперь озвучите, что из себя представляет задача в нормальном изложении русскими словами
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517605
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пенсионерка!
Улыбнуло
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517607
звуки букв
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКАможет теперь озвучите....и желательно в формате mp3
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517613
Фотография sdku
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ВАНГУЮ:подобные задачи решают как-то так:
таблицы-справочники:
-описание
-интервалы: от;до
и главная в которой все считается пользовательской функцией в зависимости,как я понял, от веса и описания
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517658
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, что-то вроде этого?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT * FROM Запрос
UNION ALL
SELECT TOP 1 Дата,, "Итого",
       ((DLookUp("[8-9]","Запрос","Описание=""Коробка 1""")*(DLookUp("[8-9]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[8-9]","Запрос","Описание=""Коробка 2""")*(DLookUp("[8-9]","Запрос","Описание="" Формат 2")/1000)*8)/234)*60,
       ((DLookUp("[9-10]","Запрос","Описание=""Коробка 1""")*(DLookUp("[9-10]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[9-10]","Запрос","Описание=""Коробка 2""")*(DLookUp("[9-10]","Запрос","Описание="" Формат 2""")/1000)*8)/234)*60,
       ((DLookUp("[10-11]","Запрос","Описание=""Коробка 1""")*(DLookUp("[10-11]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[10-11]","Запрос","Описание=""Коробка 2""")*(DLookUp("[10-11]","Запрос","Описание="" Формат 2""")/1000)*8)/234)*60,
       ((DLookUp("[11-12]","Запрос","Описание=""Коробка 1""")*(DLookUp("[11-12]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[11-12]","Запрос","Описание=""Коробка 2""")*(DLookUp("[11-12]","Запрос","Описание="" Формат 2""")/1000)*8)/234)*60
FROM Запрос


Наверное, нужно еще ввести обработку пустых значений.
Проставить в нужных местах Nz или проверки выполнять.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517660
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запятая лишняя в первой строке запроса.
Между Дата и "Итого".
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517662
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
__MichelleНаверное, нужно еще ввести обработку пустых значений.
Проставить в нужных местах Nz или проверки выполнять.

но коробок и форматов может быть далеко не 2
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517667
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПЕНСИОНЕРКА__MichelleНаверное, нужно еще ввести обработку пустых значений.
Проставить в нужных местах Nz или проверки выполнять.

но коробок и форматов может быть далеко не 2Кто это сказал?
У ТС говорится: "Есть запрос".
И показан результат этого запроса.
И задан вопрос: "Как при этих данных получить строку итогов?".

Будет другой вопрос - тогда будет другой ответ.

И не коробок и форматов может быть больше указанных, а дат.
Что более вероятно.

Короче, пусть решает ТС, все остальное пока пустые домыслы.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517724
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__MichelleМожет, что-то вроде этого?
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT * FROM Запрос
UNION ALL
SELECT TOP 1 Дата,, "Итого",
       ((DLookUp("[8-9]","Запрос","Описание=""Коробка 1""")*(DLookUp("[8-9]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[8-9]","Запрос","Описание=""Коробка 2""")*(DLookUp("[8-9]","Запрос","Описание="" Формат 2")/1000)*8)/234)*60,
       ((DLookUp("[9-10]","Запрос","Описание=""Коробка 1""")*(DLookUp("[9-10]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[9-10]","Запрос","Описание=""Коробка 2""")*(DLookUp("[9-10]","Запрос","Описание="" Формат 2""")/1000)*8)/234)*60,
       ((DLookUp("[10-11]","Запрос","Описание=""Коробка 1""")*(DLookUp("[10-11]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[10-11]","Запрос","Описание=""Коробка 2""")*(DLookUp("[10-11]","Запрос","Описание="" Формат 2""")/1000)*8)/234)*60,
       ((DLookUp("[11-12]","Запрос","Описание=""Коробка 1""")*(DLookUp("[11-12]","Запрос","Описание="" Формат 1""")/1000)*8)/524)*60 +
       ((DLookUp("[11-12]","Запрос","Описание=""Коробка 2""")*(DLookUp("[11-12]","Запрос","Описание="" Формат 2""")/1000)*8)/234)*60
FROM Запрос


Наверное, нужно еще ввести обработку пустых значений.
Проставить в нужных местах Nz или проверки выполнять.

Домой приехал с работы - завтра попробую Ваш запрос внедрить

Строк форматов и коробок только 2 - формат может менять. В запросе будут менять константы 524 и 234

Спасибо.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517727
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Citizen_avaya,

будет так

для 130 формата - 524
для 100 формата - 234
для 116 формата - 211
для 250 формата - 654 и т.п.

в запросе буду менять эти константы (и скорее всего буду их из справочника тянуть - как вы написали через DLookUp)
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517834
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Citizen_avaya,

Слегка подправленный вариант.
В одном месте не хватало кавычки и добавлены Nz.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT * FROM Запрос
UNION ALL SELECT TOP 1 Дата, "Итого",
      ((Nz(DLookUp("[8-9]","Запрос","Описание=""Коробка 1"""))*(Nz(DLookUp("[8-9]","Запрос","Описание="" Формат 1"""))/1000)*8)/524)*60 +
      ((Nz(DLookUp("[8-9]","Запрос","Описание=""Коробка 2"""))*(Nz(DLookUp("[8-9]","Запрос","Описание="" Формат 2"""))/1000)*8)/234)*60,
      ((Nz(DLookUp("[9-10]","Запрос","Описание=""Коробка 1"""))*(Nz(DLookUp("[9-10]","Запрос","Описание="" Формат 1"""))/1000)*8)/524)*60 +
      ((Nz(DLookUp("[9-10]","Запрос","Описание=""Коробка 2"""))*(Nz(DLookUp("[9-10]","Запрос","Описание="" Формат 2"""))/1000)*8)/234)*60,
      ((Nz(DLookUp("[10-11]","Запрос","Описание=""Коробка 1"""))*(Nz(DLookUp("[10-11]","Запрос","Описание="" Формат 1"""))/1000)*8)/524)*60 +
      ((Nz(DLookUp("[10-11]","Запрос","Описание=""Коробка 2"""))*(Nz(DLookUp("[10-11]","Запрос","Описание="" Формат 2"""))/1000)*8)/234)*60,
      ((Nz(DLookUp("[11-12]","Запрос","Описание=""Коробка 1"""))*(Nz(DLookUp("[11-12]","Запрос","Описание="" Формат 1"""))/1000)*8)/524)*60 +
      ((Nz(DLookUp("[11-12]","Запрос","Описание=""Коробка 2"""))*(Nz(DLookUp("[11-12]","Запрос","Описание="" Формат 2"""))/1000)*8)/234)*60
FROM Запрос;


Если вместо числовых коэффициентов будет их выбор в зависимости от значений Формат'ов, это еще восемь DLookUp'ов.
Еще какое-нибудь округление или форматирование знаков после запятой может потребоваться.
Не громоздкий ли запрос получится?
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39517925
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,

Запрос ошибок не выдает, но результат ИТОГО - 0
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39518026
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Citizen_avaya,

Сделала табличку с данными, как в 20778895 .
Запустила запрос - все получается, строка с итогами формируется.
Чуть позже выложу картинку с результатами.
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39518046
Фотография __Michelle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Табличка с данными.
Табличка названа "Запрос", чтобы не переделывать запрос получения итогов.
Дата Описание 8-9 9-10 10-11 11-1222.08.2017 Формат 1 130 130 130 22.08.2017 Формат 2 100 10022.08.2017 Коробка 1 123 345 200 22.08.2017 Коробка 2 100 250
2. Запрос для получения строки итогов.
Текст не привожу - без изменений текст 20780186 .

3. Результат выполнения этого запроса.
Дата Описание 8-9 9-10 10-11 11-1222.08.2017 Формат 1 130 130 130 22.08.2017 Формат 2 100 10022.08.2017 Коробка 1 123 345 200 22.08.2017 Коробка 2 100 25022.08.2017 Итого 14.6473282442748 41.0839694656489 44.3296144059503 51.2820512820513
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39518217
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
__Michelle,

у меня 0 - странно....
...
Рейтинг: 0 / 0
Строка ИТОГО с запросе
    #39518301
Citizen_avaya
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Заработaло - нашёл ошибку у себя
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Строка ИТОГО с запросе
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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