Интеграция 1С с веб-сервисами Лукойл ЛИКАРД

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

Разработка - Системная интеграция - Интеграция с WEB

Интеграция Лукойл ЛИКАРД API УАТ

Описание интерфейса взаимодействия сервиса Лукойл- ЛИКАРД с информационной системой 1С.

Доброго времени суток!
В этой статье хочу поделиться описание интерфейса взаимодействия сервиса Лукойл ЛИКАРД, с информационно системой 1С:Предприятие, а также показать пример, как можно программно получить данные из описанных веб-сервисов. Данная статья будет наиболее полезна, специалистам, занимающихся интеграцией автотранспортных конфигураций с топливными сервисами.
Описание будет приведено по шаблону:
Имя параметра, тип, обязательный (да, нет), описание
Входящие параметры - то, что будем передавать, исходящие -то, что получаем в ответ.


1. Сервисы по работе с клиентами
1.1. getClientDrivers
Сервис выполняет запрос списка зарегистрированных водителей для клиента.
Входящие параметры:
clientId INTEGER Содержит Идентификатор клиента в сервисе ЛИКАРД
Исходящие параметры:
driverId INTEGER Идентификатор водителя.
shortName STRING Короткое имя водителя.
driverSurname STRING Фамилия водителя.
driverName STRING Имя водителя.
driverMiddleName STRING Отчество водителя.
vehicleId INTEGER Идентификатор транспортного средства.
vehicleNumber STRING Номер транспортного средства.

2. Cервисы по работе с договорами
2.1 getContractInfo
Сервис выполняет запрос информации по договору.
Входящие параметры:
contractId INTEGER Да  Идентификатор договора.
Исходящие параметры:
clientId INTEGER Идентификатор клиента.
clientShortName STRING Короткое имя клиента.
contractNumber STRING Номер договора.
openDate DATE Дата вступления контракта в силу.
Выдается в формате «YYYY-MM-DD»
closeDate DATE Дата окончания договора.
Выдается в формате «YYYY-MM-DD»
amountAvailable DECIMAL Текущий баланс договора.
totalBalance DECIMAL Суммарный баланс по картам договора.
volumePrev DECIMAL Расход литров за предыдущий месяц.
volume DECIMAL Расход литров за текущий месяц.
creditLimit DECIMAL Кредитный лимит.
statusId INTEGER Код статуса договора.
status STRING Статус договора.
discountStatusCode STRING Код статуса договора по потреблению.
discountStatus STRING Значение для отображения статуса договора по потреблению.
addInfo01Code STRING Код схемы оплаты.
addInfo01 STRING Значение для отображения схемы оплаты.
addInfo02Code STRING Код региона заключения договора.
addInfo02 STRING Регион заключения договора.
addInfo03 STRING Имя схемы определения статуса по объему потребления.
addInfo03Code STRING Схема определения статуса по объему потребления.
addInfo04Code STRING Дополнительная информация. Возвращаемые данные зависят от типа договора. Возвращаемое значение не подвергается дополнительной обработке.
addInfo04 STRING Дополнительная информация. Возвращаемые данные зависят от типа договора. Возвращаемое значение не подвергается дополнительной обработке.


2.2. getContractCards
Сервис выполняет запрос списка карт по договору. В текущей реализации поддержаны двухуровневая и трехуровневая иерархии контрактов.
При задании в качестве parentId идентификатора «таксопарка» – в ответ будет получена информация по всем его картам и картам всех его «держателей карт».
При задании в качестве parentId идентификатора «держателя карт» – в ответ будет получена информация по всем его картам.
Входящие параметры:
parentId INTEGER Да  Идентификатор договора.
dateOpenIn DATE Нет  Дата выдачи карты.
Задается в формате «YYYY-MM-DDTHH:MM:SS».
Выгружаются карты, дата выдачи которых больше, чем указанная. Если поле не заполнено, выводятся все карты, дата выдачи которых больше, либо равна “01-01-1990 00:00:00”.

