Как выбрать документы которые имеют в табличной части только одну строку
По теме из базы знаний
- Разукрупнение (разделение, дробление) и частичная ликвидация основных средств
- Некоторые особенности БП 3.0
- Загрузка номенклатуры c картинками (несколько потоков одновременно) и сопутствующими данными в базу и любые документы из yml, xls, xlsx, xlsm, ods, ots, csv для УТ 10.3, УТ 11 (все), БП 3, КА 2, ERP 2, УНФ 1.6/3.0, Розница 2
- Универсальные обработки документов, справочников, регистров, констант для 1С: Предприятие 8.3, управляемые формы
- Автотесты с использованием механизма расширений
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1) Очень просто.
В запросе делаешь выборку из табличных частей нужного вида документов.
Делаешь 2 поля: Ссылка и любое другое (лучше НомерСтроки).
Делаешь группировку по полю Ссылка и суммирование по другому полю - Количество.
Всё, в получившейся таблицы у тебя 2 колонки - Ссылка и, фактически, число строк. Остаётся наложить отбор по количеству строк = 1.
В запросе делаешь выборку из табличных частей нужного вида документов.
Делаешь 2 поля: Ссылка и любое другое (лучше НомерСтроки).
Делаешь группировку по полю Ссылка и суммирование по другому полю - Количество.
Всё, в получившейся таблицы у тебя 2 колонки - Ссылка и, фактически, число строк. Остаётся наложить отбор по количеству строк = 1.
(2)
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка,
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.НомерСтроки) КАК НомерСтроки
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
СГРУППИРОВАТЬ ПО
РеализацияТоваровУслугТовары.Ссылка
ИМЕЮЩИЕ
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ РеализацияТоваровУслугТовары.НомерСтроки) = 1
Показать
(11) В принципе, можно и без паразитной колонки НомерСтроки. Просто выбирать Ссылка и рядом суммировать количество различных по Ссылка же. Ну, а дальше - как уже указывали в (2), (8), (11)..
//offtopic
Сан Саныч: что, тоже "не вынесла душа поэта..."? Я тоже не хотел сначала весь код рисовать. :-)
//offtopic
Сан Саныч: что, тоже "не вынесла душа поэта..."? Я тоже не хотел сначала весь код рисовать. :-)
Вот держи) По услугам пропиши сам это так на быструю руку
ВЫБРАТЬ
ВЫБОР
КОГДА ВложенныйЗапрос.НомерСтроки > 1
ТОГДА NULL
ИНАЧЕ ВложенныйЗапрос.Ссылка
КОНЕЦ КАК Поле1
ИЗ
(ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
МАКСИМУМ(РеализацияТоваровУслугТовары.НомерСтроки) КАК НомерСтроки
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
СГРУППИРОВАТЬ ПО
РеализацияТоваровУслугТовары.Ссылка
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка,
МАКСИМУМ(РеализацияТоваровУслугТовары.НомерСтроки)
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
СГРУППИРОВАТЬ ПО
РеализацияТоваровУслугТовары.Ссылка) КАК ВложенныйЗапрос
СГРУППИРОВАТЬ ПО
ВЫБОР
КОГДА ВложенныйЗапрос.НомерСтроки > 1
ТОГДА NULL
ИНАЧЕ ВложенныйЗапрос.Ссылка
КОНЕЦ
ВЫБРАТЬ
ВЫБОР
КОГДА ВложенныйЗапрос.НомерСтроки > 1
ТОГДА NULL
ИНАЧЕ ВложенныйЗапрос.Ссылка
КОНЕЦ КАК Поле1
ИЗ
(ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка КАК Ссылка,
МАКСИМУМ(РеализацияТоваровУслугТовары.НомерСтроки) КАК НомерСтроки
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
СГРУППИРОВАТЬ ПО
РеализацияТоваровУслугТовары.Ссылка
ОБЪЕДИНИТЬ ВСЕ
ВЫБРАТЬ
РеализацияТоваровУслугТовары.Ссылка,
МАКСИМУМ(РеализацияТоваровУслугТовары.НомерСтроки)
ИЗ
Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
СГРУППИРОВАТЬ ПО
РеализацияТоваровУслугТовары.Ссылка) КАК ВложенныйЗапрос
СГРУППИРОВАТЬ ПО
ВЫБОР
КОГДА ВложенныйЗапрос.НомерСтроки > 1
ТОГДА NULL
ИНАЧЕ ВложенныйЗапрос.Ссылка
КОНЕЦ
(9)А в твоем комментарии не так? Я написала на быструю руку и показала, что надо объединить и таб часть услуги и прочее и надо прописать условие = 1, у меня написано > 1
Очень просто.
В запросе делаешь выборку из табличных частей нужного вида документов.
Делаешь 2 поля: Ссылка и любое другое (лучше НомерСтроки).
Делаешь группировку по полю Ссылка и суммирование по другому полю - Количество.
Всё, в получившейся таблицы у тебя 2 колонки - Ссылка и, фактически, число строк. Остаётся наложить отбор по количеству строк = 1.
Очень просто.
В запросе делаешь выборку из табличных частей нужного вида документов.
Делаешь 2 поля: Ссылка и любое другое (лучше НомерСтроки).
Делаешь группировку по полю Ссылка и суммирование по другому полю - Количество.
Всё, в получившейся таблицы у тебя 2 колонки - Ссылка и, фактически, число строк. Остаётся наложить отбор по количеству строк = 1.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот