Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:41

Запросом выбрать номенклатуру где больше одной строки в ТЧ

Автор bestname, 16 июн 2016, 15:14

0 Пользователей и 1 гость просматривают эту тему.

bestname

Здравствуйте. Есть ФормаЭлемента номенклатуры. В этой форме есть табличная часть, "Категории". Как мне запросом выбрать номенклатуру, в которой в ТЧ "Категории" более одной категории/записи?
Либо как-то циклом, обработать всю номенклатуру, которая в ТЧ? Писал так:

МассивСтрокДляУдаления = Новый Массив;

Для Каждого Строка ИЗ ТЧ Цикл

ФормаНоменклатуры = Строка.Номенклатура.ПолучитьФорму("ФормаЭлемента");
КоличествоКатегорий = Форма.ТЧКатегорииНоменклатуры.Количество();

Если НЕ КоличествоКатегорий > 1 Тогда
МассивСтрокДляУдаления.Добавить(Строка);
КонецЕсли;
КонецЦикла;

Для Каждого СтрокаДляУдаления Из МассивСтрокДляУдаления Цикл
Товары.Удалить(СтрокаДляУдаления);
КонецЦикла;


Но так ооооочень долго. Как правильно будет?

vitasw

В качестве примера
"ВЫБРАТЬ
| внЗапрос.Ссылка
|ИЗ
| (ВЫБРАТЬ
| ВариантыОтчетовПодсистемы.Ссылка КАК Ссылка,
| КОЛИЧЕСТВО(ВариантыОтчетовПодсистемы.Подсистема) КАК КоличествоСтрок
| ИЗ
| Справочник.ВариантыОтчетов.Подсистемы КАК ВариантыОтчетовПодсистемы
|
| СГРУППИРОВАТЬ ПО
| ВариантыОтчетовПодсистемы.Ссылка) КАК внЗапрос
|ГДЕ
| ЕСТЬNULL(внЗапрос.КоличествоСтрок, 0) > 1"

bestname

Спасибо конечно, но я не могу разобраться. Что такое внЗапрос? Внутренний запрос?
Мне будет проще разобраться, если вы приведете пример типового  справочника конфигурации, где есть ТЧ в Элементе этого справочника?

vitasw

это и есть запрос по типовому справочнику из бух3.0

cska-fanat-kz

категории скорее всего в регистре сведений "сидят", а не просто ТЧ справочника... :btbzdb:
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Летящий в даль

Цитата: cska-fanat-kz от 17 июн 2016, 05:44
категории скорее всего в регистре сведений "сидят", а не просто ТЧ справочника... :btbzdb:
в справочник Номенклатура элемент формы категория имеет тип ОбработкаКатегории как то так ,эта обработка записывает данные в регистр сведений КатегорииОбъектов, пример запроса к регистру ниже

ВЫБРАТЬ
КатегорииОбъектов.Объект,
КатегорииОбъектов.Категория КАК Категория
ИЗ
РегистрСведений.КатегорииОбъектов КАК КатегорииОбъектов
ГДЕ
КатегорииОбъектов.Объект.Ссылка ССЫЛКА Справочник.Номенклатура

СГРУППИРОВАТЬ ПО
КатегорииОбъектов.Объект,
КатегорииОбъектов.Категория

ИМЕЮЩИЕ
КОЛИЧЕСТВО(РАЗЛИЧНЫЕ КатегорииОбъектов.Категория)>1


---------------------
Помогло - скажи спасибо))

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск