Версия для печати темы (https://pro1c.org.ua/index.php?s=00631a6f64adf4fe49ab174709d33a95&showtopic=52994)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ Выгрузить категорию на сайт

Автор: burza 12.07.19, 13:42

нужно выгрузить на сайт категории с родителями, только не стоковые а я сделал сам где по иерархии будет лежать товар на сайте. нужно выгрузить свои категории на сайт а не те которые есть в объекта номенклатуры.
То есть в 1С своя иерархия а на сайте другая.


где тут это подправить?

Процедура ПутьКатегории(ТекОбъект, ВерхнийКод)
    ТекУровень = ТекОбъект.Уровень();
    Если ТекУровень > УровеньКорневойКатегории Тогда
        ПутьКатегории(ТекОбъект.Родитель, ВерхнийКод);
    КонецЕсли;
    CategoryPath(ВерхнийКод, СокрЛП(ЗаменитьПрефиксы(ТекОбъект.Код)), Строка(ТекУровень - УровеньКорневойКатегории));
КонецПроцедуры

//******************************************************************************
// Рекурсивная процедура заполнения описания категорий
Процедура КатегорииТовара(ТекОбъект, ВерхнийКод, ВерхнийУровень)
    
    ТекУровень = ТекОбъект.Уровень();
    Если ТекУровень > УровеньКорневойКатегории Тогда      
        КатегорииТовара(ТекОбъект.Родитель, ВерхнийКод, ВерхнийУровень);
        КодРодителя = СокрЛП(ЗаменитьПрефиксы(ТекОбъект.Родитель.Код));
        Топ = "0";
    Иначе
        КодРодителя = "0";
        Топ = "1";
    КонецЕсли;     
    Если ТекУровень < ВерхнийУровень Тогда
        ТекКод    = СокрЛП(ЗаменитьПрефиксы(ТекОбъект.Код));
        ТекИмя    = СокрЛП(ТекОбъект.Наименование);
        Описание  = СокрЛП(ТекОбъект.Описание);
        ИмяЧПУ = СокрЛП(?(Транслитерация, Транслит(ТекИмя), ТекИмя));
        ИмяЧПУ = СтрЗаменить(СтрЗаменить(СтрЗаменить(ИмяЧПУ, " ", "-"), "+", "_"), "&", "_");
        ЧислоСтолбцов = 1;
        meta_title = "";
        meta_description = "";
        meta_keyword = "";
        seo_title =  "";
        seo_h1 =  "";    
        Category(ТекКод,
                    КодРодителя,
                    ТекИмя,
                    ИмяЧПУ,
                    СокрЛП(Описание),
                    Топ,
                    Строка(ТекущаяДата()),
                    ФорматДВ,
                    ЧислоСтолбцов,
                    meta_title,
                    meta_description,
                    meta_keyword,
                    seo_title,
                    seo_h1,
                    ?(Перезаписывать, "0", "1")
                    );                    
        Product2Category(ВерхнийКод, ТекКод, Топ);
        ПутьКатегории(ТекОбъект, ТекКод);
    КонецЕсли;    
КонецПроцедуры

Автор: burza 13.07.19, 11:38

burza @ Вчера, 14:42 * ,
Прошу помогите)

Автор: djsoul300579 24.07.19, 8:44

burza @ 13.07.19, 12:38 * ,
На мой взгляд править тут ничего не нужно smile.gif

Как происходит вызов КатегорииТовара(ТекОбъект, ВерхнийКод, ВерхнийУровень)?


Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua