Синхронизация мобильного приложения «1С:Заказы» с типовыми конфигурациями (такими как 1С:Комплексная автоматизация 2, 1С:ERP или 1С:Управление торговлей 11) — это процесс, требующий ювелирной настройки сразу на нескольких уровнях: веб-сервера, информационной базы и самого мобильного устройства. Часто специалисты сталкиваются с тем, что даже при видимости веб-сервиса из интернета, синхронизация выдает ошибки авторизации или, что еще обиднее, завершается успешно, но оставляет приложение пустым. В этой статье мы подробно разберем, как преодолеть эти препятствия.
Рассмотрим ситуацию, когда при попытке синхронизации телефон выдает сообщение: «Синхронизация с устройством не настроена. Не найден узел обмена для пользователя [ИмяПользователя]». Чаще всего эта проблема кроется в некорректной настройке файла публикации на веб-сервере Apache или IIS.
Проанализируем файл default.vrd, который формируется при публикации информационной базы. Часто для упрощения отладки в строку соединения добавляют параметры авторизации. Это выглядит примерно так:
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
base="/auto"
ib="Srvr='ServerName';Ref='BaseName';Usr='ws';Pwd='password';">
В данном примере мы видим, что в параметре ib жестко прописан пользователь Usr="ws". Выясним, почему это приводит к ошибке. Когда мобильное приложение обращается к веб-сервису, оно передает логин и пароль конкретного менеджера (например, Программист1 или Иванов). Однако веб-сервер, руководствуясь файлом default.vrd, игнорирует эти данные и принудительно авторизует сеанс под пользователем ws.
Система 1С при синхронизации ищет в справочнике «Настройки мобильных устройств» узел обмена, привязанный именно к тому пользователю, под которым открыт текущий сеанс. Если сеанс всегда открыт под ws, а настройки созданы для Иванова, программа выдает закономерную ошибку: узел для ws не найден.
Решение: необходимо очистить параметры Usr и Pwd в конфигурационном файле default.vrd. После внесения изменений файл должен выглядеть следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<point xmlns="http://v8.1c.ru/8.2/virtual-resource-system"
base="/auto"
ib="Srvr='ServerName';Ref='BaseName';">
Теперь 1С будет использовать те учетные данные, которые введены в настройках самого мобильного приложения на телефоне, и корректно сопоставлять их с узлом обмена.
Если синхронизация прошла успешно, но список товаров пуст, нам необходимо проверить цепочку связанных данных в 1С. Мобильное приложение «1С:Заказы» не просто выгружает весь справочник Номенклатура, оно фильтрует данные по жестким критериям доступности для продажи.
Разберем по шагам, что нужно проверить в учетной системе:
УстановкаЦенНоменклатуры для того вида цен, который указан в типовом соглашении. Цены должны быть актуальны на дату синхронизации.Нередко возникает ситуация: товары появились, но менеджер не видит своих клиентов или созданные заказы. Рассмотрим причины такого поведения системы:
Во-первых, проверим ответственного менеджера. В настройках обмена на стороне 1С каждое устройство жестко привязывается к конкретному физическому лицу или пользователю. Мобильное приложение по умолчанию загружает только тех партнеров, у которых в поле «Основной менеджер» указан этот пользователь. Если вы хотите, чтобы менеджер видел всех клиентов, необходимо скорректировать права доступа или настройки фильтрации в узле обмена.
Во-вторых, проанализируем права доступа (Роли). Пользователю, под которым осуществляется обмен, должны быть назначены роли:
Использование мобильного приложения 1С:ЗаказыЧтение базовой нормативно-справочной информацииДобавление и изменение заказов клиентовЕсли вы внесли все настройки, но данные не появляются, выполним следующие действия для выявления причины:
Проверка Журнала регистрации: Это самый эффективный способ. Отфильтруйте журнал по пользователю синхронизации. Ищите события с уровнем «Ошибка». Часто там можно встретить сообщения вида «Нарушение прав доступа при чтении регистра сведений ЦеныНоменклатуры». Это сразу укажет на недостающую роль у пользователя.
Полная перезагрузка данных: В мобильном приложении в меню синхронизации выберите пункт «Перезаполнить данные». Это принудительно очистит локальную базу телефона и запросит полный пакет данных из 1С, игнорируя механизмы частичного (дифференциального) обмена, которые иногда могут «подвисать» при изменении настроек в центральной базе.
Проверка через веб-браузер: Попробуйте открыть адрес веб-сервиса, указанный в телефоне, через браузер на том же устройстве. Если браузер запрашивает логин/пароль и после ввода показывает XML-структуру — значит, транспортный уровень (сеть и веб-сервер) настроен верно, и проблему нужно искать исключительно внутри логики 1С (соглашения, цены, остатки). Для отладки и проверки ответов сервисов с различными параметрами авторизации можно использовать обработку для проверки результатов HTTP-запросов из 1С.
Используя этот комплексный подход, мы сможем обеспечить стабильную работу мобильных сотрудников и исключить простои в оформлении заказов.