Мобильный клиент с автономным режимом - отладка автономной части?

1. alex25ru 20.09.22 09:56 Сейчас в теме
Разбираюсь с обменом и автономным режим в мобильном клиенте в самописной конфигурации. Для запуска минимального прототипа взял демонстрационную базу с версии 8.3.20.2039 (ссылка). Поднял сервер 1с версии 8.3.20.2039, опубликовал демку на apache, поставил в NOX приложение 1с мобильный клиент с автономным режимом, подключил туда опубликованную базу, настроил отладку по HTTP, все отлично. Но!

Есть в данной демобазе модуль "ОбменМобильныеАвтономныйСервер", (приоритет в составе автономной конфигурации = "Автономный сервер"). В этом модуле есть процедура "ВыполнитьОбменДанными"

// Процедура выполняет синхронизацию данных с основной базой. через опубликованный ею веб-сервис
Процедура ВыполнитьОбменДанными() Экспорт
        .....	
	Константы.ОтправленоЗаписей.Установить(0);
	Константы.ПринятоЗаписей.Установить(0);
    ДанныеОбмена = ОбменМобильныеОбщее.СформироватьПакетОбмена(ЦентральныйУзелОбмена);
	ЗаписатьДанные(ДанныеОбмена);
	ДанныеОбмена = ОсновнойСервер.ОбменМобильныеВызовПК.ВыполнитьОбменДанными(Узел.Код, ДанныеОбмена);
	ЗаписатьДанные(ДанныеОбмена);
    ОбменМобильныеОбщее.ПринятьПакетОбмена(ЦентральныйУзелОбмена, ДанныеОбмена);
	ЗаписатьДанные(ДанныеОбмена);
    
КонецПроцедуры
Показать


Как поймать отладчиком этот модуль и эту процедуру?

Отладчик видит "Мобильный клиент" И "Сервер", код выполняемый на этих контекстах отлаживается без проблем. Код выполняемый на "автономном сервере" никак не получается поймать в отладку. Для платформ версий 8.3.20 была заявлена прозрачная поддержка отладки основной и автономной конфигурации, без переключения в настройках. Сначала пробовал на 8.3.18, поставил 8.3.20 в надежде на перемены, но счастья не случилось.
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. user-z99999 67 20.09.22 16:26 Сейчас в теме
(1)
Отладка автономного мобильного приложения
Отладка сразу всех составных частей автономного мобильного приложения не поддерживается. Предоставляется возможность отлаживать или часть, работающую на мобильном устройстве или часть, работающую с основным сервером. В случае отладки автономной части прикладного решения необходимо подключать следующие предметы отладки: клиент (мобильное приложение) и сервер (мобильное приложение). В случае отладки основной части прикладного решения необходимо подключать следующие предметы отладки: мобильный клиент и сервер.

Переключение между этими режимами осуществляется с помощью параметра настройки информационной базы на мобильном устройстве.

Действия, которые предшествуют собственно отладке, аналогичны таковым при отладке мобильного приложения или прикладного решения для персонального компьютера.
5. alex25ru 21.09.22 02:26 Сейчас в теме
(4)
Отладка автономного мобильного приложения
Отладка сразу всех составных частей автономного мобильного приложения не поддерживается. Предоставляется возможность отлаживать или часть, работающую на мобильном устройстве или часть, работающую с основным сервером. В случае отладки автономной части прикладного решения необходимо подключать следующие предметы отладки: клиент (мобильное приложение) и сервер (мобильное приложение). В случае отладки основной части прикладного решения необходимо подключать следующие предметы отладки: мобильный клиент и сервер.

Переключение между этими режимами осуществляется с помощью параметра настройки информационной базы на мобильном устройстве.

Действия, которые предшествуют собственно отладке, аналогичны таковым при отладке мобильного приложения или прикладного решения для персонального компьютера.


Как раз таки одновременную отладку и автономной, и основной части 1С заявляет что реализовали в 8.3.20.1549. Вопрос в том, что подхватить автономную часть удалось после указания DefAlias, но в тоже время пропала возможность поймать мобильного клиента и основной сервер - это при указании DefAlias и платформе 8.3.18.1289. Сейчас проверю на 8.3.20.2039.



Сейчас разработчик может проводить отладку только в таких сочетаниях предметов отладки:

Мобильный клиент и основной сервер

Мобильный клиент и автономный сервер

Какое именно сочетание используется – устанавливается в настройках мобильного клиента. Для смены сочетания нужен перезапуск мобильного клиента. В этом плане поведение отладчика отличается от отладки обычного клиент-серверного приложения – отладчик может не попадать внутрь некоторых участков серверного кода в зависимости от того, на каком из серверов (основном или автономном) этот код выполняется и от того, какое сочетание предметов отладки выбрано.

....

В версии 8.3.20 это ограничение будет убрано - можно будет одновременно отлаживать мобильный клиент, основной сервер и автономный сервер. Это позволит покрыть отладкой весь код приложения, как в случае обычного клиент-серверного приложения. В частности, можно будет отлаживать сценарии с потерей связи, когда основной сервер становится недоступен и мобильный клиент переключается на работу с автономным сервером (что ранее было невозможно).

https://wonderland.v8.1c.ru/blog/novye-vozmozhnosti-otladki-dlya-mobilnogo-klienta-s-avtonomnym-rezhimom/
2. alex25ru 20.09.22 10:34 Сейчас в теме
Так вроде включили свет в конце туннеля - DefAlias %)
ЗЫ. Ушел в эксперимент
3. alex25ru 20.09.22 10:57 Сейчас в теме
Появилась возможность поймать автономный сервер, но пропала отладка клиента и основного сервера, в не зависимости от выставленного режима отладки "основная конфигурация"\"автономная конфигурация" (платформа 8.3.18.1289).
6. alex25ru 27.09.22 04:35 Сейчас в теме +1 $m
В общем рецепт: имя базы в кластере должно быть DefAlias, только при таком раскладе будет полная отладка: автономный сервер, сервер, мобильный клиент. Я использовал версии: 8.3.20.40 в качестве мобильного клиента и 8.3.20.2039 в качестве серверной части.

Отладочную базу пришлось переименовать в DefAlias, просто через конфигуратор указать имя базы не работало.

Зы: Для мобильной платформы версии 8.3.21.41 минимальная версия серверной части, указанная на "релизах", 8.3.20.1549, но 8.3.20.2039 и 8.3.21.41 вместе не работают, при просмотре значения переменной на точке останова "ошибка преобразования XDTO", которая уже много раз проявлялась на более старых версиях и также исправлялась в более новых (но уже давно не актуальных версиях). В общем исправили и снова добавили ошибку. Либо я спутал информацию о совместимости, если кто располагает информацией с более точным сопоставлением версий мобильной и серверной части, поделитесь пожалуйста.
7. пользователь 05.10.22 13:07
Сообщение было скрыто модератором.
...
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот