Как я интегрировал 1Сv8 и Virtuemart

Публикация № 57317

Администрирование - Администрирование данных 1С - Обработка справочников

Задача: создать обмен 1Сv8 управление торговлей 10.1 и Virtuemart .

Что такое Virtuemart можно почитать тут http://www.virtuemart.ru, вкратце - это компонент интернет-магазина (каталога товаров) к известному CMS-движку Joomla.
Процедура СнятиеФлагаПустыхГрупп(Кнопка)
    СтрПодключения = "DSN=mySQL_ishop;";
    СтрПодключения = СтрПодключения+"Database=joomla;";
    СтрПодключения = СтрПодключения+"Uid=Sa;";
    СтрПодключения = СтрПодключения+"Pwd=хххххххх;";
    
    Connection = Новый COMОбъект("ADODB.Connection");
    Connection.Open(СтрПодключения);
    
    RS = Новый COMОбъект("ADODB.Recordset");
    RSIDProduct= Новый COMОбъект("ADODB.Recordset");
    Command = Новый COMОбъект ("ADODB.Command");
    Command.ActiveConnection = Connection;
    
    Сообщить (Строка (ТекущаяДата()) + " обновляем флаг пустых групп");
    
    Запрос =Новый Запрос;
    Запрос.Текст ="ВЫБРАТЬ РАЗЛИЧНЫЕ
    | Номенклатура.ЭтоГруппа,
    | Номенклатура.НеОтображатьWeb,
    | Номенклатура.НеОтображатьНикогда,
    | Номенклатура.Код КАК Код,
    | Номенклатура.Артикул,
    | Номенклатура.ПустойОстаток
    |ИЗ
    | Справочник.Номенклатура КАК Номенклатура
    |ГДЕ
    | Номенклатура.ЭтоГруппа = ИСТИНА";
    // | И (Номенклатура.ПустойОстаток = ИСТИНА
    // | ИЛИ Номенклатура.НеОтображатьWeb = ИСТИНА
    // | ИЛИ Номенклатура.НеОтображатьНикогда = ИСТИНА)";
    Выборка = Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
        Если Выборка.ПустойОстаток ИЛИ Выборка.НеОтображатьНикогда ИЛИ Выборка.НеОтображатьWEB Тогда
            АпдейтГрупп = "UPD ATE jos_vm_category SET category_publish='N' WHERE category_description='"+Выборка.Код+"'" ;
        Иначе
            АпдейтГрупп = "UPD ATE jos_vm_category SET category_publish='Y' WHERE category_description='"+Выборка.Код+"'" ;
        КонецЕсли;
        Command.CommandText = АпдейтГрупп;
        Command.CommandType = 1;
        Попытка
            РекордСет = Command.Execute();
        Исключение
            Сообщить (ОписаниеОшибки());
        КонецПопытки;
        
    КонецЦикла;
    
КонецПроцедуры

Процедура КнопкаВыполнитьНажатие(Кнопка)
    СтрПодключения = "DSN=mySQL_ishop;";
    СтрПодключения = СтрПодключения+"Database=joomla;";
    СтрПодключения = СтрПодключения+"Uid=Sa;";
    СтрПодключения = СтрПодключения+"Pwd=ххххххх;";
    
    Connection = Новый COMОбъект("ADODB.Connection");
    Connection.Open(СтрПодключения);
    
    RS = Новый COMОбъект("ADODB.Recordset");
    RSIDProduct= Новый COMОбъект("ADODB.Recordset");
    Command = Новый COMОбъект ("ADODB.Command");
    Command.ActiveConnection = Connection;
    // выберем запросом все группы товаров
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | Номенклатура.Ссылка,
    | Номенклатура.ПометкаУдаления,
    | Номенклатура.Предопределенный,
    | Номенклатура.Родитель,
    | Номенклатура.ЭтоГруппа,
    | Номенклатура.Код,
    | Номенклатура.Наименование,
    | Номенклатура.НеОтображатьWeb,
    | Номенклатура.НеОтображатьНикогда,
    | Номенклатура.Артикул,
    | Номенклатура.ПустойОстаток
    |ИЗ
    | Справочник.Номенклатура КАК Номенклатура
    |ГДЕ
    | Номенклатура.ЭтоГруппа = ИСТИНА";
    // | И Номенклатура.Родитель = &Родитель";
    // Запрос.УстановитьПараметр("Родитель",Справочники.Номенклатура.ПустаяСсылка());
    
    Результат = Запрос.Выполнить();
    Выборка= Результат.Выбрать();
    ЭлементыФормы.Индикатор1.МинимальноеЗначение = 0;
    ЭлементыФормы.Индикатор1.МаксимальноеЗначение = Выборка.Количество();
    н=0;
    
    Пока Выборка.Следующий() Цикл
        
        н=н+1;
        // запрос существования товара в базе виртуемарта
        query = "
        |SEL ECT category_id
        |FR OM jos_vm_category WHERE category_description='"+Выборка.Код+"' limit 1";
        RSIDProduct.CursorType = 3;
        RSIDProduct.Open(query, Connection);
        
        Если RSIDProduct.EOF() И RSIDProduct.BOF() Тогда
            СтрН = СтрЗаменить(Строка(н)," ","");
            //пишем группы верхнего уровня
            // если группа имеет признак того что-бы ее не выгружать на web то отменим публикацию // необходимо для оптимизации добавить рекурсию по родительскому каталогу
            Если Выборка.НеОтображатьWeb или Выборка.НеОтображатьНикогда или Выборка.Родитель.НеОтображатьНикогда или Выборка.Родитель.НеОтображатьWeb или Выборка.ПустойОстаток
                Тогда
                query = "ins ert into jos_vm_category (vendor_id , category_name ,category_description, category_publish , category_browsepage , products_per_row , category_flypage, list_order )
                |values ('1' , '"+Выборка.НАИМЕНОВАНИЕ+"' ,'"+Выборка.Код+"', 'N', 'managed' , '1' , 'flypage.tpl', '1')";
                // иначе публикуем
            Иначе
                query = "ins ert into jos_vm_category (
                |vendor_id ,
                |category_name ,
                |category_description,
                |category_publish ,
                |category_browsepage ,
                |products_per_row ,
                |category_flypage,
                |list_order )
                |values ('1' , '"+Выборка.НАИМЕНОВАНИЕ+"' ,'"+Выборка.Код+"', 'Y', 'managed' , '1' , 'flypage.tpl', '1')";
                
            КонецЕсли;
            
            Command.CommandText = query;
            Command.CommandType = 1;
            Попытка
                RS = Command.Execute();
            Исключение
                Сообщить (ОписаниеОшибки());
                Сообщить (Выборка.Код);
                Сообщить (Формат (н,"ЧГ=0"));
                
            КонецПопытки;
            
            query = "
            |SEL ECT *
            |FR OM jos_vm_category WHERE category_description='"+Выборка.Код+"' limit 1";
            RS.Open(query, Connection);
            
            RS.MoveFirst();
            Пока RS.EOF() = 0 Цикл
                ИДГруппы = RS.Fields("category_id").Value;
                RS.MoveNext();
            КонецЦикла;
            RS.Close();
            
            query = "ins ert into jos_vm_category_xref ( `category_parent_id` , `category_child_id` )
            |values ( '"+0+"' , '"+Формат(ИДгруппы,"ЧГ=0")+"' )";
            
            Command.CommandText = query;
            Command.CommandType = 1;
            Попытка
                RS = Command.Execute();
            Исключение
                Сообщить (Выборка.Код);
                Сообщить(ОписаниеОшибки());
            КонецПопытки;
            ОбработкаПрерыванияПользователя();
            // Состояние("Обновляем группу товаров " + Выборка.Наименование);
            
        КонецЕсли;
        
        Индикатор1=н;
        RSIDProduct.Close();
        
    КонецЦикла;
    Сообщить ("обновлено " + н+ " групп");
    // обновим статус публикацию групп
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | Номенклатура.Ссылка,
    | Номенклатура.ПометкаУдаления,
    | Номенклатура.Предопределенный,
    | Номенклатура.Родитель.Код КАК КодРодителя,
    | Номенклатура.ЭтоГруппа,
    | Номенклатура.Код,
    | Номенклатура.Наименование,
    | Номенклатура.НеОтображатьWeb,
    | Номенклатура.НеОтображатьНикогда
    |ИЗ
    | Справочник.Номенклатура КАК Номенклатура
    |ГДЕ
    | Номенклатура.ЭтоГруппа = ИСТИНА
    | И (НЕ Номенклатура.Родитель = &Родитель)";
    
    Запрос.УстановитьПараметр("Родитель",Справочники.Номенклатура.ПустаяСсылка());
    
    Результат = Запрос.Выполнить();
    Выборка= Результат.Выбрать();
    ЭлементыФормы.Индикатор1.МинимальноеЗначение = 0;
    ЭлементыФормы.Индикатор1.МаксимальноеЗначение = Выборка.Количество();
    н=0 ;
    Сообщить ("Строим структуру...");
    
    Пока Выборка.Следующий() Цикл
        н=н+1;
        // Если не Выборка.Ссылка.Уровень=0 тогда
        
        //1 найдем айди родителя и категории в виртуамарте
        query = "
        |SEL ECT *
        |FR OM jos_vm_category WHERE category_description='"+Выборка.КодРодителя+"' limit 1";
        RS.Open(query, Connection);
        
        RS.MoveFirst();
        Пока RS.EOF() = 0 Цикл
            ИДРодителя = RS.Fields("category_id").Value;
            RS.MoveNext();
        КонецЦикла;
        RS.Close();
        
        query = "
        |SEL ECT *
        |FR OM jos_vm_category WHERE category_description='"+Выборка.Код+"' limit 1";
        RS.Open(query, Connection);
        Попытка
            RS.MoveFirst();
        Исключение
            Сообщить (Выборка.Код);
        КонецПопытки;
        Пока RS.EOF() = 0 Цикл
            ИДГруппы = RS.Fields("category_id").Value;
            RS.MoveNext();
        КонецЦикла;
        RS.Close();
        //найдем и завалим запись в категории
        query = "delete fr om jos_vm_category_xref where category_child_id='"+Формат(ИДгруппы,"ЧГ=0")+"'";
        
        Command.CommandText = query;
        Command.CommandType = 1;
        Попытка
            RS = Command.Execute();
        Исключение
            Сообщить (Выборка.Код);
            Сообщить(ОписаниеОшибки());
        КонецПопытки;
        // добавим запись в категорию
        
        query = "ins ert into jos_vm_category_xref ( category_parent_id , category_child_id)
        |values ( '"+Формат(ИДРодителя,"ЧГ=0")+"' , '"+Формат(ИДгруппы,"ЧГ=0")+"' )";
        
        Command.CommandText = query;
        Command.CommandType = 1;
        Попытка
            RS = Command.Execute();
        Исключение
            Сообщить (Выборка.Код);
            Сообщить(ОписаниеОшибки());
        КонецПопытки;
        Индикатор1=н;
        // КонецЕсли;
        
    КонецЦикла;
    
    Сообщить ("обновлена структура " + н+ " групп");
    
    // RS.Close();
    Connection.Close();
КонецПроцедуры

Процедура ОсновныеДействияФормыОчистьТАблицыSQL(Кнопка)
    СтрПодключения = "DSN=mySQL_ishop;";
    СтрПодключения = СтрПодключения+"Database=joomla;";
    СтрПодключения = СтрПодключения+"Uid=Sa;";
    СтрПодключения = СтрПодключения+"Pwd=ххххххх;";
    
    Connection = Новый COMОбъект("ADODB.Connection");
    Connection.Open(СтрПодключения);
    
    RS = Новый COMОбъект("ADODB.Recordset");
    Command = Новый COMОбъект ("ADODB.Command");
    Command.ActiveConnection = Connection;
    Command = Новый COMОбъект ("ADODB.Command");
    Command.ActiveConnection = Connection;
    
    query ="
    |DELETE FR OM jos_vm_category";
    Command.CommandText = query;
    Command.CommandType = 1;
    RS = Command.Execute();
    
    query ="
    |DELETE FR OM jos_vm_category_xref";
    Command.CommandText = query;
    Command.CommandType = 1;
    RS = Command.Execute();
    
    query ="
    |DELETE FR OM jos_vm_product";
    Command.CommandText = query;
    Command.CommandType = 1;
    RS = Command.Execute();
    query ="
    |DELETE FR OM jos_vm_product_category_xref";
    Command.CommandText = query;
    Command.CommandType = 1;
    RS = Command.Execute();
    
    query ="
    |DELETE FR OM jos_vm_product_price";
    Command.CommandText = query;
    Command.CommandType = 1;
    RS = Command.Execute();
    // RS.Close();
    Connection.Close();
    
КонецПроцедуры

Процедура ОсновныеДействияФормыОбновитьТовары(Кнопка)
    Сообщить (Строка (ТекущаяДата()) + " обновляем группы товаров...");
    КнопкаВыполнитьНажатие(1);
    
    СтрПодключения = "DSN=mySQL_ishop;";
    СтрПодключения = СтрПодключения+"Database=joomla;";
    СтрПодключения = СтрПодключения+"Uid=Sa;";
    СтрПодключения = СтрПодключения+"Pwd=ххххххх;";
    
    Connection = Новый COMОбъект("ADODB.Connection");
    Connection.Open(СтрПодключения);
    
    RS = Новый COMОбъект("ADODB.Recordset");
    RSIDProduct = Новый COMОбъект("ADODB.Recordset");
    Command = Новый COMОбъект ("ADODB.Command");
    Command.ActiveConnection = Connection;
    Склад = Константы.СкладРозница.Получить();
    Сообщить (Строка (ТекущаяДата()) + " распубликовываем отсутсвующие товары");
    Запрос = Новый Запрос;
    Запрос.Текст ="ВЫБРАТЬ
    | ОстаткиТоваровКомпанииОстатки.КоличествоОстаток КАК Остаток,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Артикул КАК Артикул,
    | ЕСТЬNULL(ЕСТЬNULL(ОстаткиТоваровКомпанииОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0), 0) КАК ДоступноеКоличество,
    | ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0) КАК Заказы
    |ИЗ
    | РегистрНакопления.ОстаткиТоваровКомпании.Остатки(&КонецДня, СкладКомпании = &Склад) КАК ОстаткиТоваровКомпанииОстатки
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонецДня, ) КАК ЗаказыПокупателейОстатки
    | ПО ОстаткиТоваровКомпанииОстатки.Номенклатура = ЗаказыПокупателейОстатки.Номенклатура
    |ГДЕ
    | ОстаткиТоваровКомпанииОстатки.Заказ = &ПустойЗаказ
    | И ЕСТЬNULL(ЕСТЬNULL(ОстаткиТоваровКомпанииОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0), 0) > 0
    | И (НЕ ОстаткиТоваровКомпанииОстатки.Номенклатура.WebЦенаУпр = 0)
    | И (НЕ ОстаткиТоваровКомпанииОстатки.Номенклатура.WebЦенаУпр2 = 0)";
    
    Запрос.УстановитьПараметр("ПустойЗаказ", Документы.ЗаказПокупателя.ПустаяСсылка());
    
    Запрос.УстановитьПараметр("Склад",Склад );
    Запрос.УстановитьПараметр("КонецДня",КонецДня (ТекущаяДата()));
    // Запрос.УстановитьПараметр("Артикул",Артикул);
    
    ТЗостатоков = Запрос.Выполнить().Выгрузить();
    // ТЗостатоков.ВыбратьСтроку();
    query = "
    |SEL ECT product_sku, product_id
    |FR OM jos_vm_product";
    RS.Open(query, Connection);
    
    Если (НЕ RS.EOF()) И (НЕ RS.BOF()) Тогда
        RS.MoveFirst();
        Пока RS.EOF() = 0 Цикл
            Артикул = RS.Fields("product_sku").Value;
            ПродуктИД = RS.Fields("product_id").Value;
            // Если Выборка.Количество()= 0 Тогда
            Если ТЗостатоков.Найти(Артикул,"Артикул")= Неопределено Тогда
                АпдейтВиртмарта = "UPD ATE jos_vm_product SET product_in_stock= '0',product_publish='N' WHERE product_sku='"+Артикул+"'" ;
                
                Command.CommandText = АпдейтВиртмарта;
                Command.CommandType = 1;
                Попытка
                    РекордСет = Command.Execute();
                Исключение
                    Сообщить (ОписаниеОшибки());
                КонецПопытки;
            КонецЕсли;
            RS.MoveNext();
        КонецЦикла;
    КонецЕсли;
    RS.Close();
    
    //** модуль обновление цен
    Сообщить (Строка (ТекущаяДата()) + " начинаем обновление цен на сайте...");
    
    Запрос = Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ
    | ОстаткиТоваровКомпанииОстатки.КоличествоОстаток КАК Остаток,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура КАК Номенклатура,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Код КАК Код,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Артикул КАК Артикул,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Наименование КАК Наименование,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Родитель.Код КАК РодительКОД,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Родитель.Артикул КАК РодительАртикул,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.WebЦенаУпр КАК WEbЦЕнаУПР,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.WebЦенаУпр2 КАК WEbЦЕнаУПР2,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.НеВыводитьНаСайт КАК НеВыводитьНаСайт,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Родитель.НеОтображатьWeb КАК НеОтображатьWeb,
    | ОстаткиТоваровКомпанииОстатки.Номенклатура.Родитель.НеОтображатьНикогда КАК НеОтображатьНикогда,
    | ЕСТЬNULL(ЕСТЬNULL(ОстаткиТоваровКомпанииОстатки.КоличествоОстаток, 0) - ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0), 0) КАК ДоступноеКоличество,
    | ЕСТЬNULL(ЗаказыПокупателейОстатки.КоличествоОстаток, 0) КАК Заказы
    |ИЗ
    | РегистрНакопления.ОстаткиТоваровКомпании.Остатки(&КонецДня, СкладКомпании = &Склад) КАК ОстаткиТоваровКомпанииОстатки
    | ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.ЗаказыПокупателей.Остатки(&КонецДня, ) КАК ЗаказыПокупателейОстатки
    | ПО ОстаткиТоваровКомпанииОстатки.Номенклатура = ЗаказыПокупателейОстатки.Номенклатура
    |ГДЕ
    | ОстаткиТоваровКомпанииОстатки.КоличествоОстаток > 0
    | И ОстаткиТоваровКомпанииОстатки.Заказ = &ПустойЗаказ
    | И (НЕ ОстаткиТоваровКомпанииОстатки.Номенклатура.WebЦенаУпр = 0)
    | И (НЕ ОстаткиТоваровКомпанииОстатки.Номенклатура.WebЦенаУпр2 = 0)";
    Запрос.УстановитьПараметр("ПустойЗаказ", Документы.ЗаказПокупателя.ПустаяСсылка());
    Запрос.УстановитьПараметр("Склад", Справочники.СкладыКомпании.НайтиПоКоду("00002"));
    Запрос.УстановитьПараметр("КонецДня",КонецДня(ТекущаяДата()));
    Результат = Запрос.Выполнить();
    Выборка = Результат.Выбрать();
    ЭлементыФормы.Индикатор1.МинимальноеЗначение = 0;
    ЭлементыФормы.Индикатор1.МаксимальноеЗначение = Выборка.Количество();
    н=0 ;
    ЗапросКурса = Новый Запрос;
    ЗапросКурса.Текст = "ВЫБРАТЬ
    | КурсыВалютСрезПоследних.Курс
    |ИЗ
    | РегистрСведений.КурсыВалют.СрезПоследних(&ТекущаяДата, ) КАК КурсыВалютСрезПоследних
    |ГДЕ
    | КурсыВалютСрезПоследних.Валюта = &Валюта";
    ЗапросКурса.УстановитьПараметр("Валюта", Константы.ВалютаУправленческогоУчетаКомпании.Получить());
    ЗапросКурса.УстановитьПараметр("ТекущаяДата",КонецДня(ТекущаяДата()));
    ВыборкаКурса = ЗапросКурса.Выполнить().Выбрать();
    
    Пока ВыборкаКурса.Следующий() Цикл
        Курс = ВыборкаКурса.Курс;       
    КонецЦикла;
    
    Пока Выборка.Следующий() Цикл
        н=н+1;
        
        // Если Выборка.ДоступноеКоличество < 0 Тогда ДОступноеКоличество=0; Иначе ДОступноеКоличество=Выборка.ДоступноеКоличество; КонецЕсли;
        
        ДОступноеКоличество=Выборка.ДоступноеКоличество;
        // Сообщить (Выборка.Номенклатура.Наименование + " " + ДОступноеКоличество);
        флагсуществования=Ложь;
        // убираем непорядочные символы
        Наименование = СтрЗаменить(Выборка.Наименование,"'"," "); //уберем символ '
        // запрос существования товара в базе виртуемарта
        query = "
        |SEL ECT *
        |FR OM jos_vm_product WHERE product_sku='"+Выборка.Артикул+"' limit 1";
        
        RSIDProduct.Open(query, Connection);       
        
        Если RSIDProduct.EOF() И RSIDProduct.BOF() Тогда
            
            // Если Выборка.НеОтображатьНикогда = NULL Тогда НеОтображатьНикогда=Ложь; Иначе НеОтображатьНикогда=ИСТИНА; КонецЕсли;
            // Если Выборка.НеОтображатьНикогда = NULL Тогда НеОтображатьWeb=Ложь Иначе НеОтображатьНикогда=ИСТИНА; КонецЕсли;
            Если ПРО2 Тогда Цена = ВЫборка.WEbЦЕнаУПР2; Иначе Цена = Выборка.WEbЦЕнаУПР; КонецЕсли;
            Если Выборка.НеВыводитьНаСайт Тогда
                
                // флаги отображения на сайте
                //Если Выборка.НеВыводитьНаСайт или Выборка.НеОтображатьНикогда или Выборка.НеОтображатьWeb Тогда
                query = "ins ert into jos_vm_product ( vendor_id , product_parent_id , product_sku , product_s_desc , product_publish , product_special , product_discount_id , product_name , product_unit , quantity_options, product_order_levels, product_in_stock, product_sales,product_url )
                |values ( '1', '0', '"+Выборка.Артикул+"', '"+наименование+"', 'N', 'N', '0', '"+наименование+"', 'шт.', 'none,0,0,1', '0,0','"+Формат (ДОступноеКоличество, "ЧГ=0")+"','"+Формат (Цена*Курс,"ЧГ=0")+"','http://catalog.sunrise.ru/descriptionPage.aspx?a="+Выборка.Артикул+"')";
            Иначе
                query = "ins ert into jos_vm_product ( vendor_id , product_parent_id , product_sku , product_s_desc , product_publish , product_special , product_discount_id , product_name , product_unit , quantity_options, product_order_levels, product_in_stock, product_sales, product_url )
                |values ( '1', '0', '"+Выборка.Артикул+"', '"+наименование+"', 'Y', 'N', '0', '"+наименование+"', 'шт.', 'none,0,0,1', '0,0','"+Формат (ДОступноеКоличество, "ЧГ=0")+"','"+Формат (Цена*Курс,"ЧГ=0")+"','http://catalog.sunrise.ru/descriptionPage.aspx?a="+Выборка.Артикул+"')";
            КонецЕсли;
            // запишем номенклатуру
            // Сообщить (query);
            Command.CommandText = query;
            Command.CommandType = 1;
            Попытка
                RS = Command.Execute();
            Исключение
                Сообщить (ОписаниеОшибки());
            КонецПопытки;
            RSIDProduct.Close();
            флагсуществования =Ложь;
        Иначе
            
            флагсуществования=Истина;
            
            // выполним пока не нужный запрос /// данные об изменении в номенклатуре
            //RSIDProduct.MoveFirst();
            //Пока RSIDProduct.EOF() = 0 Цикл
            // ИД = RSIDProduct.Fields("product_id").Value;
            // RSIDProduct.MoveNext();
            //КонецЦикла;
            
            // Если Выборка.НеОтображатьНикогда = NULL Тогда НеОтображатьНикогда=Ложь; Иначе НеОтображатьНикогда=ИСТИНА; КонецЕсли;
            // Если Выборка.НеОтображатьНикогда = NULL Тогда НеОтображатьWeb=Ложь Иначе НеОтображатьНикогда=ИСТИНА; КонецЕсли;
            Если ПРО2 Тогда Цена = ВЫборка.WEbЦЕнаУПР2; Иначе Цена = Выборка.WEbЦЕнаУПР; КонецЕсли;
            Если Выборка.НеВыводитьНаСайт Тогда
                
                query = "UPD ATE jos_vm_product SET product_sku='"+Выборка.Артикул+"', product_s_desc= '"+наименование+"',product_in_stock= '"+Формат (ДОступноеКоличество, "ЧГ=0")+"',product_sales='"+Формат (Цена*Курс,"ЧГ=0")+"',product_url='http://catalog.sunrise.ru/descriptionPage.aspx?a="+Выборка.Артикул+"',product_publish='N' WHERE product_sku='"+Выборка.Артикул+"'" ;
            Иначе
                query = "UPD ATE jos_vm_product SET product_sku='"+Выборка.Артикул+"', product_s_desc= '"+наименование+"',product_in_stock= '"+Формат (ДОступноеКоличество, "ЧГ=0")+"',product_sales='"+Формат (Цена*Курс,"ЧГ=0")+"',product_url='http://catalog.sunrise.ru/descriptionPage.aspx?a="+Выборка.Артикул+"',product_publish='Y' WHERE product_sku='"+Выборка.Артикул+"'" ;
            КонецЕсли;
            Command.CommandText = query;
            Command.CommandType = 1;
            Попытка
                RS = Command.Execute();
            Исключение
                Сообщить (ОписаниеОшибки());
            КонецПопытки;
            RSIDProduct.Close();
        КонецЕсли;
        // Попытка записать Данные о товаре
        Попытка
            // запрос ID родителя товара
            query = "
            |SEL ECT *
            |FR OM jos_vm_category WHERE category_description='"+Выборка.РодительКод+"' limit 1";
            RS.Open(query, Connection);
            RS.MoveFirst();
            Пока RS.EOF() = 0 Цикл
                ИДгрупы = RS.Fields("category_id").Value;
                RS.MoveNext();
            КонецЦикла;
            RS.Close();
            //Обновление группы
            // запрос айди товара в мускуле виртуемарта
            // Сообщить (Выборка.Номенклатура.Артикул);
            query = "
            |SEL ECT *
            |FR OM jos_vm_product WHERE product_sku='"+Выборка.Артикул+"' limit 1";
            RS.Open(query, Connection);
            
            RS.MoveFirst();
            Пока RS.EOF() = 0 Цикл
                ИД = RS.Fields("product_id").Value;
                RS.MoveNext();
            КонецЦикла;
            RS.Close();
            Если НЕ флагсуществования Тогда
                
                query = "ins ert into jos_vm_product_category_xref (category_id , product_id ) values ( '"+Формат(ИДгрупы,"ЧГ=0")+"' , '"+Формат(ИД,"ЧГ=0")+"' )";
                Command.CommandText = query;
                Command.CommandType = 1;
                RS = Command.Execute();
            Иначе
                query = "UPD ATE jos_vm_product_category_xref SET category_id='"+Формат(ИДгрупы,"ЧГ=0")+"' WHERE product_id='"+Формат(ИД,"ЧГ=0")+"'";
                
                
                // "UPD ATE jos_vm_product_category_xref SET category_id='"+Формат(ИДгрупы,"ЧГ=0")+"', product_id='"+Формат(ИД,"ЧГ=0")+"' WHERE product_id='"+Формат(ИД,"ЧГ=0")+"' " ;
                // Сообщить (query);
                Command.CommandText = query;
                Command.CommandType = 1;
                RS = Command.Execute();
            КонецЕсли;        
            
            // прибьем ценник товара
            query = "delete fr om jos_vm_product_price WHERE product_id='"+Формат(ИД,"ЧГ=0")+"' " ;
            Command.CommandText = query;
            Command.CommandType = 1;
            RS = Command.Execute();     
            
            // все поля важны !
            
            query = "insert into jos_vm_product_price (
            |product_id,
            |product_price,
            |product_currency,
            |product_price_vdate,
            |product_price_edate,
            |cdate,
            |mdate,
            |shopper_group_id,
            |price_quantity_start,
            |price_quantity_end )
            |values ( '"+Формат(ИД,"ЧГ=0")+"' , '"+Формат (Цена*Курс,"ЧГ=0")+"','RUB',0,0,1222792314,1222792314,'5',0,0 )";
            // Сообщить(Формат(ИД,"ЧГ=0"));
            Command.CommandText = query;
            Command.CommandType = 1;
            Попытка
                RS = Command.Execute();
            Исключение
                Сообщить(ОписаниеОшибки());
            КонецПопытки;
        Исключение
            Сообщить (ОписаниеОшибки());
            Сообщить (Выборка.Наименование);
        КонецПопытки;   
        
        ОбработкаПрерыванияПользователя();
        // Состояние("Обновляем товары " + Выборка.Номенклатура.Наименование);
        Индикатор1 = н;
    КонецЦикла;
    Сообщить ("Выгружено " + н + " объектов");
    Сообщить(Строка (ТекущаяДата()) + " обновление завершено");
КонецПроцедуры

Процедура Автомат ()
    ОсновныеДействияФормыОбновитьТовары(1);
КонецПроцедуры

Процедура ПустыеГруппы()
    СнятиеФлагаПустыхГрупп(1);
КонецПроцедуры

Процедура ОсновныеДействияФормыАвтомат(Кнопка)
    ЭтаФорма.ПодключитьОбработчикОжидания("автомат", 3600);
    ЭтаФорма.ПодключитьОбработчикОжидания("ПустыеГруппы", 5400);  
    ЭтаФорма.ЭлементыФормы.ОсновныеДействияФормы.Кнопки.Автомат.Доступность = Ложь;
КонецПроцедуры

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Душелов 3918 09.10.08 20:24 Сейчас в теме
Но вот "НайтиПоКоду" - не красиво!..
2. d.snissarenko 10.10.08 10:35 Сейчас в теме
Согласен, надо взять из констант, просто в тек момент режим отладки, но нужно конечно делать сразу правильно.
3. ValentinV 12.10.08 08:34 Сейчас в теме
>Вооружившись книгой г-на Михайлова, ... вестись по ODBC
У Михайлова про ODBC не нашел?
4. d.snissarenko 13.10.08 10:40 Сейчас в теме
5. Ibrogim 1167 04.03.09 15:01 Сейчас в теме
Не настаиваю, но мне кажется что свойства НеОтображатьWeb и НеОтображатьНикогда лучше было реализовать механизмом категорий...
6. d.snissarenko 24.03.09 14:33 Сейчас в теме
(5) это очень древняя и лохматая конфигурация, в ней много чего надо менять - будет переезд на ут 10.3
7. Ibrogim 1167 17.05.09 17:53 Сейчас в теме
Скажите, а каким хостингом вы пользовались? Интересуюсь потому, что обычно хостеры закрывают TCP-порт и подключиться через ODBC не представляется возможным.
8. d.snissarenko 01.06.09 07:37 Сейчас в теме
У меня свои сервера, к сожалению да, либо договор с провайдером либо свой сервер, но я думаю не стоит смотреть в сторону одбц если сервер не в локале.
9. d.snissarenko 28.06.09 17:33 Сейчас в теме
ВНИМАНИЕ!
ПРИ ПОПЫТКЕ РЕДАКТИРОВАНИЯ ТЕКСТА СТАТЬИ - редактор не захотел ее сохранять!

Кому нужен текст - пишите в личку.
10. d.snissarenko 13.07.09 22:27 Сейчас в теме
11. szhukov 139 11.08.10 12:48 Сейчас в теме
(10) А подскажите пожалуйста - как решается вопрос с кодировкой?
Я правда с 1Сv7.7 борюсь.
У VirtueMart кодировка utf8,
у 1С cp1251 как побороть, а то при выгрузке через соединение с базой в наименованиях кракозябры какие-то?
12. d.snissarenko 151 23.08.10 09:38 Сейчас в теме
(11) Через конфиг файл my.cf, там можно прописать кодировку.
13. user31 21.06.11 16:14 Сейчас в теме
Есть бесплатная разработка http://softent.ru/component/option,com_jdownloads/Itemid,14/cid,2/task,view.download/. Выгружает из 1С в VirtueMart товары, категории, описания, загрузка заказов и отслеживание статусов заказов, бесплатная версия не выгружает изображения товара.
14. ilonnaa 26.09.11 10:12 Сейчас в теме
Класс очень полезно, буду пробовать! Именно этим сейчас и занимаюсь.
15. TopUP 23.11.11 11:39 Сейчас в теме
Интересное решение, перспективное и вполне реализуемое
16. Александр 20.06.12 14:52 Сейчас в теме
Интересное решение. Пригодиться в разработке. Давно искал что нибудь подобное
17. СветикК 19.07.12 18:25 Сейчас в теме
DSN=mySQL_ishop;
скажите пожалуйста,а в этой строке вот это что:
mySQL_ishop;

???
18. Ed111111 11 19.05.13 23:09 Сейчас в теме
Все работает замечательно. Спасибо.

У вас еще есть разработки? Как с ними можно ознакомиться и протестировать?
20. IvankoSusanin 23.12.13 01:19 Сейчас в теме
а файлы можете прикрепить?

21. JediG 15.08.19 05:28 Сейчас в теме
Здравствуйте! Прошло уже 5 лет. Код, вероятно уже утратил актуальность?
Насколько реально его переработать в код для УТ10 и Virtuemart 3?
А может быть уже есть новые наработки? Закрытые решения за деньги есть. Хотелось бы открытое.
Оставьте свое сообщение

См. также

.Net в 1С. На примере использования HTTPClient, AngleSharp. Удобный парсинг сайтов с помощью библиотеки AngleSharp, в том числе с авторизацией аля JQuery с использованием CSS селекторов. Динамическая компиляция Промо

Практика программирования WEB v7.7 v8 Бесплатно (free)

Часто приходится парсить сайты, в том числе с авторизацией, перескакивая со страницы на страницу по ссылкам. Тот, кто занимался вэб программированием, знает, как удобно использовать JQuery и CSS селекторы. На .Net написана очень удобная библиотека AngleSharp. Я покажу, как с её помощью можно значительно облегчить себе труд.

10.03.2016    56166    Serginio    33    

Выгрузка HTML описаний с картинками (Base64) товаров на сайт/интернет-магазин/B2B, разберем регулярное выражение получения тега body, ПолучитьHTML, ФорматированныйДокумент

Практика программирования WEB Универсальные функции v8 v8::УФ 1cv8.cf Бесплатно (free)

Редактор HTML платформы 1С простой и очень удобный для небольших задач, однако ПолучитьHTML возвращает отдельно картинки и отдельно целиком HTML страницу со ссылкой на имена этих картинок, что неудобно для отправки в базу данных сайта/интернет-магазина/веб-приложения/B2B. Разберем на открытом коде, как решить эту проблему, напишем универсальную функцию получения значения любого тега HTML на регулярных выражениях. Бонусом - возможность редактировать теги HTML в текстовом режиме.

24.11.2020    371    SizovE    0    

Как сделать интеграцию (обмен) с интернет-магазином? Пошаговый план действий (Часть 1)

WEB v8 1cv8.cf УУ Бесплатно (free)

C 2011 года я занимаюсь интеграцией с интернет-магазинами и за это время, наверное, повидал все. Делал интеграцию как «культурными», так и «экзотическими» способами. Количество магазинов исчисляется сотнями. В этой серии статей я буду делиться своим опытом, а также выкладывать какие-то полезные наработки.

19.11.2020    1056    markbraer    0    

Чтение вложенных свойств Структур Структуры, Соответствий, свойства через точку, разбор JSON

Практика программирования WEB Интеграция Универсальные функции v8 Бесплатно (free)

JSON: {user.device.type} - как получить значение {type}? А если вложенность значительно глубже? Как проверить, что оно заполнено или удалить его - всё это в публикации с открытым кодом и даже без рекурсии. Бонусом разбор дерева значений - ДанныеФормыЭлементДерева, СтрокаДереваЗначений.

17.11.2020    939    SizovE    2    

Online телефонный справочник из 1С: Зарплата и управление персоналом Промо

WEB Управление персоналом (HRM) Управление персоналом (HRM) v8 ЗУП3.x Россия Бесплатно (free)

В интернете представлено много реализаций online телефонных справочников организаций. Есть справочники, которые использует для хранения информации базу Active Directory (LDAP), есть справочники, которые реализованы с использованием СУБД (например, MySQL). Но я не нашел справочника, который использует информацию из базы 1С. Далее я рассмотрю данную разработку.

10.03.2017    26081    ruha    14    

Web Dashboard (мобильная и десктопная версия): оптимальная схема организации взаимодействия с зоопарком систем

WEB v8 Бесплатно (free)

Задача: из множества систем (1С:ERP, 1C:CRM, Кронос:WMS, 1С:Розница, 1С:УПП...) оперативно и онлайн осуществлять мониторинг на телефоне/десктопе/планшете/телевизоре бизнес-аналитику в дашборде для директора. Рассмотрим в статье, как правильно интегрировать между собой все базы, какие для этого инструменты использовать.

10.11.2020    1509    SizovE    2    

Отладка модуля ДиадокПро

WEB v8 1cv8.cf Бесплатно (free)

В обработке ДиадокПро все дополнительные модули встроены во внешние обработки, которые хранятся в макетах. Это усложняет процесс самостоятельной интеграции, так как теряется возможность попасть в них в режиме отладки. Но не всё так страшно, поэтому ниже инструкция)

30.10.2020    1128    Максим-777    8    

Обмен с сайтом посредством Post-запроса, json

WEB v8 1cv8.cf Бесплатно (free)

Задача - передавать на сайт объекты с наименованием и уникальным идентификатором (УИ), которые изменяются в 1С. Также нужно сохранять историю отправленных пакетов.

29.10.2020    3421    John_d    26    

Кэширование COM-соединения. Три способа Промо

Практика программирования Перенос данных из 1С7.7 в 1C8.X Внешние источники данных WEB v8 Россия Бесплатно (free)

Статья о трех способах кэширования COM-соединения в 1С:Предприятии 8.x.

11.04.2013    41665    YPermitin    41    

Структура обработки загрузки номенклатуры поставщика с примерами и комментариями (часть 1)

Внешние источники данных v8 УНФ Бесплатно (free)

В статье опишу вариант обработки для загрузки номенклатуры поставщика, блок загрузки групп и их состыковки.

12.10.2020    620    malikov_pro    0    

Организация HTTP публикации каталога товаров используя PostgREST

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу порядок установки настройки и использования PostgREST на примере организации каталога товаров.

05.10.2020    657    malikov_pro    2    

Интеграционная прослойка(middleware) на Golang. Часть 5 - Обмен с 1С через HTTP-сервисы платформы

WEB v8 Бесплатно (free)

В этой статье научим прослойку отправлять данные в 1С, для этого используем HTTP-сервисы платформы. Обменяемся данными с новым справочником Клиенты. Но главное создадим HTTP-сервис для получения сообщений из очереди RabbitMQ.

28.09.2020    773    dmitry-irk38    4    

Заготовка для загрузки файлов по ftp Промо

WEB Перенос данных из 1C8 в 1C8 v8 1cv8.cf Бесплатно (free)

3 процедуры и 1 макет

03.06.2013    30590    anig99    6    

Отладка http сервиса

WEB v8 Бесплатно (free)

При разработке http сервиса возникает ситуация, а как протестировать http сервис? Создали мы сервис, настроили шаблоны, передали, если нужно параметры, открываем браузер заполняем строку подключения и БАХ, ошибка. Что делать?

23.09.2020    2071    hpi    10    

Учимся создавать http сервисы (часть вторая). Передача параметра в http сервис

WEB v8 1cv8.cf Бесплатно (free)

Пошаговое руководство по созданию http-сервиса (часть вторая). Передача параметра в http сервис.

22.09.2020    4455    hpi    6    

Организация данных и вариант обработки для организации обмена с сайтом

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант организации данных и обработки для обмена с сайтом.

22.09.2020    1080    malikov_pro    4    

Перенос данных из учетных программ Парус в конфигурации 1С Промо

Внешние источники данных v7.7 v8 БП2.0 ЗУП2.5 ЗКБУ БГУ 1С7:Бух 1С7:ЗиК 1С7:ББУ Россия БУ Госбюджет Бесплатно (free)

Статья посвящена анализу процессов переноса данных из учетных программ Парус в конфигурации 1С.

05.11.2012    51925    sklowsky    16    

Формирование списка документов и скачивание печатной формы документа через веб-сайт с использованием HTTP-сервиса, плюс особенности авторизации

Практика программирования Обмен данными 1С WEB v8 1cv8.cf Бесплатно (free)

В статье показан пример, как реализовать формирование списка документов клиента/пользователя по коду, а затем скачать его (документа) печатную форму по ссылке

18.09.2020    835    R_o_n_n_y    3    

Формирование HTTP запроса формата multipart/form-data с двоичными данными, используя ПотокВПамяти

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант формирования запроса

11.09.2020    2661    malikov_pro    11    

Ферма приложений на Kubernetes

WEB v8 Бесплатно (free)

При эксплуатации большого количества информационных систем 1С, предоставляющих интернет-сервисы, возникают проблемы, связанные с зависимостью от производительности и стабильности веб-сервера. Как объединить отдельно стоящие веб-сервера с помощью платформы Kubernetes для централизованного мониторинга всех опубликованных интернет-сервисов на конференции Infostart Event 2019 Inception рассказал программист компании BIA Technologies Владимир Кирбаба.

24.08.2020    1092    ComboBoy    0    

Сканируем без сканера или MXL to JPG Промо

Внешние источники данных Универсальные функции Печатные формы документов v8 1cv8.cf Бесплатно (free)

Хотите конвертировать документы в формат изображения менее чем за минуту, не имея сканера? Тогда эта статья для вас.

24.05.2012    34247    shakmaev    47    

Использование шаблонного процессора для формирования HTML страниц

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу использование шаблонного процессора Handlebars запущенного на Node.js

24.08.2020    1484    malikov_pro    26    

Загрузка или обновление файла на яндекс диске через rest-api

Практика программирования Файловые протоколы обмена, FTP WEB v8 Бесплатно (free)

Коллеги, в данной публикации я хочу поделиться кодом, с помощью которого можно загрузить файл на яндекс диск или обновить существующий.

12.08.2020    1944    pavelpribytkin96    10    

Самый простой парсинг и обработка веб-страниц в 1С

WEB Универсальные функции v8 1cv8.cf Бесплатно (free)

Рассмотрим самый простой парсинг веб-страниц средствами платформы 1С и еще некоторые полезные приемы работы с веб-страницами.

07.08.2020    5437    YPermitin    18    

Загрузка или обновление файла на гугл диске

Практика программирования Файловые протоколы обмена, FTP WEB v8 1cv8.cf Бесплатно (free)

Коллеги, в данной публикации я хочу поделиться кодом, с помощью которого можно загрузить файл на гугл диск или обновить существующий.

06.08.2020    1384    pavelpribytkin96    6    

Загрузка данных из Algoritm-S в конфигурацию "Бухгалтерия предприятия 3.0 (3.0.79.21) "

Розничная торговля Внешние источники данных v8 БП3.0 Розничная и сетевая торговля (FMCG) Фармацевтика, аптеки Россия Бесплатно (free)

В статье представлен шаблон обработки для загрузки некоторых данных из программы Algoritm-S в конфигурацию "Бухгалтерия предприятия 3.0 (3.0.79.21)

04.08.2020    1253    RPGrigorev    0    

Использование Yandex Translate (Яндекс.Переводчик)

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант подключения и использования Yandex Translate.

08.07.2020    3019    malikov_pro    8    

Интеграции с сервером SQL. Быстро и просто

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Решаем вопросы экспорта/импорта данных в базы отличного от 1С происхождения.

06.07.2020    2135    Infector    4    

Когда хотим знать IP клиента...

WEB v8 Бесплатно (free)

В процессе разработки web приложения на 1С, и это не шутка))), а пожелание заказчика, возникла ситуации когда понадобилось знать, с какого IP подключался клиент.

03.07.2020    4097    IMihalev    10    

Ограничение доступа к HTTP публикациям 1С сервера используя NGINX

WEB v8 1cv8.cf Бесплатно (free)

В статье опишу вариант ограничения доступа к HTTP публикациям 1С сервера используя NGINX.

02.07.2020    6650    malikov_pro    2    

Структура обработки загрузки цен и остатков поставщика с примерами и комментариями

Внешние источники данных WEB v8 1cv8.cf Россия Бесплатно (free)

В статье опишу структуру обработки по загрузке цен и остатков от поставщика с примерами.

27.06.2020    1725    malikov_pro    0    

Вариант использования документа "Операция по Яндекс.Кассе" для других сервисов по оплате через интернет

WEB v8 1cv8.cf Россия Бесплатно (free)

В статье рассмотрю организацию эквайринга в УТ 11.4 и доработки для создания заказов на оплату к стороннему сервису, как пример Сбербанк.

24.06.2020    1304    malikov_pro    3    

Работа с AliExpress через API

WEB v8 Бесплатно (free)

В публикации опишу подход работы с API AliExpress и примеры кода.

23.06.2020    4465    malikov_pro    19    

Диадок. Подключаемый модуль. Отладка

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Небольшой пример, как работать с подключаемым модулем Диадок (для изменения УПД перед выгрузкой на сайт Диадок.). Отладка подключаемого модуля, если не смогли подключить стандартную отладку.

17.06.2020    4763    John_d    8    

История создания успешной системы чат-ботов на 1С

WEB v8 Бесплатно (free)

Использование чат-ботов в мессенджерах позволяет автоматизировать многие сложные бизнес-процессы путем диалога с системой через виртуального собеседника. О том, как создать универсальную систему ботов с бэкендом на 1С, работающую в Telegram, Viber и Facebook Messenger одновременно, на конференции Infostart Event 2019 Inception рассказал программист-фрилансер Константин Гейнрих.

21.05.2020    7660    CyberCerber    15    

Парсинг html страниц с выводом информации через JavaScript с использованием Selenium

WEB v8 1cv8.cf Бесплатно (free)

Есть девочки как девочки, есть мальчики как мальчики, есть сайтики как сайтики, но странички их обманщики. В целях сохранить информацию, от автоматизированного сбора, многие ресурсы пытаются защитить ее. Один из таких способов - вывод информации на странице через JavaScript. При получении такой страницы в 1С, JavaScript не успевает вывести необходимые данные, и в 1с получаем практически пустую страницу. В статье приведу пример разработки, для парсинга таких страниц, без регистрации и смс.

20.05.2020    4431    platonov.e    25    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Шаг третий, WooCommerce, публикация категорий товаров

WEB v8 1cv8.cf Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции публикации категорий товаров в магазин WooCommerce, с комментариями внутри.

13.05.2020    3276    osivv    3    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Шаг второй, публикация картинок

WEB v8 Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции передачи фото из 1С, с комментариями внутри.

13.05.2020    2239    osivv    0    

Интеграция Camunda BPM и 1С

WEB Интеграция v8 Бесплатно (free)

Быстрый старт. Только практические примеры. Установка, запуск и публикация бизнес-процесса на сервере Camunda BPM. Управление бизнес-процессами из 1С при помощи Camunda REST API.

12.05.2020    3936    zhichkin    20    

Как мы загружаем данные в "Центр управления кассами Магнита"

Внешние источники данных Интеграция v8 1cv8.cf Бесплатно (free)

Статья о том, как мы делали механизм загрузки больших объемов данных в "Центр управления кассами Магнита"

08.05.2020    5162    chernenko_vv    25    

Интеграция СуперОкна7 и УНФ

Интеграция Внешние источники данных v8 УНФ Россия Бесплатно (free)

Изучаем базу данных СуперОкна7, смотрим возможности передачи и получения информации.

08.05.2020    2255    vostok1.dz    3    

Синхронизация БИТ:СКУД 8 с Parsec.Net 2.5

Интеграция Внешние источники данных v8 1cv8.cf Бесплатно (free)

Настройка синхронизации БИТ:СКУД 8 с Parsec.Net.2.5, выгрузка данных из внешней системы контроля доступа.

04.05.2020    4062    RPGrigorev    0    

Интеграция 1С и CMS WordPress посредством Rest API сайта. Первый шаг

WEB v8 Россия Бесплатно (free)

Интеграция 1С и CMS WordPress посредством функционала Rest API. Используем только язык программирования 1С и штатный функционал Rest API предоставляемый CMS, без дополнительных библиотек и плагинов. Процедуры и функции 1С с комментариями внутри.

28.04.2020    4690    osivv    23    

Выразительный Web API

WEB v8 Бесплатно (free)

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

27.04.2020    6813    nbeliaev    22    

Хранение статистики публикаций автора сообщества Инфостарт ® (мобильное приложение И ++)

Мобильная разработка WEB v8 1cv8.cf Бесплатно (free)

Инфостарт ® достаточно удобный в плане работы со своим личным кабинетом сайт. Но программисты тем и отличаются от большинства людей, что им хочется знать больше. Поэтому появилась конфигурация 1С (она же мобильное приложение 1С) для более подробного учета статистики публикаций: рейтинг, количество просмотров, количество комментариев в динамике и в разрезах.

24.04.2020    2353    capitan    15    

Интеграция УАТ с топливными сервисами

WEB v8 1cv8.cf Автомобили, автосервисы Бесплатно (free)

Интеграция конфигурации Управление автотранспортом с топливными веб-сервисами.

21.04.2020    7374    RPGrigorev    2