Автотесты алгоритмов по работе со сторонними http сервисами через юнит-тесты и мок сервер soapUI

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

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

Юнит тесты http-сервисы тестирование качество разработки

Полезный кейс по использованию скриптов в soapui и тестированию http-сервиса с конкретным практическим примером.

Всем здравствуйте!

Цель:

Иметь возможность без связи с http сервисом на стороне, на своей стороне держать рабочие алгоритмы по работе с различными ответами со стороны.

Так же корректно обрабатывать наши запросы к ним, но через подготовленный МОК сервер согласно описанному интерфейсу взаимодействия. (какие договоренности передачи данных по тем или иным запросам.)

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

Входные данные:

Конфигурация ERP, программа SoapUI, Мок сервер и скрипт, конфигурация "Тестирование 3.0".

Платформа 1с версии 8.3.14 и выше.

 

Кому может быть интересно:

 Тем кто в своей работе разрабатывает http сервисы или взаимодействует с другими и хотел бы их покрыть автотестами. 

 И быть в курсе работоспособности своего продукта.

 

Практическая часть

Задача.
Существует набор REST-запросов, которые мы хотим проверить.
В нашем случае это url адреса с параметрами, по котороым мы ожидаем получить определенный ответ в формате json.

Пример запроса:
/api/receipts/4b558ad8-c4dd-11ea-b84e-00d8617b0c84/?testname=Test1in1
где параметр совпадает с именем теста. (?testname=Test1in1)

Пример ответа в формате json:
 

{
    "code": "УП-34425",
    "guid": "4b558ad8-c4dd-11ea-b84e-00d8617b0c84",
    "buildingCode": "Склад основной(без ячеек)",
    "typeCode": "1",
    "expDate": "2020-07-13T00:00:00",
    "supplier": "Комплектующие",
    "notes": null,
    "transportTask": "",
    "lines": [
        {
            "productCode": "069000000009",
            "lineNumber": "ca0bda06-79ce-4494-b078-08796038e83c",
            "expQuantity": 5,
            "actQuantity": 5,
            "serial": "1112",
            "details": null,
            "prodDate": "2019-07-01T00:00:00"
        }
          {
            "productCode": "069000000004",
            "lineNumber": "10f05205-a1fb-40b5-85e3-49f5cda43c0e",
            "expQuantity": 1,
            "actQuantity":1,
            "serial": "",
            "details": null,
           "prodDate": "0001-01-01T00:00:00"
        }
    ]
}

 

1. Настраиваем проект в SoapUI. Мы организуем механизм обработки входной строки и подбора подходящего ответа. Сам алгоритм создания простого проекта смотрите по ссылке ( //infostart.ru/1c/articles/1182541/  ),
тут мы рассмотрим как выбрать необходимый ответ.


В SoapUI у нас хранится набор заданных ответов. Для того чтобы выбрать необходимый ответ и отправить пользователю мы используем код на языке "gerkin".

Текст кода приведен ниже. Он получает параметр из url строки и находит необходимый вариант ответа и отправляет его.
 

// Match based on query parameter
def queryString = mockRequest.getRequest().getQueryString() ?: "TestName=Test1in1"

TestName =  queryString.substring(9); 
log.info "TestName: " + TestName;
 
return TestName

 

 

2. Настраиваем в Тестировании 3.0

Фреймворк "Тестирование 3.0 (более подробное описание на https://testingtool.ru/

 

Процедура создания задания в тестировании 3.0 следующая:

а) Создается новое задание и в нее последовательно добавляются три действия

б) Все действия с произвольным кодом на сервере 1С, тексты приведены ниже

 

Вот они 3 действия.

 1.  Запуск МОК сервера через набор команд.

 2.  Выполнение юнит тестов

 3.  Завершение мок сервера через килл процесса

 

1. Запуск МОК сервера через набор команд

По сути все сводится к запуску конкретного сохраненного проекта через mockservicerunner от soapui

// I) если открыт, то закроем
Сообщение = "";
PID = ПланировщикЗаданийСервер.ПолучитьЗначениеПользовательскойПеременной(Неопределено,"SoapUI MockServer");

Если НЕ PID=Неопределено Тогда
	ПланировщикЗаданийКлиентСервер.ЗавершитьПроцессЛокально(PID,Сообщение);
КонецЕсли;

// II) запустить и сохранить в параметр
Сообщение = "";
ПутьККоманде = """C:\Program Files\SmartBear\SoapUI-5.3.0\bin\mockservicerunner.bat"" ""F:\Vissarov\git\erp-tests\WebServicesUnitTests\WMS\REST-WMS-soapui-project for unittest.xml""";
PID = ПланировщикЗаданийКлиентСервер.ЗапуститьПриложениеЛокально(ПутьККоманде,Сообщение);
Если PID>0 Тогда
	ПланировщикЗаданийСервер.УстановитьЗначениеПользовательскойПеременной(Неопределено,"SoapUI MockServer",PID);
КонецЕсли;

 

2. Выполнение юнит тестов

Тут было принято решение разбить их на несколько обработок по структурным соображениям. 

По видам запросов. И последовательно их запускать из определенной папки.
Команда так и называется "Все юнит-тесты из каталога UnitTest (WMS)".

В каждом тесте заводим тестовые случаи. И при падении теста мы точно знаем какой вариант теста не сработал из пройденных.

Вот как это выглядит:

Как результат теста сравниваем полученный документ и эталонный, который предварительно был выгружен в макет через обработку СериализаторMXL.epf  (он еще известен по проекту  https://github.com/xDrivenDevelopment/xUnitFor1C Аюханова Артура).

Правда в команде мы его доработали под свои нужды и служит для генерации первоначальных данных или эталонных макетов.

// создаем эталонный документ
СозданныеДанные = СериализаторMXL.СоздатьДанныеПоТабличномуДокументу(МакетДанные);
	
ПриходныйОрдер_Эталон = СозданныеДанные.ПриходныйОрдерНаТоварыУП_00034425От13_07_202010_48_52;


// проверяем результат работы алгоритма и подготовленный эталонный документ
УтвержденияПроверкаТаблиц.ПроверитьРавенствоТаблиц(
			ПриходныйОрдер_Эталон.Товары.Выгрузить(,СтрокаНужныхКолонок),
			ПриходныйОрдерТоварыПослеОбработки);

 


    // переменные по данному тесту передаем в рабочую обработку, для того чтобы она поняла что это тестовый прогон
    // и передала в адрес запрос нужный параметр.
	ВнешняяОбработка.НастройкиОбменаWMS.Вставить("РежимТеста",Истина);
	ВнешняяОбработка.НастройкиОбменаWMS.Вставить("ИмяПроверкиЮнитТеста",ИмяПроверкиЮнитТеста);	
	
	//Поменяем путь к МОК серверу.
	//Исходный адрес вернется при откате транзакции
	СтруктураЗаписи = Новый Структура;
	СтруктураЗаписи.Вставить("Корреспондент",УзелWMS);
	СтруктураЗаписи.Вставить("WSURLВебСервиса","http://SRV-msk-test1c1.ppl.loc:8098");
	РегистрыСведений.НастройкиТранспортаОбменаДанными.ДобавитьЗапись(СтруктураЗаписи);

	ГУИД_РО = "4b558ad8-c4dd-11ea-b84e-00d8617b0c84";
	Ордер = Документы.ПриходныйОрдерНаТовары.ПолучитьСсылку(Новый УникальныйИдентификатор(ГУИД_РО));
	КлючЗапроса = "/receiptUpdated/"+ГУИД_РО;
	РезультатВыполнения = ВнешняяОбработка.ВыполнитьЮнитТест_ЗагрузкаИзWMSПоКлючОбъекта(КлючЗапроса, ТелоЗапроса);

 

//Часть кода добавленного в рабочем алгоритме для работы автотестов

	Если НастройкиОбменаWMS.РежимТеста = Истина 
		И ЗначениеЗаполнено(НастройкиОбменаWMS.ИмяПроверкиЮнитТеста) Тогда
		СтруктураПараметров.АдресРесурса = СтруктураПараметров.АдресРесурса +"/"+	
		  СтрШаблон("?%1=%2", "TestName", НастройкиОбменаWMS.ИмяПроверкиЮнитТеста);
	КонецЕсли;

// то есть получится на выходе примерно так
/api/receipts/4b558ad8-c4dd-11ea-b84e-00d8617b0c84/?TestName=Test1in1

 

3. Завершение мок сервера через килл процесса

Тут помогла статья от автора //infostart.ru/1c/articles/1014870/ Сергея Гарина. Но 1 в 1 не встали идеи.

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

Пришлось перейти на ком объект и вызов следующего метода.

Scr = Новый COMОбъект("MSScriptControl.ScriptControl");
Scr.Language = "vbscript";
Scr.AddCode("

Option Explicit
Dim objWMIService, objProcess, colProcess
Set objWMIService = GetObject(""winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2"")
Set colProcess = objWMIService.ExecQuery(""Select * from Win32_Process Where (CommandLine Like '%SoapUIMockServiceRunner%')"")
For Each objProcess in colProcess
objProcess.Terminate()
Next
");

 

Если инициализация com объекта не будет происходить, то нужно выполнить установку tsc64.dll
https://tablacus.github.io/scriptcontrol_en.html

 

По тестирование своего http есть хорошая статья:

//infostart.ru/1c/articles/1182541/

 

П.С. 
Это моя первая статья, любую критику буду стараться принимать.

Скачать файлы

Наименование Файл Версия Размер
Пример обработки юнит теста

.epf 26,63Kb
0
.epf 26,63Kb Скачать
проект в soapUI:

.xml 37,87Kb
0
.xml 37,87Kb Скачать

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

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. malikov_pro 628 02.11.20 13:16 Сейчас в теме
Тема интересна, разбираюсь с ней со стороны Postman.

"Входные данные: Конфигурация ERP, программа SoapUI, Мок сервер и скрипт, конфигурация "Тестирование 3.0"."
Желательно сразу описать что для чего используется, какую сторону тестируем.

Уточнить что MockServer идет в поставке с SoapUI и запускается с помощью java сервера, дать ссылку на документацию по использованию. С ходу накопал https://www.soapui.org/docs/soap-mocking/deploying-mock-services-as-war-files/, в связи с этим предположу что останавиливать сервис можно более гуманным спообом чем kill process.

Для тестирования нужна документация на API и план тестирования.

Не четко описаны ограничения и причины применить MockServer. "возвращал нам эталонные ответы, которые потом сравниваем у себя по факту работы алгоритма и ожидаемого, которые отражены в эталонной таблице." - как и где фиксируете эталонные ответы в работе теста?
2. dvissarov5 5 02.11.20 13:29 Сейчас в теме
(1)
1. Тестируем свою сторону
2. Про MockServer рекомендацию понял. Поправлю.
3. В том то и проблема что остановить это все дело вроде как нету более гуманного способа кроме как через интерфейс самого soapui. Да и скинул ссылку с той же проблемой из другой статьи.
4. Постарался дать более подробное описание сравнения. Если стало яснее, то здороов.

Спасибо
3. malikov_pro 628 02.11.20 13:48 Сейчас в теме
(2) "1. Тестируем свою сторону" - тестируете реализацию клиента?
на стороне тест раннера проверяете ли структуру JSON или только полное соответствие по данным? Статья по реализации работы с JSON Schema в 1С недавно вышла.

"3." Посмотрю, если найду, то напишу нормальный вариант"

"любую критику" - лучше конструктивную, однажды меня достали в статье требованием сделать продакт из примера реализации.

Сам склоняюсь к формированию mock на основании спецификации, пример https://meta.stoplight.io/docs/prism/README.md.
Моя статья по OpenAPI https://infostart.ru/1c/articles/1319857/, если интересно, то могу в следующей провести цепочку до mock сервера, но нужен относительно просто, при этом рабочий кейс. У меня было желание взаимодействие с АТС описать, но объем пока неподъемный.
4. malikov_pro 628 03.11.20 23:30 Сейчас в теме
(2) Если GET со схемой данных из OpenAPI, то можно формировать Mock с помощью Go http://igorlazarev.ru/posts/2019-02-22-swagger-mock
5. dvissarov5 5 06.11.20 11:44 Сейчас в теме
Оставьте свое сообщение

См. также

Интеграция с бонусной программой лояльности ManyBonus Промо

Управление взаимоотношениями с клиентами (СRM) Розничная торговля WEB v8 Розница УУ Абонемент ($m)

ManyBonus.com - бонусная программа лояльности на базе мессенджеров. Позволяет регистрировать клиента в программе лояльности через Telegram, Viber, VK, отправлять коды скидок в мессенджеры, получать уведомления при списании/начислении бонусных баллов, альтернатива сообщениям СМС.

3 стартмани

07.01.2021    1284    1    Anton64    0    

BIM: взаимодействие с платформой Autodesk Forge

WEB v8 Строительство Абонемент ($m)

Предлагаемый пример демонстрирует широкие возможности для взаимодействия «1С:Предприятие» с платформой Autodesk Forge и позволяет вам получить базовые представления о применения технологий информационного моделирования в строительстве. Поддерживаются все версии платформы от 8.3.12 и выше до 8.3.18.

1 стартмани

25.11.2020    10143    4    kandr    0    

Генератор маршрута по "документам отгрузки" в Google.Maps

Оптовая торговля Розничная торговля WEB v8 v8::ОУ УТ11 Россия УУ Абонемент ($m)

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

7 стартмани

08.11.2020    3054    3    quazare    16    

Чатбот WhatsApp

WEB v8 1cv8.cf Абонемент ($m)

Внешняя обработка для написания чат-бота WhatsApp

1 стартмани

21.10.2020    4492    16    ripreal1    16    

"Учет штрафов ГИБДД" с возможной загрузкой из открытых источников в интернет Расширение конфигурации 1С: Предприятие 8.3 Промо

Обработка документов WEB v8 v8::УФ 1cv8.cf Россия БУ УУ Абонемент ($m)

Расширение конфигурации Бухгалтерия предприятия, редакция 3.0 (при минимальных изменениях любой типовой конфигурации), позволяющее вести историю данных по штрафам ГИБДД для справочника транспортных средств компании. Бонусом поставляется внешняя обработка, способная загружать эти данные из открытых источников в интернет.

4 стартмани

30.12.2019    9535    12    capitan    11    

1С + react native

WEB v8 1cv8.cf Абонемент ($m)

Пример реализации клиента для 1С на react native.

1 стартмани

09.10.2020    5280    5    van_za    6    

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

WEB Практика программирования v8 1cv8.cf Абонемент ($m)

Пошаговое руководство по созданию http сервиса (часть третья). Передача нескольких параметров в http сервис, a также формирование сложных JSON строк.

1 стартмани

02.10.2020    5564    2    hpi    14    

Подключаем WhatsApp к 1С

WEB v8 1cv8.cf Абонемент ($m)

Обработка для быстрого подключения WhatsApp к любой конфигурации 1С.

1 стартмани

30.09.2020    5152    20    andrew_shamin    25    

Внешняя компонента для работы по Web-socket протоколу x32 x64 Промо

Разработка внешних компонент WEB v8 Абонемент ($m)

Кто когда-нибудь сталкивался с обменом данными по Web-Socket (wss) протоколу из 1С, тому известно, что в платформе отсутствуют данные механизмы (не путать с HTTP запросами и WebServices). Предлагается использовать внешнюю компоненту, написанную по технологии NativeAPI, для подключения и обмена с серверами из 1С-Предприятия, работающими по протоколу Web-Socket.

1 стартмани

30.03.2018    28452    33    Ditron    86    

HTTP сервисы по OpenAPI спецификациям

Практика программирования WEB v8 1cv8.cf Абонемент ($m)

Начинаем путь разработки HTTP сервисов с создания спецификаций OpenAPI. Автодокументация сервисов формата Swagger UI без зависимостей. Настройка сервисов в режиме предприятия.

1 стартмани

29.06.2020    8599    4    shmalevoz    19    

Конструктор HTTP-соединений в 1С (обычные и управляемые формы)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Иногда возникают мысли о том, чтобы прикрутить сервисы, связанные с HTTP-соединениями, в 1С. Необходимо писать обработку и анализировать результат.

1 стартмани

02.06.2020    5362    25    Denr83    0    

DaJet QL - расширяемый язык запросов

Интеграция WEB v8 Абонемент ($m)

DaJet QL поддерживает практический полный синтаксис SQL Server 2005-2016. Кроме этого это расширяемый язык запросов. Обращение к объектам СУБД выполняется в терминах метаданных 1С. Доступ к возможностям этого языка запросов реализован в виде web api сервиса. Результаты запросов возвращаются в виде JSON.

1 стартмани

20.04.2020    7873    11    zhichkin    16    

Работа с релизами 1С и договорами ИТС Промо

WEB БСП (Библиотека стандартных подсистем) v8 1cv8.cf Абонемент ($m)

Работа с релизами 1С и партнерским кабинетом.

2 стартмани

15.08.2019    15567    46    RocKeR_13    15    

Технология создания эффектных видео-инструкций посредством DevTools Protocol

Сценарное тестирование v8 Россия Абонемент ($m)

Конфигурация демонстрирует применение технологий интеграции 1C с браузером Google Chrome для создания эффектных видео-инструкций при помощи инструментов сценарного тестирования. Поддерживаются все версии платформы от 8.3.10 и выше до 8.3.17.

1 стартмани

18.04.2020    5575    4    kandr    3    

Обмен данными между OZON и 1С

Оптовая торговля WEB v8 v8::ОУ УТ11 УУ Абонемент ($m)

Данная подсистема позволяет загружать отправления «с моего склада» из OZON (в статусе «Ожидают сборки») в 1с Управление торговлей 11 по API. Так же есть возможность выгружать статусы отправлений «awaiting_deliver, т.е. Ожидает отгрузки» и «cancelled, т.е. Отменен» из 1с в OZON по API.

10 стартмани

09.04.2020    15231    154    vex2865    99    

Пример работы с Trello из 1С

WEB v8 1cv8.cf Россия УУ Абонемент ($m)

Небольшая конфигурация содержит примеры обмена с онлайн-сервисом Trello.

1 стартмани

15.02.2020    12194    45    terrorion    12    

Проверка VAT номеров Промо

WEB v8 1cv8.cf Абонемент ($m)

Обработка для вызова сервиса проверка VAT номера.

1 стартмани

26.11.2018    13704    2    wtlz    1    

Взаимодействие HTML (COM объект, WebKit) с 1С (обычные и управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования HTML (COM объект, WebKit) в 1С (8.3).

2 стартмани

18.01.2020    9012    25    Deniskinr83    0    

Google drive - менеджер файлов

WEB Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Синхронизация с гугл диском легко и просто!

10 стартмани

05.12.2019    10823    33    zykov_vitaliy    26    

Автозаполнение адреса по КЛАДР в УПП при выгрузке контрагента с портала компании (API dadata)

WEB v8 1cv8.cf Абонемент ($m)

Заведение, согласование контрагентов организовано на портале компании. Далее по web-сервису контрагенты выгружаются в УПП (юр.адрес и факт.адрес выгружаются строкой). Задача автоматизировать заполнение адреса в УПП по КЛАДР.

1 стартмани

03.12.2019    7489    1    John_d    10    

Трекинг номеров РПО в Почте России Промо

WEB Оптовая торговля Оптовая торговля v8 Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Относительно недавно Почта России стандартизировала и описала сервисы получения информации о регистрируемом почтовом отправлении (РПО). Представляю вашему вниманию конфигурацию-обертку над сервисами Почты России. Она позволяет просто (http-запросы) и без изменений конфигурации подключить сервисы отслеживания к своим информационным системам.

2 стартмани

28.03.2016    28196    38    Smaylukk    3    

Работа с Яндекс-картами в 1С (вывод меток, прокладка маршрута, отображение балуна, вывод меток в кластеры) (обычное и управляемое приложение)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Работа с Яндекс-картами в 1С (управляемое приложение). Обработка показывает, как можно найти адреса на карте Яндекс, проложить маршрут.

2 стартмани

20.11.2019    13633    127    Denr83    0    

Пример взаимодействия HTML (COM объект, WebKit) с 1С (динамический отбор) (обычные и управляемые формы)

WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования WebKit в 1С (8.3).

2 стартмани

18.11.2019    10587    13    Denr83    0    

Яндекс сервисы [Расширение]

Универсальные обработки WEB v8 1cv8.cf Абонемент ($m)

Расширение для работы с Яндекс-сервисами (предиктор,переводчик,проверка орфографии)

1 стартмани

24.10.2019    12175    10    noprogrammer    12    

Работа с картой. Кадастровый учет (Росреестр). Тематические карты Промо

WEB Рабочее место v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка для работы с картами в 1С. Получения изображения с публичной кадастровой карты России, построения тематических карт

5 стартмани

31.08.2017    19680    7    vipchep    0    

Telegram бот на 1С

WEB v8 1cv8.cf Абонемент ($m)

Telegram бот на 1С в виде внешней обработки, встраиваемой в типовые 1С 8.3.

1 стартмани

24.09.2019    17598    38    budidich    19    

Выгрузка номенклатуры в социальную сеть Вконтакте

WEB Оптовая торговля Розничная торговля Оптовая торговля Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка для быстрой и легкой выгрузки товаров Вконтакт. Так просто еще не было)))

2 стартмани

14.08.2019    16086    51    kaliuzhnyi    46    

Подключение к сайту и отправка или получение данных по API (POST, GET...) (с описанием кода)

WEB v8 1cv8.cf Абонемент ($m)

Простая обработка по отправке или получение данных с любого сервера главное знать ресурс (выполняемую функцию) и тело запроса.

1 стартмани

12.08.2019    16791    30    MaxPowerr    5    

Работа с картами 1С 4 в 1: Яндекс, Google , 2ГИС, OpenStreetMap(OpenLayers) Промо

Универсальные обработки WEB v8 1cv8.cf Абонемент ($m)

С каждым годом становится все очевидно, что использование онлайн-сервисов намного упрощает жизнь. К сожалению по картографическим сервисам условия пока жестковаты. Но, ориентируясь на будущее, я решил показать возможности API выше указанных сервисов: Инициализация карты Поиск адреса на карте с текстовым представлением Геокодинг Обратная поиск адреса по ее координатами Взаимодействие с картами - прием координат установленного на карте метки Построение маршрутов по указанным точками Кластеризация меток на карте при увеличении масштаба Теперь также поддержка тонкого и веб-клиента

1 стартмани

28.12.2012    108768    2676    Smaylukk    358    

Конфигурация для обмена данными (интеграционная шина)

Внешние источники данных WEB v8 1cv8.cf Абонемент ($m)

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

4 стартмани

08.07.2019    13931    32    miha-28    17    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    20742    78    MarkoSokolov    48    

1С и WebKit. Вариант взаимодействия

WEB v8 1cv8.cf Абонемент ($m)

В результате перехода на WebKit тип свойства Документ у поля, имеющего вид ПолеHTMLДокумента, изменился с COMОбъект на ВнешнийОбъект. Также изменилась DOM модель документа, доступная через это свойство.

2 стартмани

23.02.2019    32086    82    mi1man    57    

Пример использования REST API Яндекс Диска Промо

WEB v8 1cv8.cf Абонемент ($m)

Пример использования REST API Яндекс Диска: чтение диска, добавление каталога, загрузка файла, скачивание файлов или каталогов, удаление файлов или каталогов.

1 стартмани

26.06.2018    27204    42    MKFreeUser    15    

Строим маршруты на картах в 1С с помощью OpenStreetMap, OSRM и Leaflet

WEB v8 1cv8.cf Транспорт, автопарки, такси Абонемент ($m)

Краткая статья о том как вывести на карту (в 1С) маршруты с помощью OpenStreetMap, OSRM и Leaflet. По данной системе очень мало примеров, но так как OpenStreetMap является бесплатным сервисом и не требует никаких ключей и регистраций, и является довольно мощным механизмом, решил написать небольшую статью "как это сделать?". В первую очередь скажу, все намного проще, если вы используете последнюю версию платформы (8.3.14), где есть поддержка практически всех браузеров (IE 11, EDGE, Mozilla), но что делать если у нас не самая свежая платформа, где поддержка только IE 9?

2 стартмани

12.02.2019    28039    106    Ditron    94    

Яндекс карта в документе "Заказ клиента" на закладке "Доставка". (Расширение) УТ 11.4

Обработка документов WEB Оптовая торговля Оптовая торговля v8 УТ11 Россия УУ Абонемент ($m)

Показ яндекс карты в документе "Заказ клиента" на закладке "Доставка" и печать карты для курьера с контактными данными. (Расширение)

3 стартмани

05.02.2019    11728    12    ret    7    

Яндекс карты 2.1. Построение маршрута. Передача длины маршрута в реквизит формы

WEB v8 1cv8.cf Абонемент ($m)

Пригодится как пример использования Яндекс карты 2.1 для построения маршрута.

1 стартмани

24.01.2019    15447    78    John_d    32    

Работа с публикациями "Инфостарт" Промо

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    22977    13    RocKeR_13    16    

Веб-форма авторизации/регистрации/восстановления пароля для веб-клиента 1С с помощью HTML/CSS/PHP/HTTP-сервисов 1С

WEB v8 1cv8.cf Абонемент ($m)

Пришла в голову идея создать универсальную веб-форму входа в веб-клиент 1С на HTML/CSS/PHP/HTTP-сервисы 1С. Чтобы прямо как на нормальных сайтах. Заодно и для ознакомления с 1С с новой, для себя, стороны. Интересно было попробовать интеграцию PHP - 1С.

