Цель. Научиться создавать http сервисы на платформе 1С: Предприятие 8.
План обучения:
Подготовка объектов метаданных для сервиса.
- Создадим чистую базу данных.
- Добавим в базу данных справочник «Номенклатура»
- Добавим реквизиты в справочник «Номенклатура»
- Добавим регистр сведений «Штрих коды»
- Добавим измерения и ресурсы в регистр сведений «Штрих коды»
- Добавить общий модуль «Общего назначения»
- В общем модуле создадим функцию, которая вернет JSON строку с нашими данными
- Запустим платформу 1С: Предприятие 8 в режиме «предприятие» и заполним данными справочник «Номенклатура» и регистр сведений «Штрих коды»
Создание http сервиса:
- Открываем дерево метаданных ветка «Общие» - «HTTP-сервисы». Позиционируемся на объекте «HTTP-сервисы»
- Добавляем новый сервис.
- Закладка «Основные» поле «Имя». Задаем имя. Имя может быть любым. Желательно чтобы имя сервиса отражало его суть.
- Закладка «Основные» поле «Корневой URL». Необходимо задать имя корневого url.
- Закладка «Шаблоны URL». Добавляем новый шаблон. Задаем ему имя. Имя может быть любым. Желательно, чтобы имя отражало предназначение шаблона.
- В шаблоне добавляем метод. В данном методе будем программный код шаблона.
Публикация http сервиса:
- ВАЖНО, НА ВАШЕМ КОМПЬЮТЕРЕ УЖЕ ДОЛЖЕН БЫТЬ УСТАНОВЛЕН ВЕБ СЕРВЕР (APACHE (2.2 ИЛИ 2.4) ИЛИ ISS)
- Запускаем конфигуратор 1С: Предприятия 8 в режиме «Запуск от имени администратора»
- Главное меню Администрирование – Публикация на веб-сервере
- Закладка «Основные» поле имя. Необходимо задать имя. Имя должно быть сформировано по правилу формирования имен переменных. Имя не должно содержать русских букв.
- Закладка «Основные» поле «Каталог». Создаем на жестком диске каталог (например www) и указываем к нему путь. В данный каталог будет размещена публикация.
- Закладка «Основные» - закладка «HTTP сервисы». Устанавливаем флаг около нашего сервиса.
- Нажимаем кнопку «Опубликовать». Перезапускаем веб сервер.
Проверка работы http сервиса:
- Запускаем браузер.
- Прописываем в строке браузера ip адрес компьютера на котором работает веб сервис (в нашем случае это наша локальная машина)
- После этого если веб сервер запущен, мы должны увидеть в браузере соответствующее сообщение.
Если все нормально, в строке браузера прописываем путь к нашему сервису по определенному правилу и получаем результат работы сервиса.
Выполнение пунктов списка
Подготовка объектов метаданных
Создаем чистую базу данных:
Добавляем в базу данных справочник «Номенклатура»
Добавляем реквизит «Артикул» в справочник «Номенклатура»
Добавим регистр сведений «Штрихкоды»
Добавляем измерение и ресурсы в регистр сведений «Штрихкоды»
Измерение «Штрихкод» тип Строка длина Строки 100, ресурс «Номенклатура» ссылка на справочник «Номенклатура»
Добавляем общий модуль «ОбщегоНазначения»
В общем модуле напишем функцию, которая вернет JSON строку с данными
Функция ПолучитьНоменклатуру()Экспорт
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Штрихкоды.Штрихкод КАК barcode,
| Штрихкоды.Номенклатура.Код КАК cod,
| Штрихкоды.Номенклатура.Наименование КАК name,
| Штрихкоды.Номенклатура.Артикул КАК articul
|ИЗ
| РегистрСведений.Штрихкоды КАК Штрихкоды";
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();
Массив = Новый Массив;
Пока Выборка.Следующий()Цикл
Структура = Новый Структура("barcode, cod, name, articul");
ЗаполнитьЗначенияСвойств(Структура, Выборка);
Массив.Добавить(Структура);
КонецЦикла;
ЗаписьJSON = Новый ЗаписьJSON;
ЗаписьJSON.УстановитьСтроку();
ЗаписатьJSON(ЗаписьJSON, Массив);
СтрокаJSON = ЗаписьJSON.Закрыть();
Возврат СтрокаJSON;
КонецФункции
Обновим конфигурацию базы данных. Запустим программу в режиме «Предприятие». Заполним тестовыми данными справочник «Номенклатура» и регистр сведений «Штрихкоды»
Переходим к следующему пункту
Создание http сервиса
Открываем дерево метаданных ветка «Общие» - «HTTP-сервисы». Позиционируемся на объекте «HTTP-сервисы»
Добавляем новый сервис
Закладка «Основные» поле «Имя». Задаем имя. Имя может быть любым. Желательно чтобы имя сервиса отражало его суть. Закладка «Основные» поле «Корневой URL». Необходимо задать имя корневого url.
Закладка «Шаблоны URL». Добавляем новый шаблон. Задаем ему имя. Имя может быть любым. Желательно, чтобы имя отражало предназначение шаблона.
Закладка «Шаблоны URL». Добавляем новый шаблон. Задаем ему имя. Имя может быть любым. Желательно, чтобы имя отражало предназначение шаблона
В шаблоне добавляем метод. В данном методе будем программный код шаблона.
Функция ШаблонURL1ПолучитьДанныеПоНоменклатуре(Запрос)
Ответ = Новый HTTPСервисОтвет(200);
СтрокаJSON = ОбщегоНазначения.ПолучитьНоменклатуру();
Ответ.УстановитьТелоИзСтроки(СтрокаJSON);
Возврат Ответ;
КонецФункции
Публикация http сервиса
ВАЖНО, НА ВАШЕМ КОМПЬЮТЕРЕ УЖЕ ДОЛЖЕН БЫТЬ УСТАНОВЛЕН ВЕБ СЕРВЕР (APACHE (2.2 ИЛИ 2.4) ИЛИ ISS)
Запускаем конфигуратор 1С: Предприятия 8 в режиме «Запуск от имени администратора»
Главное меню Администрирование – Публикация на веб-сервере
Закладка «Основные» поле имя. Необходимо задать имя. Имя должно быть сформировано по правилу формирования имен переменных. Имя не должно содержать русских букв.
Закладка «Основные» поле «Каталог». Создаем на жестком диске каталог (например, www) и указываем к нему путь. В данный каталог будет размещена публикация.
Закладка «Основные» - закладка «HTTP сервисы». Устанавливаем флаг около нашего сервиса. Нажимаем кнопку «Опубликовать». Перезапускаем веб сервер.
Проверка работы http сервиса.
Запускаем браузер.
Прописываем в строке браузера ip адрес компьютера на котором работает веб сервис (в нашем случае это наша локальная машина)
После этого если веб сервер запущен, мы должны увидеть в браузере соответствующее сообщение.
Если все нормально, в строке браузера прописываем путь к нашему сервису по определенному правилу
Рассмотрим более подробно формирования строки запроса в строке адреса браузера
localhost/my_name/hs/products/get_product
localhost – ip адрес веб сервера. Если запускаем браузер с той же машины где установлен веб сервер то ip адрес либо localhost либо 127.0.0.1 либо 192.168.XXX.XXX
Таким образом получаем формулу по которой собираем адрес
Ip адрес / имя публикации / hs / корневой каталог / шаблон/
Видео инструкция по созданию http сервиса