Как отлаживать приложение Dynamics 365 for Finance and Operations -Warehousing на разработческой машине

Category: Статьи Post Date: 08.09.2020

«Dynamics 365 for Finance and OperationsWarehousing» – это мобильное приложение, позволяющее складским сотрудникам упростить работу с D365FO. Если вы хотите кастомизировать серверную часть, вам нужно отлаживать или хотя бы видеть результат на разработческой машине. Есть ряд проблем, которые превращают это в нетривиальную задачу. Самое главное – это то, что данное приложение для Windows распространяется через Microsoft Store, что недоступно на серверных версиях Windows, где располагаются разработческие машины.

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

1. Сначала нам нужно получить доступ к разработческой среде D365FO с локальный машины. Для этого необходимо в файл hosts добавить строку, которая будет перенаправлять стандартный URL среды разработки на адрес машины, где она располагается. Devbox_ip – сюда подставьте адрес машины разработки, к которой вы подключаетесь по RDP:

2. Проверим наличие доступа, вставив стандартный URL адрес среды разработки (https://usnconeboxax1aos.cloud.onebox.dynamics.com/) в адресную строку браузера на локальной машине:

3. Устанавливаем на локальную машину приложение «Dynamics 365 for Finance and Operations – Warehousing» из Microsoft Store.

4. Теперь нам нужно настроить данное приложение для подключения к разработческой среде. Для этого нам понадобится регистрация приложения Azure. Если это у вас уже настроено, можете пропустить следующие подпункты. В принципе, всё подробно описано и в стандартной справке MS (https://docs.microsoft.com/en-us/dynamics365/supply-chain/warehousing/install-configure-warehousing-app).

a) Открываем в браузере портал Azure и переходим к «Регистрации приложений»:

b) Нажимаем кнопку «Новая регистрация»:

c) Вводим название приложения, нажимаем кнопку «Зарегистрировать»:

d) Далее увидим информацию по только что созданной регистрации, нам здесь понадобится значение в поле «Идентификатор приложения», скопируйте его:

e) Далее нажимаем слева кнопку «Сертификаты и секреты», ниже появится кнопка «Новый секрет клиента», нажимаем на неё и далее нажимаем кнопку «Добавить»:

f) Внимание. Теперь нужно скопировать сгенерированное значение и обязательно где-  то сохранить, потому что потом его нельзя будет получить для данного секрета:

g) Далее перейдем к пользовательскому интерфейсу D365FO, открываем форму «Приложения Azure Active Directory»:

h) Настроим новое приложение. Client Id (Код клиента) – скопированный ранее идентификатор приложения; Name (Название) произвольное; User ID (код пользователя) – обычно заводится специальный пользователь с ролями, дающими доступ только к тем функциям, которые буду использоваться приложением:

5. Теперь нам нужно настроить приложение «Dynamics 365 for Finance and Operations – Warehousing». Запускаем приложение:

6. Нажимаем пункт «Connection settings»

7. Переходим к полю «Select connection», автоматически откроется форма настройки первого подключения, заполняем поля как на скриншоте ниже. Client secret – это секрет клиента из пункта 4f. Active Directory Tenant – это ваша организация в Azure Active Directory, с помощью которой вы заходите в разработческую среду D365FO.

8. Нажимаем галку чтобы сохранить новое подключение, приложение сразу попытается подключиться к серверу, но мы получим следующую ошибку, связанную с сертификатом разработческой среды:

9. Чтобы исправить эту ошибку, нам нужно добавить сертификат среды в доверенные сертификаты локальной машины.

a) Снова открываем в браузере пользовательский интерфейс среды, нажимаем на предупреждение (на примере Chrome):

b) Нажимаем на «Сертификат»:

c) Сохраняем сертификат в файл:

d) Двойным кликом открываем сохраненный файл сертификата и нажимаем «Установить сертификат»:

e) Устанавливаем сертификат:

10. Пробуем снова подключиться, на этот раз успешно:

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

Подписывайтесь на канал @d365neti в Telegram

Подписаться

Добавить комментарий