УТ10.3 Модуль интеграции с Битрикс 5. В 1с товары разложены по папкам Брендам. При выгрузки в Битрикс накладывается отбор по группе брендов(или одному бренду), выгружаются только изменения. При этом товары, которых нет в выгрузке все равно остаются на сайте, хотелось бы деактивировать(или удалить) такие товары, или например, сначала деактивировать раздел - соответствующий бренду а потом загружать. При полной выгрузки товары на сайте, которых нет в файле деактивируются, но полная выгрузка идет очень долго много позиций. В настройках Битрикса установлено Что делать с товарами, отсутствующими в файле импорта - Ничего Что делать с группами, отсутствующими в файле импорта - Ничего Деактивация при полной выгрузки идет http запросом по дате "ПараметрЗапросаHTTP_ДеактивацияДанныхПоДате" , "&mode=deactivate", а как сделать по разделу?
---
Стандартно "деактивация" товара в каталоге Битрикс происходит, когда в 1С ставится отметка удаления на товаре. Я поборол это так: в товар добавил свойство "Показывать в каталоге сайта" (тип булево) и первоначально всем товарам поставил этот признак = Истина. Когда пользователь убирает галку с этого свойства, то система автоматически регистрирует, что произошли изменения в карточке товара. Следовательно товар будет в следующей выгрузке на сайт. А вот теперь надо немного подправить "Модуль интеграции с Битрикс 5" Признак активации товара ставится не по тому, стоит или не стоит пометка удаления, а по моему новому признаку "Показывать в каталоге сайта"
---
kn, речь идет о справочнике номенклатура?
Как написали в (3) активность справочника на сайте по умолчанию определяется пометкой на удаление.
Мы тоже завели регистр сведений "ОтображатьНаСайте". И вот когда есть запись в регистре со значением "ИСТИНА", тогда эта пометка тоже будет ставиться в "ИСТИНА".
Главное это прописать в модуле и в плане обмена.

Там сложный запрос, но через отладку получите итоговый, а потом через текстовые редакторы и конечный запрос составите и отладите. Ну или сразу ручками, если квалификация позволяет писать запрос с головы и правильно!
---
Добавлено вознаграждение за ответ.
---
Стандартно "деактивация" товара в каталоге Битрикс происходит, когда в 1С ставится отметка удаления на товаре. Я поборол это так: в товар добавил свойство "Показывать в каталоге сайта" (тип булево) и первоначально всем товарам поставил этот признак = Истина. Когда пользователь убирает галку с этого свойства, то система автоматически регистрирует, что произошли изменения в карточке товара. Следовательно товар будет в следующей выгрузке на сайт. А вот теперь надо немного подправить "Модуль интеграции с Битрикс 5" Признак активации товара ставится не по тому, стоит или не стоит пометка удаления, а по моему новому признаку "Показывать в каталоге сайта"
---
torch, А в модуле обмена наверняка тоже были внесены изменения?
---
Большое спасибо всем отвечавшим, решилось как описано в (3).
---
Подход работает, все хорошо.

Но при обновлении остатка в 1С товар вновь Активируется на сайте.
Как решили эту проблему?
---
А может кто подскажет более конкретно что нужно в модуле подправить? Или готовый текст сбросит? А то увы самый важный вопрос остался неясным((.
---
Общий модуль "Б_ПроцедурыИФункцииВыгрузкиДанныхНаСайт"

```1c
    Функция СформироватьВременныеТаблицыПоИнформацииОТоварахПакета(...
    ...
    ТекстЗапроса = "ВЫБРАТЬ РАЗРЕШЕННЫЕ
    | Номенклатура.Ссылка КАК Номенклатура
    |ПОМЕСТИТЬ ВремНоменклатураОтбор
    ...
    | ВремНоменклатураОтбораИкомплектов.Номенклатура.Набор КАК Набор,
    | ВремНоменклатураОтбораИкомплектов.Комплектующая КАК ЭтоКомплектующая,
    // ++ {
    | ВремНоменклатураОтбораИкомплектов.Номенклатура.ksm_ПоказыватьВКаталогеСайта КАК ПоказыватьВКаталогеСайта
    // ++ }
    |ПОМЕСТИТЬ ВремНоменклатура
    |ИЗ
    ...
    КонецФункции

    Процедура ВыгрузитьТоварыXDTO(....
    ...
    Для каждого ТекТовар из ТзнТоваров Цикл
    ...
    // ++ {
    //XDTOТовар.ПометкаУдаления = XMLСтрока(ТекТовар.ПометкаУдаления);
    XDTOТовар.ПометкаУдаления = XMLСтрока(Не ТекТовар.ПоказыватьВКаталогеСайта);
    // ++ }
    ...
    КонецЦикла;
    ...
    КонецПроцедуры
```
---
По-моему основные алгоритмы "Модуль интеграции с Битрикс 5" заложены в двух общих модулях, которые прописываются в конфигурацию при установке Битрикса, названия начинаются на "Б_...чего-то-там". Именно в этих модулях и надо менять
---
Интересный способ - в этом случае тоже получается что выгружать надо все товары Папки, сейчас выгружаю только с ценой и наличием на складе и основным изображением.А торговые предложения при деактивации товара при этом деактивируются?
---
Как раз в этом случае и НЕ НАДО ВЫГРУЖАТЬ ВСЕ ТОВАРЫ, т.к. будут выгружать только изменения (включить/выключить активацию товаров). Торговые предложения аналогично
---
Еще нюанс по торговым предложениям, допустим были в наличии размеры 36,37,38, потом остались только 36, нужно чтобы 37,38 не отображались, даже крестиком и при фильтре.
---
такого добиваемся только предварительной чисткой каталога Битрикс в-ручную перед выгрузкой из 1с
---
По поводу размеров 36, 37, 38... Я бы сделал так. В модуле регистра ОстаткиТоваров при записи можно сделать проверку: если (было <=0, а стало >0,) или (было >0, а стало <=0) то надо просто перезаписать карточку соответствующего товара, чтобы она попала в следующий обмен, а при выгрузке карточки товара выгружать все характеристики (36, 37, 38) с отметками показвать/не показывать в зависимости от остатков товара по эти характеристикам
---
У меня главный критерий - делать "полную выгрузку" как можно реже. Очень долгая процедура...
---
torch, идея понятна, буду пробовать, спасибо. Может кто еще что посоветует?
Может можно послать запрос из 1с на деактивацию или удаления раздела?
---
Там есть готовая настройка
Что делать с товарами, отсутствующими в файле импорта:
Что делать с группами, отсутствующими в файле импорта:
http://ваш-сайт.ru/bitrix/admin/1c_admin.php?lang=ru
но сам я для себя решил делать доп обработку после обмена, написал скрипт, подсунул к обмену.
---
Там есть готовая настройка
Что делать с товарами, отсутствующими в файле импорта:
Что делать с группами, отсутствующими в файле импорта:

не работает , стоит деактивировать. товара не в выгрузке, на сайте он с нулевым остатком стоит активным, так как был выгружен ранее