Имя: Пароль:
1C
1С v8
УТ 11 Обмен с сайтом
0 nikFrezer
 
21.09.21
12:20
День добрый.

Настраиваю типовой обмен с сайтом. Обмен идет. Требуется ограничить выгрузку номенклатуры на сайт несколькими каталогами.

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

2) В плане обмена в разделе Каталог товаров указал отбор по номенклатуре из "Группы из списка" после чего номенклатура совсем перестала выгружаться. Покопался в коде и обнаружил, что при такой настройке данные по номенклатуре тянутся из регистра сведений "Сегменты номенклатуры".

Как правильно отфильтровать номенклатуру?
1 rozer76
 
21.09.21
12:48
регистрируется все, потом идет выборка по узлу плана обмена и в отбор СКД летит массив зарегенных товаров и условия отбора на узле и это пересечение множеств и летит на сайт
2 rozer76
 
21.09.21
12:50
прикинь у тебя 100 узлов со своими отборами и при записи ты что будешь в каждый отбор смотреть подходит или нет товар? тут даже модуль с повторным использованием не поможет )
3 rozer76
 
21.09.21
12:50
(1) + ну и если ОК регистрация по объектам удаляется
4 nikFrezer
 
21.09.21
22:36
(3) Спасибо с регистрацией понятно.

Где правильно номенклатуру фильтровать? Если указываю отбор по номенклатуре в группе из списка, то таблица номенклатуры для выгрузки пустая возвращается.
Вот такой запрос нашел. Получается мне всю номенклатуру которую необходимо выгружать на сайт нужно в сегмент запихнуть?

ВЫБРАТЬ
    ЛОЖЬ КАК ПризнакИспользования
ПОМЕСТИТЬ втИспользуетсяОтборПоСегменту
{ГДЕ
    НЕ &ИспользуетсяОтборПоСегментуНоменклатуры = ИСТИНА}
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    НоменклатураСегмента.Номенклатура КАК Номенклатура
ПОМЕСТИТЬ втНоменклатура
ИЗ
    РегистрСведений.НоменклатураСегмента КАК НоменклатураСегмента
ГДЕ
    НЕ ЛОЖЬ В
                (ВЫБРАТЬ ПЕРВЫЕ 1
                    втИспользуетсяОтборПоСегменту.ПризнакИспользования
                ИЗ
                    втИспользуетсяОтборПоСегменту)
{ГДЕ
    НоменклатураСегмента.Номенклатура.*,
    НоменклатураСегмента.Сегмент.* КАК СегментНоменклатуры}

ОБЪЕДИНИТЬ ВСЕ

ВЫБРАТЬ
    Номенклатура.Ссылка
ИЗ
    Справочник.Номенклатура КАК Номенклатура
ГДЕ
    НЕ Номенклатура.ЭтоГруппа
    И ЛОЖЬ В
            (ВЫБРАТЬ ПЕРВЫЕ 1
                втИспользуетсяОтборПоСегменту.ПризнакИспользования
            ИЗ
                втИспользуетсяОтборПоСегменту)
{ГДЕ
    Номенклатура.Ссылка.* КАК Номенклатура}

ИНДЕКСИРОВАТЬ ПО
    Номенклатура
5 nikFrezer
 
22.09.21
09:03
Вопрос снят. У каталога не был выбран переключатель иерархия по группам/видам.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой