# Расширение HTTPServices для конфигурации ЕМП

Расширение 1С. Базовая заготовка для реализации HTTP сервисов на базе конфигураций 1С, в частности, данное расширение создано для конфигурации "ЕМП". В данном расширении помимо конструктива и методов работы HTTP сервиса, реализован HTTP сервис API CSM, позволяющий при помощи POST запросов реализовывать поставку данных для виджета "Проверка статуса Заказа" на стороне любого сайта. 

## С чего начать?

- 1. Клонировать или скачать файлы данного репозитория.
- 2. Внимательно ознакомиться с данной инструкцией, ПРОЧЕСТЬ ЕЕ.
- 3. Пошагово выполнить подготовку и внедрение, в соответствии с рекомендациями данной инструкции.

## Содержание и описание файлов

- **README.MD** - Непосредственно этот файл, который является инструкцией и описанием всего проекта и расширения.
- **HTTPServices.cfe** - файл расширения, который нужно добавить в рабочую базу 1С ЕМП.
- **HTTPServices\emp\default.vrd** - файл настроек публикации и подключения HTTP сервиса на стороне веб сервера Apache.
- **HTTPServices\statusform** - папка с файлами виджета, которую нужно настроить и перенести на сторону каталога сайта.
- **HTTPServices\statusform\action.php** - файл обработка, производит непосредственный запрос на сторону нашего веб сервера, для связи с HTTP сервисом. В этом файле нужно указать внешний путь к опубликованному сервису.
- **HTTPServises\apache.conf** - файл-вырезка с блоком настроек на стороне веб сервера Apache, для реализации публикации HTTP сервиса во вне. То, что нужно будет добавить в свой файл конфигурации.

## Источники вдохновения, основа кода расширения, и чтиво для понимания. (ссылки)
- [Учимся создавать http-сервисы ч.1](https://infostart.ru/1c/articles/1293341/) 
- [Учимся создавать http сервисы ч.2. Передача параметра в http сервис](https://infostart.ru/1c/articles/1296740/)
- [Учимся создавать http сервис ч.3. Передача нескольких параметров в http сервис](https://infostart.ru/public/1303368/)
- [Учимся создавать http сервис ч.4. Изучение метода POST http запроса (передача текстовых данных)](https://infostart.ru/1c/articles/1307941/)
- [HTTP Сервисы: Путь к своему сервису. ч.1](https://infostart.ru/1c/articles/842751/)
- [HTTP Сервисы: Путь к своему сервису. ч.2](https://infostart.ru/1c/articles/885287/)
- [HTTP Сервисы: Путь к своему сервису. ч.3](https://infostart.ru/public/886103/)
- [HTTP Сервисы: Путь к своему сервису. ч.4](https://infostart.ru/1c/articles/893304/)
 
## Приступаем к внедрению

### Добавляем расширение в боевую конфигурацию
Расписывать данный шаг не буду, так как считаю, что исчерпывающей информации на просторах рускоязычного интернета, более чем достаточно. Скажу только то, что я предпочитаю это делать через "Конфигуратор", а кто-то это любит делать, через интерфейс конфигурации и функции Администрирования. Выбор за вами. Обозначу только то, что после добавления расширения, нужно корректно выставить галочки допусков его работы. См.скрин ниже.
![pic](./files/httservice-setup.jpg)
После перезахода пользователей в базу, расширение будет готово к работе.

### В базе добавляем отдельного пользователя 1С
Пользователь нужен с полными правами, чтоб от его имени сервис делал запросы и получал данные, которые будет далее перенаправлять на сайт. Ставим этому пользователю ХОРОШИЙ пароль и убираем его из списка авторизации. У меня для этого заведен пользователь **UserWebService** с ОЧЕНЬ длинным и сложным паролем.


Код добавляем вот так:

```
cd existing_repo
git remote add origin https://gitlab.ivcsm.ru/1c-shared/emp/emphttpservices.git
git branch -M master
git push -uf origin master
```


***