Синхронизация с 1С

Для настройки синхронизации с 1С со стороны сайта, следует перейти "Модули -> Все модули -> Синхронизация с 1С".

Админка обменника 1С

1. Будет ли 1С присылать пакеты в zip формате

2. Максимальный размер присылаемого пакета за раз в байтах (2048000Б = 2000КБ = 1.95МБ).

3. Делать ли бэкап базы при выгрузке (Может заметно замедлять выгрузку или не проводить резервное копирование, если база более 50Мб. Зависит от настроек сервера.)

4. Заказы с этим статусом попадают в выгрузку заказов /exchange?type=sale&mode=query. После удачной выгрузки 1С должна подтвердить выгрузку /exchange?type=sale&mode=success чтобы эти заказы изменили статус на тот, который задан в пункте 6.

5. Если бренд приходит с выгрузкой как свойство, то можно указать его <Ид> или <Наименование>. В этом случае оно будет создаваться не как свойство, а как бренд.

Пример (блок объявления свойства):

        <Свойства>
            <Свойство>
                <Ид>d7799c34-c632-11e3-9b18-bc5ff4757ec7</Ид>
                <Наименование>Виробник</Наименование>
                <ТипЗначений>Справочник</ТипЗначений>
                <ВариантыЗначений>
                    <Справочник>
                        <ИдЗначения>372a46bb-355b-11eb-913c-855545500584</ИдЗначения>
                        <Значение>OEM</Значение>
                    </Справочник>
                </ВариантыЗначений>
            </Свойство>
        </Свойства>

6. Статус, на который заказ его меняет после выгрузки и удачного подтверждения (пункт 5). Не указывайте выгружаемый и подтверждённый одинаковыми, одни и те же заказы будут попадать в выгрузку постоянно.

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

8. При ошибках на этот e-mail будет приходить уведомление про ошибку доступа или выгрузки.

9. При активации режима отладки убирается механизм авторизации. 1С и сайт общаются без пароля и без фильтрации по IP.

10. IP адреса, которые будут разрешены для синхронизации без использования ЛОГИН ПАРОЛЬ.

11. Использование Логина и Пароля в случае отсутствия заданных ip адресов.

12. Не обновлять информацию у уже созданных товаров. Информация из выгрузки берется только при создании новых товаров. Сделано для возможности руками менять параметры товара в админке, но принимать актуальные цены и остатки.

Выгрузка продуктов

Пример файла выгрузки товаров из 1С с описанием внутри.

Пример файла выгрузки цен и остатков из 1С с описанием внутри.

Выгрузка каталога начинается с того, что система "1С:Предприятие" отправляет http-запрос следующего вида:
http://<сайт>/exchange?type=catalog&mode=checkauth.

В ответ система управления сайтом передает системе «1С:Предприятие» три строки (используется разделитель строк "\n"):

    слово "success";
    имя Cookie;
    значение Cookie.


Примечание. Все последующие запросы к системе управления сайтом со стороны "1С:Предприятия" содержат в заголовке запроса имя и значение Cookie.

Далее следует запрос следующего вида:
http://<сайт>/exchange?type=catalog&mode=init

В ответ система управления сайтом передает две строки:

1. zip=yes, если сервер поддерживает обмен в zip-формате -  в этом случае на следующем шаге файлы должны быть упакованы в zip-формате
или
zip=no - в этом случае на следующем шаге файлы не упаковываются и передаются каждый по отдельности.

2. file_limit=<число>, где <число> - максимально допустимый размер файла в байтах для передачи за один запрос. Если системе "1С:Предприятие" понадобится передать файл большего размера, его следует разделить на фрагменты.

Затем "1С:Предприятие" запросами с параметрами вида http://<сайт>/exchange?type=catalog&mode=file&filename=<имя файла>
выгружает на сайт файлы обмена в формате CommerceML 2, посылая содержимое файла или его части в виде POST.

В случае успешной записи файла система управления сайтом выдает строку "success".

На последнем шаге по запросу из "1С:Предприятия" производится пошаговая загрузка каталога по запросу с параметрами вида http://<сайт>/exchange?type=catalog&mode=import&filename=<имя файла который был загружен>

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

1. Если в первой строке содержится слово "progress" - это означает необходимость послать тот же запрос еще раз. В этом случае во второй строке будет возвращен текущий статус обработки, объем  загруженных данных, статус импорта и т.д.

2. Если в ответ передается строка со словом "success", то это будет означать сообщение об успешном окончании обработки файла.

Примечание. Если в ходе какого-либо запроса произошла ошибка, то в первой строке ответа системы управления сайтом будет содержаться слово "failure", а в следующих строках - описание ошибки, произошедшей в процессе обработки запроса.
Если произошла необрабатываемая ошибка уровня ядра продукта или sql-запроса, то будет возвращен html-код.

Обмен информацией о заказах

Пример файла заказа из сайта в 1С с описанием внутри.

Пример файла заказа из 1С в сайт с описанием внутри.


1. Заказ оформляется на сайте

2. При передаче в систему "1С:Предприятие" в заказе устанавливается категория "Заказ с сайта".
При формировании заказа в системе "1С:Предприятие" записываются номер и дата заказа, с которыми он оформлен на сайте. Поиск контрагента осуществляется по ИНН или наименованию, в зависимости от указанных настроек.

3. При загрузке заказа производится поиск договора с контрагентом. Договор ищется среди существующих договоров с клиентом, с признаком ведения взаиморасчетов по заказам (по указанной в настройках загрузки Организации). Если не находится ни один договор, то создается новый.

4. При загрузке заказа загружаются все его свойства, переданные с сайта. Свойства ищутся в системе "1С:Предприятие" по наименованию. Если с таким наименованием свойства нет, то заводится новое свойство со значениями типа строка или число.

5. Заказ может модифицироваться в системе "1С:Предприятие", при этом его изменения будут выгружаться на сайт

6. Если заказ оплачивается или отгружается в системе "1С:Предприятие", то состояния заказа по оплате и по отгрузке выгружаются на сайт только при полном выполнении операции (полной оплате и полной отгрузке). До этого момента заказ считается не оплаченным и не отгруженным.

7. При попытке в системе "1С:Предприятие" изменить заказ, по которому произведена оплата или отгрузка, заказ на сайт не загрузится как измененный. При этом пользователь получит об этом сообщение.

8. После каждой выгрузка заказа на сайт, на стороне сайта определяются значения его категорий (ссылка на категории). Эти значения устанавливаются в системе  "1С:Предприятие" так, как они присвоены заказу на сайте

Выгрузка каталога начинается с того, что система "1С:Предприятие" отправляет http-запрос следующего вида:
http://<сайт>/exchange?type=sale&mode=checkauth.

В ответ система управления сайтом передает системе «1С:Предприятие» три строки (используется разделитель строк "\n"):

    слово "success";
    имя Cookie;
    значение Cookie.


Примечание. Все последующие запросы к системе управления сайтом со стороны "1С:Предприятия" содержат в заголовке запроса имя и значение Cookie.


Далее следует запрос следующего вида:
http://<сайт>/exchange?type=sale&mode=init

В ответ система управления сайтом передает две строки:

1. zip=yes, если сервер поддерживает обмен в zip-формате -  в этом случае на следующем шаге файлы должны быть упакованы в zip-формате
или
zip=no - в этом случае на следующем шаге файлы не упаковываются и передаются каждый по отдельности.

2. file_limit=<число>, где <число> - максимально допустимый размер файла в байтах для передачи за один запрос. Если системе "1С:Предприятие" понадобится передать файл большего размера, его следует разделить на фрагменты.

Затем на сайт отправляется запрос вида
http://<сайт>/exchange?type=sale&mode=query

Сайт передает сведения о заказах в формате CommerceML 2. В случае успешного получения и записи заказов "1С:Предприятие" передает на сайт запрос вида (здесь пригодится заполнение статусов из пункта 4 и 6 описаны выше в админке)
http://<сайт>/exchange?type=sale&mode=success

Затем система "1С:Предприятие" отправляет на сайт запрос вида
http://<сайт>/exchange?type=sale&mode=file&filename=<имя файла>, который загружает на сервер файл обмена, посылая содержимое файла в виде POST.

В случае успешной записи файла система управления сайтом передает строку со словом "success". Дополнительно на следующих строчках могут содержаться замечания по загрузке.

Примечание. Если в ходе какого-либо запроса произошла ошибка, то в первой строке ответа системы управления сайтом будет содержаться слово "failure", а в следующих строках - описание ошибки, произошедшей в процессе обработки запроса.
Если произошла необрабатываемая ошибка уровня ядра продукта или sql-запроса, то будет возвращен html-код.

Настройка 1С 7.х

1.Запускаем 1С, на вкладке Сервер выбираем опцию “Обмен данными с WEB-сайтом” далее “Настроить обмен данными с WEB-сайтом”.

Настроить обмен данными с WEB-сайтом

2. В появившемся окне создаем новую настройку обмена с WEB-сайтом.

создаем новую настройку обмена с WEB-сайтом

3. После этого переходим непосредственно к настройке соединения с сайтом. Выбираем тип данных, с которыми будет происходить обмен с сайтом (товары и заказы), и тип обмена данными (для того чтобы данные выгрузились на сайт выбираем “Выгрузка на сайт”, если выбрать “Выгрузка в каталог”, то данные загрузятся в заданный каталог). Для выгрузки данных на сайт нужно задать путь для инициализации соединения с сайтом, имя пользователя необходимо задать такое как имя вашей учетной записи в 1С (задано по умолчанию).

настройка соединения с сайтом

После задания конфигураций для установления соединения с сайтом проверяем соединение:
Кликните на кнопке “Далее”.


Настройка выгрузки товаров

Теперь нужно выбрать отбор для выгрузки товаров на сайт и раздел каталога в столбце Значение. Кликните на кнопке “Далее”. На этом этапе нужно указать виды цен и группы номенклатуры, которые будут выгружаться на сайт. Если установить флажок “Выгружать картинки”, то вместе с номенклатурой будут выгружены присоединенные изображения товаров. Кроме этого, можно задать дополнительные отборы. Например, можно установить отбор по полю “Остаток больше 0” и на сайт будут выгружаться только те товары, которые есть в остатках.

остатки и цены в 1с

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

Настройки для обмена заказами покупателей

На этом шаге нужно указать настройки для обмена заказами (настройка отображается, если на первом этапе установлен флажок “Обмениваться заказами”). При загрузке заказов покупателей с сайта, новые элементы номенклатуры идентифицируются по наименованию, а контрагенты в соответствии с установленным способом поиска, который указывается в поле “Способ идентификации контрагентов”. Например, можно искать контрагентов по наименованию или по ИНН + КПП. При этом, если контрагент не найден, то он создается. Если нет необходимости создавать новые контрагенты при загрузке заказов с сайта, то в качестве значения поля “Способ загрузки контрагентов” можно указать “Не создавать” и в появившемся поле выбрать контрагента, который будет подставляться в загруженные заказы. Кроме этого, в полях “Группа для новой номенклатуры” и “Группа для новых контрагентов” можно указать группы, в которые будут загружены не найденная номенклатура и контрагенты. Укажите группу номенклатуры “Товар” (с этим видом номенклатуры будут записываться новые товары). Укажите единицу измерения для новой номенклатуры. Создаваемые товары будут записываться с этой единицей измерения. При необходимости заполните группу новой номенклатуры. В эту группу помещаются товары и услуги, создаваемые при загрузке заказов с сайта. Укажите соглашение, с которым будут создаваться документы “Заказ клиента”. Если это требуется, то укажите организацию и менеджера, от имени которых будут создаваться данные документы.

настройка обмена заказа

Далее необходимо задать параметры действий, с поступившими из сайта документами:

действия с пуступившими документами из сайта

Режим обмена данными с сайтом:

Режим обмена данными с сайтом

Теперь можно выбрать интервал для периодического обмена данными с каталогом на сайте. Для завершения нажмите “Готово”. Вам будет предложено произвести первый обмен данными с каталогом.

Период выгрузки 1с

Настройка 1С 8.х

Запускаем 1С, на вкладке Администрирование выбираем опцию “Синхронизация данных” далее “Узлы обмена с сайтами”.

Первый запуск 1с

В появившемся окне выбираем "Создать новый элемент списка (Inc)"

Создать новый элемент списка (Inc)

В появившемся окне задать настройки вашего подключения и сохранить их.

настройка подключения 1с

Если вы все сделали правильно то нажав на кнопку "Проверить соединение" увидите сообщение что соединение установлено.

Соединение установленно 1с