Взаимодействие в реальном времени с Dynamics NAV через веб-сервисы
Я хочу написать приложение.NET, которое будет взаимодействовать в реальном времени с Dynamics NAV 2009 и 2013. Приложение должно будет считывать и обновлять объекты, такие как клиенты и товары со склада.
Использование предоставленных веб-сервисов кажется наилучшим кандидатом для интеграции, и я попробовал некоторые базовые тесты для чтения, обновления и создания элементов с использованием веб-сервисов на основе Pages и клиента.net.
К сожалению, я очень новичок в динамике, и у меня есть несколько вопросов, которые, вероятно, отражают этот недостаток опыта.
Во-первых, веб-сервисы могут предоставлять как Page, так и Codeunits. Является ли Page правильным выбором для взаимодействия, чтобы сказать - создать клиента?
Во-вторых, я понимаю, что Dynamics NAV редко развертывается без настройки. Будет ли типичная настройка в NAV, например, добавление поля, включать изменение стандартной страницы, и будет ли это изменение отражено в определении веб-сервиса?
1 ответ
Вы правы - учитывая ваши требования, веб-сервисы, вероятно, являются лучшим вариантом для взаимодействия с NAV.
Относительно вашего первого вопроса: веб-сервисы страниц знают, как обрабатывать параллелизм, и, благодаря тому, как Visual Studio инкапсулирует их, предоставляют расширенные типы, с которыми вы можете взаимодействовать из своего кода.NET. Все основные операции CRUD могут быть выполнены с использованием открытых методов. Более подробное сравнение между веб-службами codeunit и веб-службами страниц см. По http://msdn.microsoft.com/en-us/library/dd355398.aspx.
Я думаю, что большинство разработчиков предпочитают не публиковать обычные страницы (те, которые предназначены для NAV Windows Client; ранее известный как Role Tailored Client), а вместо этого создают отдельные, настроенные страницы для публикации в виде веб-службы. Но, если вы предпочитаете, я думаю, вы могли бы добавить свое настраиваемое поле на стандартную страницу и опубликовать его как веб-сервис.
Надеюсь это поможет! Удачи!:)