Исходящие параметры:
cardId INTEGER Идентификатор карты.
cardNumber STRING Номер карты.
expirationDate STRING Дата окончания срока действия карты в формате «YYMM».
driverId INTEGER Идентификатор водителя.
status STRING Статус карты.
contractStatusId INTEGER Идентификатор статуса карты.
externalStatusCode STRING Фиксированный код статуса для дополнительных проверок.
Возможные значения кода:
• CC001 – Карта активна
• CC411 - Карта аннулирована/возвращена в ЛИКАРД
• CC412 - Карта аннулирована/утеряна
• CC051 - Карта заблокирована
• CC052 - Карта заблокирована не сотрудником Ликард
CC141 - Карта не активна
activityDate DATE Дата последнего использования.
Выдается в формате «YYYY-MM-DD».
trackingStatus STRING Код расширенного статуса карты.
trackingStatusName STRING Имя расширенного статуса карты.
pinAttemptsCounter INTEGER Количество попыток ввода PIN-кода.
dateOpen DATE Дата выдачи карты.
Выдается в формате «YYYY-MM-DDTHH:MM:SS».
activationDate DATE Дата активации карты.
Выдается в формате «YYYY-MM-DDTHH:MM:SS».
mileage STRING Текущий пробег.

 

2.3 getContractBalance
Сервис выполняет запрос значений балансов договора/карты.
По умолчанию поддержан следующий перечень балансов:
• VOLUME – потребление топлива за текущий месяц,
• VOLUME_PREV – потребление топлива за предыдущий месяц,
• AVAILABLE – сумма доступных средств.

Входящие параметры:
contractId INTEGER Да  Идентификатор договора/карты
Исходящие параметры:
balanceTypeCode STRING Код типа баланса.
Возможные значения:
VOLUME,
VOLUME_PREV,
AVAILABLE.
balanceValue DECIMAL Значение баланса.
balanceCurr STRING Валюта баланса.

 

2.4 getContractTransactions
Сервис выполняет запрос транзакционного отчета по договору/карте.
Транзакции в ответе выводятся в порядке убывания transDate. Если transDate совпадает, то сортировка ведется по transId в порядке убывания.

Входящие параметры:
contractId INTEGER Да  Идентификатор договора/карты.
dateFrom DATE Да Дата, начиная с которой отбираются записи.
Задается в формате
«YYYY-MM-DDTHH:MM:SS».
dateTo DATE Да Дата, заканчивая которой отбираются записи.
Задается в формате
«YYYY-MM-DDTHH:MM:SS».
reportMode STRING Нет Возможные значения - Y/N.
Фильтр регламентирует режим отображения вторичных документов в транзакционном отчете. При установленном значении ‘Y’ отмены/корректировки/репосты отображаются одной записью вместе с оригинальным документом.
cardNumberIn STRING Нет Номер карты для фильтрации ответа.
Допускается перечисление номеров карт через запятую.
Допускается поиск по частичному совпадению, например «%54334» - отфильтруются все карты, с номером, заканчивающимся на 54334.
vehicleNumberIn STRING Нет Номер ТС/ФИО водителя для фильтрации ответа.
Допускается использование % для поиска по части ФИО/номера. Не чувствительно к регистру.
cityIn STRING Нет Название города для фильтрации ответа.
Допускается использование % для поиска по части названия. Не чувствительно к регистру.
transMatterIn STRING Нет Код схемы поставки для фильтрации ответа.
Возможные значения:
A – агентирование,
S – поставка,
E - ошибка.
countryCodeIn STRING Нет Трехзначный код страны. Поле code из ответа сервиса getCountries.
regionIdIn INTEGER Нет Название региона. Поле code из ответа сервиса getRegions.
operationTypeId INTEGER Нет Идентификатор типа операции. Значение transTypeId из ответа сервиса getTransactionsTypes
goodsGroupCodeIn STRING Нет Код товарной группы. Значение code из ответа сервиса getGoodsHandbook
minQuantity INTEGER Нет Минимальный объем (quantity) операции
maxQuantity INTEGER Нет Максимальный объем (quantity) операции
maxRowsThreshold INTEGER Нет Максимальное количество возвращаемых записей. Вернутся первые maxRowsThreshold записей. Дефолтное значение 1000.

Исходящие параметры:
transId INTEGER Идентификатор транзакции.
cardNumberOut STRING Номер карты.
vehicleNumberOut STRING Номер ТС/ФИО водителя.
cityOut STRING Название города.
transMatterOut STRING Код схемы поставки.
Возможные значения:
A - агентирование,
S - поставка,
E - ошибка.
transMatterName STRING Схема поставки (семантическое значение).
Возможные значения:
Агентирование,
Поставка,
Ошибка.
goodsGroupCodeOut STRING Код группы товаров.
goodsName STRING Наименование товара.
transDate DATE  Дата и время транзакции на терминале. Выдается в формате
«YYYY-MM-DDTHH:MM:SS».
targetContractMainNum STRING Номер контракта держателя карты.
targetContractMainMainNum STRING Иерархия контрактов держателя карты.
discountAmount DECIMAL Общая скидка для клиента.
requestCategory STRING Вид операции.
Возможные значения:
'Q' – Request (Прямая)
‘P’ – Advice (Прямая)
‘R’– Reversal (Отмена)
'J' – Adjustment (Частичная отмена)
Для сервисных транзакций и возмещения стоимости карт не является значимым
Значение будет выгружаться и для сервисных транзакций, но анализировать его не нужно
requestCategoryName STRING Вид операции (семантическое значение).
Название типа операции RequestCategory. Соответствует значению в RequestCategory:
Q – ‘Запрос’
P – ‘Прямая’
R – ‘Отмена’
J – ‘Возврат’
transType STRING Тип операции
Возможные значения:
Если requestCategory=’Q’ или ‘P’, то trans_type.name с ‘.’ на конце (trans_type.name || '.' ||)
Если requestCategory=’R’, то trans_type.name и ‘Отмена.’ с ‘. ’ между ними (trans_type.name || '. Отмена.' ||)
Если requestCategory=’J’, то trans_type.name и ‘Возврат.’ с ‘. ’ между ними (trans_type.name || '. Возврат.' ||)
quantity INTEGER Количество.
sourceAmount DECIMAL Стоимость товара для ЛИКАРД.
stelaPrice DECIMAL Цена стелы.
fxRate DECIMAL Курс конвертации.
clientCurr STRING Валюта клиента.
clientCurrName STRING Валюта клиента (семантическое значение).
targetPrice DECIMAL Отпускная цена товара в валюте клиента.
targetAmount DECIMAL Отпускная сумма товара клиенту в валюте клиента.
countryCodeOut STRING Код страны АЗС.
transCurr STRING Валюта партнера.
transCurrName STRING Валюта партнера (семантическое значение).
sourceProfit DECIMAL Выгода Ликард в валюте партнера.
partnerName STRING Партнер (поставщик).
region STRING Регион АЗС.
country STRING Страна АЗС.
streetAddress STRING Улица.
measureUnit STRING Единица измерения.
vat DOUBLE НДС в процентах.
stelaAmount DECIMAL Сумма покупки по цене стелы.
isOnline STRING Онлайн признак операции.
outletName STRING Название торговой точки.
discountPcnt DOUBLE Скидка в процентах.
mileage STRING Пробег.
regionIdOut INTEGER Идентификатор региона.
transTypeId INTEGER Идентификатор типа операции.
fxFee DECIMAL Комиссия за конвертацию в валюте клиента.
clientMainName STRING Наименование клиента контракта (держателя карт).
clientMainMainName STRING Наименование клиента головного контракта иерархии.
gasStationId INTEGER Идентификатор АЗС.
dateFrom DATE Дата, начиная с которой отбираются записи.
Выводится в формате.
«YYYY-MM-DDTHH:MM:SS».
dateTo DATE Дата transDate самого позднего документа в ответе.
Выводится в формате
«YYYY-MM-DDTHH:MM:SS».
В случае превышения максимально допустимого порога записей – дата может быть меньше даты dateTo в запросе.
maxRowsThresholdReached true/Boolean
false/Boolean Флаг превышения числа отобранных записей максимально допустимого порога.

 