1 стартмани

08.11.2018    19350    26    Бэнни    21    

Загрузка чека онлайн-касс (загрузка товаров из чека)

Внешние источники данных WEB Кассовые операции Розничная торговля Кассовые операции Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка-пример, позволяет любому и из любой конфигурации загрузить информацию о товарах из чека(и не только) из почтового сообщения, отправленного из приложения ФНС проверка чеков.

2 стартмани

08.10.2018    22828    39    echo77    73    

SOAP для чайников

Обмен через XML WEB v8 1cv8.cf Абонемент ($m)

Немножко про SOAP сервис. И пример работы с подключением и получением данных по SOAP за 5 минут.

1 стартмани

05.09.2018    56377    48    dusha0020    19    

Конфигурация для просмотра публичных телеграм каналов Промо

WEB v8 Абонемент ($m)

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

1 стартмани

02.06.2018    18942    11    DO_WHILE_LOOP    7    

Класс-обработка “Работа с картами Яндекс”

Разработка внешних компонент WEB v8 Абонемент ($m)

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    27125    209    RSConsulting    17    

Чтение сжатого gzip, deflate HTTP ответа сервера. Без ВК. Уменьши время загрузки и сократи трафик в 3 раза

WEB v8 1cv8.cf Абонемент ($m)

В платформе 1С:Предприятие не реализовано штатного механизма декодирования ответа веб серверов, в которых присутствует gzip сжатие. Некоторые использовали WinHttpRequest.5.1 , кто-то писал ВК. Друзья, хватит. Вот вам решение.

1 стартмани

08.06.2018    16875    84    Malfarion    16    

Обмен файловыми базами данных через Yandex диск Промо

WEB v8 Россия Абонемент ($m)

Выполнение операций обмена с Yandex диском для файловых БД, по протоколу WebDav, в автоматическом или ручном режимах.

1 стартмани

11.06.2018    18131    7    slimper    1