Как в запросе вычислить количество из тч
Простая ситуация, не могу найти поиском. Нужен запрос документ номер, дата, сумма , кол-во строк из тч
Душа просит что-то типа:
я конечно написала группировку, но может есть что-то более легкое?
Душа просит что-то типа:
ВЫБРАТЬ
ОприходованиеТоваров.Номер,
ОприходованиеТоваров.Дата,
ОприходованиеТоваров.СуммаДокумента,
ОприходованиеТоваров.Товары.Количество() как Кол-Во
ИЗ
Документ.ОприходованиеТоваров КАК ОприходованиеТоваров
ГДЕ
ОприходованиеТоваров.Дата > &Дата
Показатья конечно написала группировку, но может есть что-то более легкое?
ВЫБРАТЬ
ОприходованиеТоваровТовары.Ссылка.Номер,
ОприходованиеТоваровТовары.Ссылка.Дата,
КОЛИЧЕСТВО(ОприходованиеТоваровТовары.Номенклатура) КАК КолВо
ИЗ
Документ.ОприходованиеТоваров.Товары КАК ОприходованиеТоваровТовары
ГДЕ
ОприходованиеТоваровТовары.Ссылка.Дата > &Дата
СГРУППИРОВАТЬ ПО
ОприходованиеТоваровТовары.Ссылка.Номер,
ОприходованиеТоваровТовары.Ссылка.Дата
ПоказатьПо теме из базы знаний
- Универсальный конструктор отчетов (Новейший отчет) для 1C 7.7
- Как в запросе 1С преобразовать секунды в часы и минуты
- Как сделать запрос на изменение данных
- Как сдать экзамен 1С:Специалист по платформе?
- Быстрый фронт в базе размером 6.8 терабайт – наши стандарты при разработке и рефакторинге запросов
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
это условие не ограничивает документ, получаете количество по всем тч, благодаря группировке различающимися номерами и датами (допускать уникальность номера и даты неразумно, а если документ помечен на удаление и создан дубль)
должно быть ОприходованиеТоваров.Ссылка = &Ссылка
самый простой способ подсчитать колво:
выбрать количество(*) Из ТЧ где ТЧ.Ссылка = &Ссылка
ГДЕ
ОприходованиеТоваров.Дата > &Дата
ОприходованиеТоваров.Дата > &Дата
это условие не ограничивает документ, получаете количество по всем тч, благодаря группировке различающимися номерами и датами (допускать уникальность номера и даты неразумно, а если документ помечен на удаление и создан дубль)
должно быть ОприходованиеТоваров.Ссылка = &Ссылка
самый простой способ подсчитать колво:
выбрать количество(*) Из ТЧ где ТЧ.Ссылка = &Ссылка
(5)
самый простой способ подсчитать колво:
выбрать количество(*) Из ТЧ где ТЧ.Ссылка = &Ссылка
Только он не поможет в примере ТС. Так как диалект запросов 1С не позволяет использовать в ВЫБРАТЬ результат подзапроса в качестве выражения, только в условии. Поэтому группировка остается единственным вариантом.
самый простой способ подсчитать колво:
выбрать количество(*) Из ТЧ где ТЧ.Ссылка = &Ссылка
Только он не поможет в примере ТС. Так как диалект запросов 1С не позволяет использовать в ВЫБРАТЬ результат подзапроса в качестве выражения, только в условии. Поэтому группировка остается единственным вариантом.
ВыборкаИзРезультатаЗапроса (QueryResultSelection)
Количество (Count)
Синтаксис:
Количество()
Возвращаемое значение:
Тип: Число.
Описание:
Получает количество записей в выборке из результата запроса.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер).
Использование в версии:
Доступен, начиная с версии 8.0
Количество (Count)
Синтаксис:
Количество()
Возвращаемое значение:
Тип: Число.
Описание:
Получает количество записей в выборке из результата запроса.
Доступность:
Сервер, толстый клиент, внешнее соединение, мобильное приложение (сервер).
Использование в версии:
Доступен, начиная с версии 8.0
Через стандартную функцию КОЛИЧЕСТВО, нет?
Т.е.:
Т.е.:
ВЫБРАТЬ
ОприходованиеТоваров.Номер,
ОприходованиеТоваров.Дата,
ОприходованиеТоваров.СуммаДокумента,
ОприходованиеТоваров.Товары.(КОЛИЧЕСТВО(Ссылка) КАК Ссылка) КАК Количество
ИЗ
Документ.ОприходованиеТоваров КАК ОприходованиеТоваров
ГДЕ
ОприходованиеТоваров.Дата > &Дата
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот