Использование REST web-сервисов в "1C:Предприятии 8". Личный опыт. Часть 2.

Публикация № 567034 11.12.16

Интеграция - WEB-интеграция

REST обмен данными web сервис

Запись документов и справочников.

Для записи данных в REST используются: метод POST протокола HTTP для создания новых элементов и метод PATCH HTTP для обновления существующих данных. Например, запишем в базу контрагента. Сначала устанавливаем HTTPСоединение с базой. Создаем объект HTTPЗапрос. Подготовим параметр АдресРесурса запроса:

СтрокаЗапроса = "/Base1C/odata/standard.odata/Catalog_Контрагенты";

Для PATCH вызова допишем:

Если НЕ ПустаяСтрока(ID) Тогда
     СтрокаЗапроса = СтрокаЗапроса + "(guid'" + ID + "')";
КонецЕсли;

Подготовим заголовки запроса и создадим его.

Заголовки = Новый Соответствие;
Заголовки.Вставить("Accept", "application/atom+xml,application/xml");
Заголовки.Вставить("Accept-Charset", "UTF-8");
Запрос = Новый HTTPЗапрос(СтрокаЗапроса, Заголовки);

Потом формируем текст запроса, для обоих методов он одинаков.  

ТекстЗапроса = "<?xml  version=""1.0"" encoding=""UTF-8""?>
|<entry  xmlns=""http://www.w3.org/2005/Atom""
|        xmlns:d=""http://schemas.microsoft.com/ado/2007/08/dataservices""
|        xmlns:m=""http://schemas.microsoft.com/ado/2007/08/dataservices/metadata""
|        xmlns:georss=""http://www.georss.org/georss""
|        xmlns:gml=""http://www.opengis.net/gml"">
|  <content type=""application/xml"">
|      <m:properties>"
      + ?(ПустаяСтрока(ID), "", "
|          <d:Ref_Key>" + ID + "</d:Ref_Key>")
      + ?(ПустаяСтрока(Code), "", "
|         <d:Code>" + Code + " </d:Code>") + "
|         <d:DeletionMark>false</d:DeletionMark>"
      + ?(ПустаяСтрока(Name), "", "
|         <d:Description>" + Name + "</d:Description>"
      + ?(ПустаяСтрока(INN),                             "", "
|                                             <d:ИНН>" + INN + "</d:ИНН>")
);
Если IsGroup Тогда
     ТекстЗапроса = ТекстЗапроса + "
     |         <d:IsFolder>true</d:IsFolder>
     |       </m:properties>
     |   </content>
     |</entry>                                         
     |";
Иначе
     Если ПустаяСтрока(INN) ИЛИ СтрДлина(INN)=12 Тогда
          ЮридическоеФизическоеЛицо="ФизическоеЛицо";
     Иначе
          ЮридическоеФизическоеЛицо="ЮридическоеЛицо";
     КонецЕсли;
     ТекстЗапроса = ТекстЗапроса + "
     |         <d:IsFolder>false</d:IsFolder>"
         + ?(ПустаяСтрока(FullName), "", "
     |          <d:НаименованиеПолное>" + FullName + "</d:НаименованиеПолное>")
         + ?(ПустаяСтрока(INN),                             "", "
     |          <d:ИНН>" + INN + "</d:ИНН>")
         + ?(ПустаяСтрока(KPP),                             "", "
     |          <d:КПП>" + KPP + "</d:КПП>") + "
     |          <d:ЮридическоеФизическоеЛицо>" + ЮридическоеФизическоеЛицо + "</d:ЮридическоеФизическоеЛицо>" + "
     |       </m:properties>
     |   </content>
     |</entry>                                         
     |";
КонецЕсли;


Текст запроса начинается с обязательной шапки. Дальше, в тэге <m:properties> перечисляются записываемые реквизиты. Каждый реквизит записывается тэгом "</d:название реквизита>. Реквизиты ссылочного типа после имени получают суффикс _Key. Значение типа перечисление записывается строковым представлением.

Теперь выполним HTTP запрос:

Запрос.УстановитьТелоИзСтроки(ТекстЗапроса);
Если ПустаяСтрока(ID) Тогда
     Ответ = HTTPсоединение.ВызватьHTTPМетод("POST", Запрос);        // Создаем новый элемент
Иначе
     Ответ = HTTPсоединение.ВызватьHTTPМетод("PATCH", Запрос);     // Update'им существующий
КонецЕсли;

Проанализируем ответ:

ОтветСтрокой = Ответ.ПолучитьТелоКакСтроку();
Если Ответ.КодСостояния > 299 Тогда
     ТекстОшибки = "Error, код ошибки: " + Ответ.КодСостояния + "
     |" + ОтветСтрокой;
ИначеЕсли ПустаяСтрока(ID) Тогда
    // GUID не был передан заранее, значит нужно найти в ответе и передать назад
    КолСтрок = СтрЧислоСтрок(ОтветСтрокой);
    Для НомерСтроки=1 По КолСтрок Цикл
        СтрокаАнализа = СтрПолучитьСтроку(ОтветСтрокой, НомерСтроки);
        ПозицияНачала = СтрНайти(СтрокаАнализа, "<d:Ref_Key>");
        Если ПозицияНачала > 0 Тогда
             ПозицияНачала = ПозицияНачала + 11;
             ID = Сред(СтрокаАнализа, ПозицияНачала, 36);
             Прервать;
        КонецЕсли;
     КонецЦикла;
     БулевРезФун = Истина;
     ТекстОшибки = "OK. Был создан новый элемент с GUID='" + ID + "'";
Иначе
     БулевРезФун = Истина;
     ТекстОшибки = "OK. Успешно обновлен элемент с GUID='" + ID + "'";
КонецЕсли;


Теперь документ.  Запишем платежку.

ТекстЗапроса = "<?xml  version=""1.0"" encoding=""UTF-8""?>
|<entry  xmlns=""http://www.w3.org/2005/Atom""
|        xmlns:d=""http://schemas.microsoft.com/ado/2007/08/dataservices""
|        xmlns:m=""http://schemas.microsoft.com/ado/2007/08/dataservices/metadata""
|        xmlns:georss=""http://www.georss.org/georss""
|        xmlns:gml=""http://www.opengis.net/gml"">
|  <content type=""application/xml"">
|      <m:properties>
|          <d:Ref_Key>" +GUID + "</d:Ref_Key>")
|         <d:Number>" +Number + " </d:Number>") + "
|       <d:DeletionMark>false</d:DeletionMark>
|       <d:РаспределятьОплатуАвтоматически>true</d:РаспределятьОплатуАвтоматически>
|                             <d:Организация_Key>" + OrgID + "</d:Организация_Key>
|                             <d:ВалютаДокумента_Key>" + ВалютаДокумента + "</d:ВалютаДокумента_Key>
|                             <d:Date>" + XMLСтрока(Date) + "</d:Date>
|                             <d:СуммаДокумента>" +Summa + "</d:СуммаДокумента>
|                             <d:Комментарий> Создан из мобильного клиента " + ТекущаяДата() + "</d:Комментарий>";


С реквизитами составного типа немного сложнее:

Если ЗначениеЗаполнено(Контрагент) Тогда
     ТекстЗапроса = ТекстЗапроса + "
     |                             <d:Контрагент_Type>StandardODATA.Catalog_Контрагенты</d:Контрагент_Type>                                                                            
     |       <d:Контрагент>" +Контрагент + " </d:Контрагент>";                                     
ИначеЕсли ЗначениеЗаполнено(Физлицо) Тогда
     ТекстЗапроса = ТекстЗапроса + "
     |                             <d:Контрагент_Type>StandardODATA.Catalog_ФизическиеЛица</d:Контрагент_Type>                                                                   
     |       <d:Контрагент>" + Физлицо + " </d:Контрагент>";                                         
Иначе
     ТекстОшибки = "Error - должен быть заполнен контрагент";
     Возврат БулевРезФун;
КонецЕсли;


Для реквизитов составного типа сначала задается тип записываемого значения, тэгом <d:название реквизита_Type>. Потом ему присваивается значение. Любопытно, но значение реквизита в этом случае задается без суффикса _Key.

Теперь нужно описать табличную часть документа.

ТекстЗапроса = ТекстЗапроса + "
|             <d:РасшифровкаПлатежа m:type=""Collection(StandardODATA.Document_ПоступлениеНаРасчетныйСчет_РасшифровкаПлатежа_RowType)"">

Тэг  <d:РасшифровкаПлатежа указывает имя табличной части. Тэг m:type указывает тип реквизита РасшифровкаПлатежа. Теперь в цикле опишем значения строк табличной части:

Для НомерСтроки=1 По Док. РасшифровкаПлатежа.Количество()-1 Цикл
    ТекстЗапроса = ТекстЗапроса + "
    |             <d:element m:type=""StandardODATA.Document_ПоступлениеНаРасчетныйСчет_Товары_RowType"">
    |                             <d:LineNumber>"+НомерСтроки+</d:LineNumber>
    |                             <d:КурсВзаиморасчетов>1</d:КурсВзаиморасчетов>
    |                             <d:КратностьВзаиморасчетов>1</d:КратностьВзаиморасчетов>
    |                             <d:СуммаПлатежа>" + Summa[НомерСтроки-1] + "</d:СуммаПлатежа>
    |                             <d:СуммаВзаиморасчетов>" + Summa[НомерСтроки-1] + "</d:СуммаВзаиморасчетов>
    |                             <d:СтавкаНДС>БезНДС</d:СтавкаНДС>
    |             </d:element>";
КонецЦикла;


Тэг d:element используется для описание строк табличной части. Внутри описания элемента тэг m:type указывает тип строки табличной части. Тэг d:LineNumber необходим для указания номера строки.

Закончим текст запроса.

ТекстЗапроса = ТекстЗапроса + "
|            </d:РасшифровкаПлатежа>
|       </m:properties>
|   </content>
|</entry>                                         
|";

Подготовим АдресРесурса:

СтрокаЗапроса = "/"/Base1C/odata/standard.odata/Document_ПоступлениеНаРасчетныйСчет";

и заголовки HTTP запроса:

Заголовки = Новый Соответствие;
Заголовки.Вставить("Accept", "application/atom+xml,application/xml");
Заголовки.Вставить("Accept-Charset", "UTF-8");
Заголовки.Вставить("1C_OData_DataLoadMode", Истина);


Для документов доступна запись в режиме ОбменДанными.Загрузка=Истина;

Наконец-то можно выполнить запрос:

Запрос = Новый HTTPЗапрос(СтрокаЗапроса, Заголовки);
Запрос.УстановитьТелоИзСтроки(ТекстЗапроса);
Ответ = HTTPсоединение.ОтправитьДляОбработки(Запрос);

Обработаем ответ:

ОтветСтрокой = Ответ.ПолучитьТелоКакСтроку();
КолСтрок     = СтрЧислоСтрок(ОтветСтрокой);
Если Ответ.КодСостояния > 299 Тогда
     ТекстОшибки = "Error, код ошибки: " + Ответ.КодСостояния + "
     |" + ОтветСтрокой;
     Возврат БулевРезФун;
Иначе
     Если ПустаяСтрока(Number) Тогда
          Number = " Не удалось определить № документа ";
          Для НомерСтроки=1 По КолСтрок Цикл
              СтрокаАнализа = СтрПолучитьСтроку(ОтветСтрокой, НомерСтроки);
              ПозицияКонца = СтрНайти(СтрокаАнализа,"</d:Number>");
              Если ПозицияКонца > 0 Тогда
                   ПозицияНачала = СтрНайти(СтрокаАнализа,">") + 1;
                   Number = Сред(СтрокаАнализа, ПозицияНачала, ПозицияКонца - ПозицияНачала);
              КонецЕсли;
           КонецЦикла;
      КонецЕсли;
      БулевРезФун = Истина;                                            
      ТекстОшибки = "OK. Успешно создано поступление на расчетный счет с номером='" + Number + "'";
КонецЕсли;


Заключение.

Итак, для чего нужны такие хлопоты? Главный и огромный плюс REST - быстродействие. Тесты на живых данных показали, по сравнению с привычными SOUP сервисами REST отрабатывали в 3-10 раз быстрее. Ради такого прироста можно помучиться и перетерпеть все неудобства REST.

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. kiv1c 779 12.12.16 10:56 Сейчас в теме
хмм, а как вы тестировали? В данном случае вы в REST уже отправляете готовый элемент справочника в виде xml, никакой сложной обработки.
если в веб-сервисе не писать никакой логики, а только с помощью десериализации из xml (по-моему с помощью СериализаторXDTO.ПрочитатьXML) создать элемент справочника, то откуда берется такая большая разница по скорости в 3-10 раз?
2. Fragster 1119 12.12.16 12:36 Сейчас в теме
Формирование XML через конкатенацию - отвратительно. Можно очень просто сломать.
speshuric; sergpogo; charushkin; +3 Ответить
3. Dorosh 172 12.12.16 14:03 Сейчас в теме
(2) Согласен, но деваться некуда, другого способа нет. Еще один минус в сторону REST.
4. Fragster 1119 12.12.16 15:44 Сейчас в теме
(3) начиная от ЗаписьXML и заканчивая СериализаторXDTO
charushkin; +1 Ответить
5. Dorosh 172 12.12.16 19:15 Сейчас в теме
(4) И как с их помощью можно составить текст запроса для REST?
6. charushkin 79 13.12.16 10:33 Сейчас в теме
(5) Полагаю, как то так (накидал пример на коленке):
Запись = Новый ЗаписьXML;
Запись.УстановитьСтроку("UTF-8");

Запись.ЗаписатьОбъявлениеXML();

Запись.ЗаписатьНачалоЭлемента("entry");
Запись.ЗаписатьАтрибут("xmlns"			, "http://www.w3.org/2005/Atom");
Запись.ЗаписатьАтрибут("xmlns:d"		, "http://schemas.microsoft.com/ado/2007/08/dataservices");
Запись.ЗаписатьАтрибут("xmlns:m"		, "http://schemas.microsoft.com/ado/2007/08/dataservices/metadata");
Запись.ЗаписатьАтрибут("xmlns:georss"	, "http://www.georss.org/georss");
Запись.ЗаписатьАтрибут("xmlns:gml"		, "http://www.opengis.net/gml");

Запись.ЗаписатьНачалоЭлемента("content");
Запись.ЗаписатьАтрибут("type", "application/xml");

Запись.ЗаписатьНачалоЭлемента("m:properties");

	Запись.ЗаписатьНачалоЭлемента("d:Ref_Key");
	Запись.ЗаписатьТекст(Строка(Новый УникальныйИдентификатор));
	Запись.ЗаписатьКонецЭлемента();

	Запись.ЗаписатьНачалоЭлемента("d:Code");
	Запись.ЗаписатьТекст("0001");
	Запись.ЗаписатьКонецЭлемента();
	
	Запись.ЗаписатьНачалоЭлемента("d:Description");
	Запись.ЗаписатьТекст("Ромашка, ООО");
	Запись.ЗаписатьКонецЭлемента();
	
	Запись.ЗаписатьНачалоЭлемента("d:INN");
	Запись.ЗаписатьТекст("1234567890");
	Запись.ЗаписатьКонецЭлемента();

Запись.ЗаписатьКонецЭлемента(); // m:properties

Запись.ЗаписатьКонецЭлемента(); // content

Запись.ЗаписатьКонецЭлемента(); // entry

СтрокаXML = Запись.Закрыть();
Показать


Получим что типа такого:
<?xml version="1.0" encoding="UTF-8"?>
<entry xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:georss="http://www.georss.org/georss" xmlns:gml="http://www.opengis.net/gml" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
	<content type="application/xml">
		<m:properties>
			<d:Ref_Key>286353be-14d9-4b5e-8bbd-3e8b641e9ef7</d:Ref_Key>
			<d:Code>0001</d:Code>
			<d:Description>Ромашка, ООО</d:Description>
			<d:INN>1234567890</d:INN>
		</m:properties>
	</content>
</entry>
Показать
7. Serginio 916 13.12.16 11:00 Сейчас в теме
(3) Вообще то ODATA создаваласть для интеграции с любыми системами. А там как раз используют объекты
Linq to ODATA
8. Трактор 1243 14.12.16 09:58 Сейчас в теме
Не SOUP, а SOAP поправь опечатку.
VasilVtoroy; GreenDragon; +2 Ответить
9. vandalsvq 1309 15.12.16 07:20 Сейчас в теме
А почему не использовать JSON? По мне так он намного проще. По времени записи наверняка xml не уступает.
fxmike; user833509; izidakg; Rif_md; shmellevich; artbear; BigB; VasilVtoroy; +8 Ответить
Оставьте свое сообщение

См. также

Публикация сборки сайта через 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Демонстрация возможного сценария развертывания сайта через 1С HTTP сервис на примере сборки react-app.

03.03.2023    1927    van_za    7    

26

Пагинация в 1С

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Те, кому приходилось делать REST API на базе HTTP-сервисов 1С, могли в какой-то момент столкнуться с необходимостью разработки методов, которые позволяли бы возвращать данные с пагинацией, т.е. последовательными порциями. В языках общего назначения пагинация реализуется простым использованием операторов OFFSET и LIMIT в SQL-запросе к базе данных. В языке запросов 1С оператора OFFSET нет, поэтому всем приходится решать эту задачу обходными способами. Один из таких обходных способов представлен в этой статье.

09.01.2023    1926    aleksei_adamov    36    

21

1С бакэнд (каталог товаров)

WEB-интеграция Платформа 1С v8.3 1С:Розница Россия Бесплатно (free)

Серверная часть на 1с8 для веб каталога. Попробую поделиться опытом, как я использовал 1С в качестве веб сервера для веб витрины.

01.01.2023    1370    aldar    5    

20

Возможности доработки выгрузки из 1С в Битрикс

WEB-интеграция Платформа 1С v8.3 Управленческий учет Бесплатно (free)

В статье собраны некоторые полезные и интересные примеры доработок выгрузки из 1С на сайты на платформе Битрикс (Возможно, что-то подойдёт и для WordPress и других платформ, принимающих типовую выгрузку на сайт из 1С). Доработки рассмотрены без привязки к конкретным конфигурациям, примеры кода взяты в основном из доработок УТ 10 и 11. Некоторые доработки требуют изменений на стороне Битрикса, некоторые укладываются в типовой функционал. Примеры взяты из личного опыта, возможно, описание где-то не полное, т.к. доработки делались в разное время. Если материал будет интересен или будут аналогичные актуальные задачи, буду стараться дополнять статью более подробным описанием и примерами.

01.11.2022    1181    de0nis    2    

12

Реализация нестандартных (для 1С) интерфейсных решений в Web-клиенте

WEB-интеграция Идеи и тренды в разработке Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Онлайн-сервисы, построенные на 1С, могут использовать все многообразие веб-технологий. О том, как спроектировать, реализовать и красиво оформить интерфейс продукта 1С, в докладе на конференции Infostart Event 2021 Post-Apocalypse рассказал CTO компании WiseAdvice Олег Филиппов.

21.10.2022    6504    comol    15    

69

Распознавание и загрузка документов в 1С Промо

Универсальная программа-обработка для распознавания любых сканов или фото первичных документов в 1С (счета-фактуры, УПД, ТТН, акты и тд). Точность распознания до 98%.

от 11 рублей

Rest API от чайника для чайников

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На написание статьи побудило чтение книги "Технологии интеграции "1С:Предприятия 8.3"" Хрусталевой Е.Ю. В первой главе там постоянно чередуются слова REST, REST-интерфейс, архитектура REST и т.д. Мне стало интересно, я начал копать, что это такое, и тема оказалась достаточно интересной.

06.06.2022    12351    zeltyr    2    

11

Загрузка выпусков подкаста Радио 1С Энтерпрайз

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Код для загрузки всех выпусков подкаста Радио 1С Энтерпрайз для оффлайн-прослушивания.

29.04.2022    1142    q_i    9    

16

УПП: Ошибка при взаимодействии с ФСС

Регламентированный учет и отчетность WEB-интеграция Платформа 1С v8.3 1С:Управление производственным предприятием Россия Бухгалтерский учет ФОМС, ЕФС Бесплатно (free)

При обновлении релиза УПП до 1.3.178.2 пользователи начали жаловаться, что не отправляются в ФСС документы "Ответ на запрос ФСС для расчета пособия" и "Сведения о застрахованных лицах, ФСС". В статье предложен вариант обхода данной ошибки, возможно, это кому-то поможет.

28.04.2022    1429    alex_bob    8    

3

Методика интеграции HTML редакторов в поле HTML документа базы 1С

WEB-интеграция Платформа 1С v8.3 Платформа 1C v8.2 Бесплатно (free)

В статье описаны критерии WYSIWYG HTML редакторов и общая картина интеграции с платформенными механизмами. На момент платформы 1С 8.3 и возможно для будущих релизов описание будет скорее всего актуально. Апробировано на 1С 8.3.20 и 8.2.12, а также на мобильной платформе 8.3.19.59.

12.04.2022    1795    user1206119    2    

13

1СПАРК РИСКИ. Сервис оценки благонадежности контрагентов. Промо

СПАРК помогает предотвратить мошенничество со стороны компаний и предпринимателей, благодаря актуальным сведениям о компаниях и системе выявления факторов риска.Сервис позволяет управлять налоговыми рисками и комплексно оценивать благонадежность контрагентов.

Создание кодогенератора для Postman

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Опишу порядок разработки кодогенератора для Postman c использованием OneScript и HTTPКоннектор.

13.03.2022    1389    malikov_pro    2    

9

Как из 1С отдать миллионы строк в BI и успеть это сделать быстро

Консолидация данных Анализ и проектирование ИТ-систем WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На онлайн-митапе «Бизнес-анализ по данным базы 1С. Интеграция c платформами BI» выступил ведущий разработчик WiseAdvice.tech Дмитрий Фурцев. Дмитрий рассказал о том, как отдать миллионы строк из 1С в платформу бизнес-аналитики и не потратить на это сутки.

14.02.2022    5084    Fudj1k    11    

22

Передача сообщений из 1С в MS Teams

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Пример организации уведомлений в канал MS Teams.

09.02.2022    2169    Alex_YAM    4    

24

Работа с 1С через протокол OData

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

В данной статье мы будем рассматривать работу с данными информационной базы через протокол OData (далее OData).

17.12.2021    30085    ProgrammingStore    26    

86

Программы для исполнения 488-ФЗ: Маркировка товаров Промо

1 января 2019 года вступил в силу ФЗ от 25.12.2018 № 488-ФЗ о единой информационной системе маркировки товаров с использованием контрольных (идентификационных) знаков, который позволяет проследить движение товара от производителя до конечного потребителя. Инфостарт предлагает подборку программ, связанных с применением 488-ФЗ и маркировкой товаров.

Подключение к HTTP-сервису с авторизацией посредством передачи клиентского SSL-сертификата

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

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

07.12.2021    10465    kholkin    12    

105

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С (Часть 2)

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Это вторая часть цикла статей, посвящённых типовому модулю интеграции 1С Предприятия и Битрикс24. Цель данной части: рассмотреть тонкости, связанные с обменом товарами и сопутствующими сущностями (спойлер - единицы измерения и свойства товаров). Также затронем некоторые нюансы связи сущностей 1С и Б24 (относящиеся не только к товарам) и их побочное влияние при переносе данных из модуля в модуль (при смене конфигурации, переустановки или обновлении модуля).

27.11.2021    8067    freegman74    16    

18

Web консоль управления сеансами 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Мы дали ему название adm1c, он позволяет посредством веб доступа удалять или смотреть на сеансы в 1С базах и при необходимости удалять их. Да и что тут такого, сказали бы, есть же консоль на win, с нее же это можно делать, и все верно, но есть пара но.

26.11.2021    3078    4ernuy    16    

28

Реализация перевода текста средствами Azure

WEB-интеграция Локализация решений Платформа 1С v8.3 Россия Бесплатно (free)

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

19.11.2021    710    user1559835    2    

4

Тонкости и подводные камни работы типового модуля интеграции Битрикс24 и 1С

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Цель статьи - указать на подводные камни и нюансы, о которых “не пишут на заборах” и которые встретились мне за время внедрения типового модуля интеграции 1С и Битрикс24. Будет интересна для людей, кто подумывает о том, чтобы настроить интеграцию, и хотят понять, с чем столкнутся. А также для тех, кто уже работает с подобным обменом, столкнулся с какими-то из описанных ситуаций и хочет понять, что пошло не так и “как жить дальше”. Постараюсь все описать “человеческим” языком с минимальной долей терминов, так как статья, надеюсь, будет полезна не только программистам.

07.11.2021    11403    freegman74    13    

35

Подборка решений для взаимодействия со ФГИС «Меркурий» Промо

С 1 июля 2019 года все компании, участвующие в обороте товаров животного происхождения, должны перейти на электронную ветеринарную сертификацию (ЭВС) через ФГИС «Меркурий». Инфостарт предлагает подборку программ, связанных с этим изменением.

Окей, Google

WEB-интеграция Платформа 1С v8.3 Россия Бесплатно (free)

Пример интеграции Google Ассистента с 1С. В основе которого лежит платформа Dialogflow CX для понимания естественного языка.

28.10.2021    2102    Soloist    6    

29

Повышение производительности веб-сервисов. Переиспользование сеансов

WEB-интеграция HighLoad оптимизация Платформа 1С v8.3 Бесплатно (free)

Повышение производительности веб-сервисов. Переиспользование сеансов. Практическая реализация.

20.10.2021    4591    sorter1    3    

47

WEB/HTTP сервисы. Базовые отличия и применение на практике

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Рассказываем о WEB и HTTP сервисах, их практическом применении, о шишках, которые мы набили, и о выводах, которые сделали. Спойлер: тех, кто дочитает статью до конца, ждет бонус от автора.

04.10.2021    27101    Neti    23    

112

Интеграция 1С с ГИИС ДМДК

WEB-интеграция Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:ERP Управление предприятием 2 Ювелирная промышленность и торговля Россия Бесплатно (free)

ГИИС ДМДК - единая информационная платформа для взаимодействия участников рынка драгоценных металлов и драгоценных камней. с 01.09.21 стартовал обязательный обмен данными с Федеральной пробирной палатой (ФПП) исключительно через ГИИС. А постепенно - с 01.01.2022 и с 01.03.2022 - все данные о продаже драгоценных металлов и камней должны быть интегрированы с ГИИС. У многих пользователей возникает вопрос как автоматизировать обмен между программой 1С и ГИИС ДМДК. В настоящей статье ВЦ Раздолье поделится своим опытом о реализации такого обмена. Автор статьи - Мордовин Антон - архитектор систем на базе 1С Внедренческого центра "Раздолье".

30.09.2021    36144    1СERP    159    

30

Программы для исполнения 54-ФЗ Промо

С 01.02.2017 контрольно-кассовая техника должна отправлять электронные версии чеков оператору фискальных данных - правила установлены в 54-ФЗ ст.2 п.2. Инфостарт предлагает подборку программ, связанных с применением 54-ФЗ, ККТ и электронных чеков.

Быстрое чтение составных http сообщений multipart/form-data

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Алгоритм быстрого разбора составного http сообщения multipart/form-data.

26.09.2021    2984    cherkasovvitalik    4    

56

Интеграция 1С с Битрикс24 через вебхуки

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Пример получения токена и http запрос к API битрикса.

15.09.2021    8926    TyurinArt    11    

31

Обмен с HTTP сервисом файлами по формату multipart/form-data

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Потребовалось отправить картинку в теле запроса в HTTP сервис методом POST, куча реализаций, но есть маленькие нюансы, если хотя бы кому-то поможет, то уже это было не напрасно.

07.09.2021    10412    ix5s    25    

67

Разработка гибридного web-приложения на 1С, возможности и ограничения

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Все чаще разработчики склоняются к использованию 1C в качестве бэкенда при разработке веб-приложений. Но благодаря встраиванию веб-клиента 1С в сайт можно получить еще больше готовой функциональности. О том, как реализовать гибридное приложение за счет связки 1С с другими веб-технологиями, рассказал разработчик компании Neti Эльдар Мингалиев.

06.09.2021    5039    Бэнни    12    

51

Работа с WEB-сервисами под HTTPS на примере прямого обмена между базами (1С – 1С) 

WEB-интеграция Платформа 1С v8.3 Россия Бесплатно (free)

Использование веб-сервисов 1С при обмене 1С – 1С позволяет быстро передавать достаточно большие объемы данных из базы-источника в базу-приемник в объектах языка 1С. Данный метод обмена может применяться при бесшовной интеграции между двумя базами 1С, но требует определенной серверной инфраструктуры (установленного и настроенного WEB-сервера).

03.09.2021    11548    UltraUnion2005    9    

35

Работа с 1С:Аналитика Промо

Онлайн-курс предусматривает изучение возможностей системы “1С:Аналитика”, которая работает как составная часть платформы “1С:Предприятие” и обеспечивает оперативный просмотр и анализ необходимых данных.

4500 рублей

Глава 2. Как я написал (собрал с инфостарта) свой парсер сайта 1С Releases

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Россия Бесплатно (free)

Путешествие начинающего программиста 1С. Глава вторая. Призываем экспертов в комментарии, оптимизируем код, ругаемся на кривые руки автора. Автор же, в свою очередь, делится своим опытом, читает умные комментарии, стремится дать те знания, за которыми он сидел ночами тем, кто их хочет найти.

31.08.2021    2806    ldmonster    9    

12

Взаимодействие с api Честный знак (Молочная продукция)

WEB-интеграция Универсальные функции Обмен с ГосИС Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Обзор основных примеров взаимодействия с Честным знаком по api для нетиповых конфигураций.

30.08.2021    13773    user5300    68    

55

Умная маршрутизация: о сложностях интеграции с 1С (часть 2)

WEB-интеграция Платформа 1С v8.3 1С:Управление торговлей 11 Бесплатно (free)

В статье будет много примеров кода с комментариями работы расширения для обмена данными УТ11.4 с Яндекс.Маршрутизацией через выгрузку/загрузку EXCEL файла.

27.08.2021    2733    greencactus    7    

18

Встраивание форм 1С на страницы сайта

WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В платформе 8.3.16 появилась возможность выводить на страницах сайта информацию из веб-клиента 1С так, что пользователь даже не заметит, что работает с платформой. Руководитель компании Айтон Михаил Пинягин на онлайн-митапе «Web-клиенты для 1С» рассказал о том, какие особенности нужно учесть при настройке встраиваемого веб-клиента, и какие возможности он дает.

27.08.2021    7920    mikepin    10    

62

Гарри Поттер и подкапотное пространство веб-клиента

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

При разработке сайтов, интегрированных с 1С через HTTP-сервисы, приходится бороться с кодировками, искать производительные интерфейсные решения и задумываться над безопасностью. В ходе онлайн-митапа «Web-клиенты для 1С» Юрий Лазаренко показал на практике, как работает магия самодельного веб-клиента и как решать проблемы, возникающие при интеграции.

20.08.2021    5532    TitanLuchs    19    

41

Видеокурс-практикум: как подготовить и написать ТЗ, ЗНР, ЧТЗ. Промо

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

3 500 рублей

Умная маршрутизация: кейс интеграции с 1С (часть 1)

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Как мы решали проблемы с доставкой в нашем интернет-магазине, внедрили новый бизнес-процесс за 3 месяца и научились меньшим количеством машин привозить больше заказов клиентам.

18.08.2021    6440    greencactus    42    

61

Сравнительный анализ вариантов интеграции между системами

Файловый обмен (TXT, XML, DBF), FTP WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

На Infostart Meetup «Интеграционные решения для 1С» выступил Сергей Наумов – руководитель центра аналитики и консалтинга WiseAdvice. Сергей поделился с коллегами кейсами из собственной практики: какие интеграционные решения остаются актуальными до сих пор, а каких приемов стоит избегать – даже в безвыходных ситуациях.

30.07.2021    4277    SergeyN    1    

10

Примеры вызова в 1С методов API до реестров открытой части Электронного кабинета налогоплательщика (Украина)

WEB-интеграция Платформа 1С v8.3 Украина Бесплатно (free)

Примеры вызова в 1С методов API до реестров открытой части Электронного кабинета налогоплательщика, Украина. Тестирование проводил на 1С:Предприятие 8.3 (8.3.10.2561).

28.07.2021    3206    Pervuy    5    

5

Пример организации HTTP сервиса на 1С: Документооборот. Источник 1С: ЕРП => Приемник 1С: Документооборот

WEB-интеграция Платформа 1С v8.3 1С:Документооборот Бесплатно (free)

Статья - пример для разработчика, как можно, не используя подсистему Интеграция с Документооборотом, управлять процессами, а именно на нашем примере прерывать выполнение процессов в 1С: Документооборот. Используя данный пример, можно организовать http-сервис в любой конфигурации 1С, которая поддерживает механизм HTTP сервисов.

13.05.2021    4373    Flover    4    

23

Настраиваем авторизацию пользователей 1С через Okta

WEB-интеграция Платформа 1С v8.3 Бесплатно (free)

Чем больше в компании различных конфигураций и сервисов, тем актуальнее становится проблема единой системы авторизации single Sign-On. Его лидером практически безоговорочно считается Okta. Но на просторах интернета очень мало информации про интеграцию 1С с Okta через протокол OpenID Connect. Что ж, настало время восполнить недостающие пробелы и перевернуть эту печальную страницу в вашей истории

30.04.2021    6327    ripreal1    16    

40