3. Сервисы по работе с картами
3.1 getContractIdByNumber
Сервис выполняет запрос идентификатора карты/контракта по номеру.
Входящие параметры:
contractNumber STRING Да  Номер карты/контракта.
Исходящие параметры:
contractId INTEGER Идентификатор карты/контракта.


3.2 getCardInfo
Сервис выполняет запрос информации по карте.
В блоках lastTransactions и lastPayments по умолчанию содержатся по 5 последних платежей и транзакций за последний год. Транзакции выводятся в порядке убывания transDate. Если transDate совпадает, то сортировка ведется по transId в порядке убывания. Платежи выводятся в порядке убывания transactionDate. Если transactionDate совпадают, то сортировка ведется по paymentIdt в порядке убывания.

Входящие параметры:
contractId INTEGER Да  Идентификатор карты

Исходящие параметры:
cardNumber STRING Номер карты.
expirationDate STRING Окончание срока действия в формате «YYMM».
driverId INTEGER Идентификатор водителя.
driverSurname STRING Фамилия водителя.
driverName STRING Имя водителя.
contractBalance DECIMAL Текущий баланс карты.
volumePrev DECIMAL Расход литров за предыдущий месяц.
volume DECIMAL Расход литров за текущий месяц.
statusId INTEGER Идентификатор статуса карты.
status STRING Имя статуса карты.
externalStatusCode STRING Код дополнительного статуса карты.
activityDate DATE Дата последнего использования.
trackingStatus STRING Код расширенного статуса карты.
trackingStatusName STRING Имя расширенного статуса карты.
pinAttemptsCounter INTEGER Количество попыток ввода PIN-кода.
issueDate DATE Дата выпуска карты.
В качестве значения используется последняя дата, когда у карты менялся статус на «Карта выпущена». Выводится в формате «YYYY-MM-DD».
activationDate DATE В качестве значения используется последняя дата, когда у карты менялся статус на  «Карта активна». Выводится в формате «YYYY-MM-DD».
mileage STRING Пробег.
blockDate DATE В качестве значения используется последняя дата, когда у карты менялся статус на  «Карта заблокирована» или «Карта заблокирована (не сотрудником ЛИКАРД)». Выводится в формате «YYYY-MM-DD».
lastTransactions  Блок - Последние 5 транзакций за год.
lastPayments  Блок - Последние 5 платежей за год.

 

3.3 getCardPayments
Сервис выполняет запрос списка платежей по карте.
Если в запросе не заданы dateFrom и dateTo, то выдается информация по платежам за последние 4 месяца.
Платежи выводятся в порядке убывания transactionDate. Если transactionDate совпадают, то сортировка ведется по paymentIdt в порядке убывания.

Входящие параметры:
contractId INTEGER Да  Идентификатор карты.
dateFrom DATE Нет Начальная дата. Задается в формате «YYYY-MM-DD».
dateTo DATE Нет Конечная дата.
Задается в формате «YYYY-MM-DD».
maxRowsThreshold INTEGER Нет Максимальное количество возвращаемых записей. Вернутся первые maxRowsThreshold записей. Дефолтное значение 1000.

contractId INTEGER Идентификатор карты.
paymentId INTEGER Идентификатор платежа.
sourceRegNumber STRING Номер счета.
transactionDate DATE Дата платежа. Выводится в формате
«YYYY-MM-DDTHH:MM:SS».
transactionAmount DECIMAL Сумма.
transactionCurrency STRING Валюта.
transactionDetails STRING Описание.
paymentName STRING Название платежа.
requestCategory STRING Тип платежа.
paymentIdt STRING Номер платежа для отображения.

 

На примере сервиса getContractTransactions, который формирует отчет по транзакциям, рассмотрим как можно получить эти данные:

&НаСервере
Функция ПолучитьМассивСРезультатомЗапросаНаСайт()
	
	ЗаписьJSON = Новый ЗаписьJSON;
	ДатаНачала = НачалоДня(Объект.НачалоПериода);
	ДатаКонец = КонецДня(Объект.КонецПериода);
	ИдентификаторДоговора = Справочники.ПБ_СлужебныеПеременныеЛукойлWialon.ИдентификаторДоговораЛукойл.Значение; // заранее определил хранение идентификатора договора в справочнике служебныеПеременныеЛукойлWialon
	ПутьКФайлуSSLСертификата = Справочники.ПБ_СлужебныеПеременныеЛукойлWialon.ПутьКФайлуSSLСертификата.Значение; // заранее определил хранение пути к SSL сертификату в справочнике служебныеПеременныеЛукойлWialon, файл предоставляется ЛУКОЙЛ 
	ПарольSSLСертификата = Справочники.ПБ_СлужебныеПеременныеЛукойлWialon.ПарольSSLСертификата.Значение; // заранее определил хранение пароля от SSL сертификата в справочнике служебныеПеременныеЛукойлWialon
	
	// формируем структуру входящих параметров, обязательно должны быть все параметры, если они не нужны оставляем пустыми
	СтруктураПараметров = Новый Структура;
	СтруктураПараметров.Вставить("contractId", ИдентификаторДоговора);
	СтруктураПараметров.Вставить("dateFrom", ДатаНачала);
	СтруктураПараметров.Вставить("dateTo", ДатаКонец);
	СтруктураПараметров.Вставить("reportMode", "");
	СтруктураПараметров.Вставить("cardNumberIn", "");
	СтруктураПараметров.Вставить("vehicleNumberIn", "");
	СтруктураПараметров.Вставить("cityIn", "");
	СтруктураПараметров.Вставить("transMatterIn", "");
	СтруктураПараметров.Вставить("countryCodeIn", "");
	СтруктураПараметров.Вставить("regionIdIn", "");
	СтруктураПараметров.Вставить("operationTypeId", 35271);
	СтруктураПараметров.Вставить("goodsGroupCodeIn", "");
	СтруктураПараметров.Вставить("minQuantity", "");
	СтруктураПараметров.Вставить("maxQuantity", "");
	СтруктураПараметров.Вставить("maxRowsThreshold", "");
	
	ЗаписьJSON.УстановитьСтроку();
	ЗаписатьJSON(ЗаписьJSON, СтруктураПараметров);
	ТекстПараметровJSON = ЗаписьJSON.Закрыть();
	
	Сервер = "11.111.11.11"; // сервер
	
	ssl = Новый ЗащищенноеСоединениеOpenSSL(Новый СертификатКлиентаФайл(ПутьКФайлуSSLСертификата, ПарольSSLСертификата)); 
	Попытка			
		HTTPСоединение =  Новый HTTPСоединение(Сервер, 443 ,,,,30, ssl); 
	Исключение
		ЗаписатьСобытиеВЖурналСинхронизации("Ошибка", "Не удалось установить HTTPCоединение.");	
	КонецПопытки;
	
	Заголовки = Новый Соответствие;
	Заголовки.Вставить("Content-Type", "application/json;charset=utf-8");
	
	// здесь используем имя веб сервиса, можно сделать универсальнее, и сделать переменной 
	HTTPЗапрос = Новый HTTPЗапрос("/solar-bridge-ext/ext/json-services/getContractTransactions", Заголовки);

	HTTPЗапрос.УстановитьТелоИзСтроки(ТекстПараметровJSON, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать);

	HTTPОтвет = HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос);
	
	МассивРезультатЗапроса = Новый Массив;
	
	Попытка
		ЧтениеJSON = Новый ЧтениеJSON;
		ЧтениеJSON.УстановитьСтроку(HTTPОтвет.ПолучитьТелоКакСтроку());
		СтруктураJSON = ПрочитатьJSON(ЧтениеJSON);
		ЧтениеJSON.Закрыть();
		МассивРезультатЗапроса = СтруктураJSON.getContractTransactionsRs.getContractTransactionsPayload.contractTransactions;
	Исключение
		флгРезультатЧтенияФайла = Ложь;
		ЗаписатьСобытиеВЖурналСинхронизации("Ошибка", "Не удалось прочитать файл-ответ.");
	КонецПопытки;
	
	// получили массив с данными, полученными из сервиса
	Возврат МассивРезультатЗапроса;
	
КонецФункции

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

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

Автор запретил комментарии

См. также

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

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

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

10.03.2016    55737    Serginio    33    

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

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

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

23.09.2020    351    hpi    3    

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

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

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

22.09.2020    1772    hpi    4    

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

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

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

22.09.2020    342    malikov_pro    4    

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

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

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

10.03.2017    25849    ruha    14    

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

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

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

18.09.2020    395    R_o_n_n_y    0    

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

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

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

11.09.2020    1818    malikov_pro    11    

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

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

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

24.08.2020    810    ComboBoy    0    

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

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

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

11.04.2013    41232    YPermitin    41    

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

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

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

24.08.2020    1283    malikov_pro    26    

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

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

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

12.08.2020    1398    pavelpribytkin96    10    

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

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

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

07.08.2020    4189    YPermitin    18    

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

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

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

03.06.2013    30430    anig99    6    

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

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

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

06.08.2020    1126    pavelpribytkin96    0    

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

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

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

08.07.2020    1947    malikov_pro    6    

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

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

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

03.07.2020    2882    IMihalev    10    

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

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

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

02.07.2020    5983    malikov_pro    0    

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

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

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

27.06.2020    1548    malikov_pro    0    

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

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

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

24.06.2020    1117    malikov_pro    3    

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

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

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

23.06.2020    3275    malikov_pro    12    

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

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

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

21.05.2020    6816    CyberCerber    14    

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

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

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

20.05.2020    3321    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    2821    osivv    3    

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

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

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

13.05.2020    2070    osivv    0    

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

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

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

12.05.2020    3482    zhichkin    19    

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

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

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

28.04.2020    4147    osivv    23    

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

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

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

27.04.2020    6001    nbeliaev    22    

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

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

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

24.04.2020    2291    capitan    15    

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

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

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

21.04.2020    7185    RPGrigorev    2    

Ошибка инициализации модуля: HTTPСервис

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

Решение проблемы "Ошибка при работе с HTTP сервисом 500. Ошибка инициализации модуля".

13.04.2020    3023    VipDim    10    

COVID-19. Динамика эпидемии

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

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

01.04.2020    3258    Alejandro_V    6    

Как я собрал для себя высокопроизводительный и бесплатный облачный бекенд для 1С на PosgreSQL + PostgREST

Производительность и оптимизация (HighLoad) WEB Интеграция Мобильная разработка Администрирование веб-серверов v8 Бесплатно (free)

В этой статье я расскажу о проблемах бека для мобильных приложений или другого фронта, который требует производительности, быстрой реакции и отказоустойчивости, и как я решил это благодаря opensource проекту PostgREST и СУБД Postgre SQL 12. Проведу простой тест производительности для сравнения 1С с данным решением. Это может быть полезно всем, кто разрабатывает мобильные приложения либо фронтсайд-приложения для 1С на чем угодно - на мобильной платформе или на нативном языке или на Simple UI. И также обзор новых функций SimpleUI для связи с этим бекендом.

31.03.2020    12564    informa1555    31    

Коронавирус COVID-19. Статистика по странам

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

В связи с COVID-19 люди поделились на две категории: те, кто осознал, и те кто ЕЩЕ не осознал. Единственное наше преимущество перед Коронавирусом заключается в том, что информация распространяется быстрее, чем расползается "невидимка".

25.03.2020    6244    Evgen.Ponomarenko    60    

Получение html-кода страницы. JS из 1С

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

Получение исходника страницы, выполнение произвольного js-кода. Теперь с WebKit от 1С.

18.02.2020    6141    Yashazz    1    

Отладка конфигурации в режиме веб-клиента

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

После очередного обновления платформы при попытке запуска отладки в веб-клиенте стало появляться сообщение. Собственно, до этого момента никогда веб-клиентом особо не пользовался и необходимости в отладке как-то не возникало. Данное сообщение заставило задуматься, что не так с отладкой в веб-клиенте и как ее собственно включить? Тот самый неловкий момент, когда программа просит обратиться к администратору, а администратор - это вы.

12.02.2020    4832    gamletspb    3    

Анализ работы внешней обработки сервиса МодульКасса применительно к задаче фискализации чеков при доставке

Кассовые операции WEB v8 УТ11 Россия Бесплатно (free)

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

11.02.2020    2695    malikov_pro    0    

Вариант реализации работы с сервисом Dadata применительно к конфигурации УТ 11.4 и подобным

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

В статье описывается реализация получения данных с сервиса DaData при работе с формами справочников в конфигурации УТ 11 для дополнения информации по ФИО, ИНН, Адресу.

22.01.2020    3205    malikov_pro    7    

Двусторонний обмен с поставщиком через интернет-магазин для реализации товаров с ответственного хранения (с 01.02.2020 "Партии" не используются)

Файловые протоколы обмена, FTP WEB v8 УНФ Оптовая торговля, дистрибуция, логистика Россия УУ Бесплатно (free)

Рассмотрены реализация двустороннего обмена данными с использованием API-сервиса сайта поставщика при продаже товаров со склада ответственного хранения, алгоритм движения товаров и обмена документами на примере конфигурации 1С: УНФ у партнера, который взаимодействует с поставщиком "ООО Пауэр-Интернэшнл-шины" - одним из крупнейших в России поставщиков автомобильных шин и дисков.

16.01.2020    4381    chkurs    0    

Получение номера ВСД по идентификатору 1С: Меркурий

Производство готовой продукции (работ, услуг) WEB v8 УТ11 Пищевая промышленность Россия Бесплатно (free)

Код парсинга веб страницы для получения номера ВСД в системе Меркурий.

24.11.2019    4396    ohyen    0    

Немного о интеграции с CRM AMO

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

Немного информации о том, как настроить интеграцию с CRM AMO. Пример функций для подключения к АМО и обновления заказа. Пример на основе API авторизации.

15.11.2019    4423    xxxAndricxxx    6    

Ещё немного о ИНН и сервисе DaData

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

Об использовании сервиса dadata и немного информации о возможностях получать данные по ИНН. Возможно, кому-то будет полезным.

14.11.2019    7229    xxxAndricxxx    21    

Вариант реализации клиента SOAP на примере получения остатков из MERLION

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

В статье приведу пример клиента к сервису SOAP, функции которого принимают несколько значений типа строка или массив строк.

14.11.2019    3486    malikov_pro    0    

Разбор любого JSON-объекта в соответствующую структуру

Инструментарий разработчика WEB v8 1cv8.cf Бесплатно (free)

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

13.11.2019    9044    user665435_al.windstorm    15    

Проверка reCAPTCHA от Google на стороне HTTP-Сервиса

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

Код проверяет переданный токен reCAPTCHA от Google при вызове HTTP-Сервиса. Таким образом проверяем, отправил ли данные на наш HTTP-Сервис робот или реальный пользователь.

06.11.2019    6037    AVR    0