Создание заказов в Microsoft Dynamics NAV с помощью веб-служб или API - PullRequest
1 голос
/ 13 октября 2010

Мне поручено создать API, который позволит сторонним клиентам отправлять заказы в наш Microsoft Dynamics NAV 5.0 SP1.

Я хочу иметь возможность создавать SalesOrder в Dynamics NAV не с клиентом, а через API, чтобы я мог позволить отдельному процессу автоматически вводить заказы.

Любая помощь ценится в направлении меня в правильном направлении.

Ответы [ 2 ]

1 голос
/ 14 октября 2010

Ну, это зависит от того, насколько сложно это сделать.Вам нужно подтверждение создания заказа клиента в режиме реального времени?Если это так, вам нужно будет использовать веб-службу и убедиться, что существует сетевой путь от того, где клиенты будут создавать заказы (общедоступный Интернет, экстрасеть), к вашей веб-службе NAV - вероятно, с использованием VPN-туннеля и т. Д.если вы можете использовать процесс пакетного типа, тогда ваши клиенты могут создавать SO через веб-форму и т. д., а затем регулярно импортировать эти заказы в NAV с использованием Dataports или XMLPorts.

Например,у вас может быть онлайн-форма, в которой ваш клиент может создать Заказ, в котором он помещается в промежуточную таблицу в SQL или даже в файл XML или CSV.Затем вы можете запускать процесс на регулярной основе, который импортирует эти Заказы в NAV и создает соответствующие SalesOrders.

Предположительно, вам также нужен способ предоставления вашей базы данных товаров интерфейсу Ordering, чтобы клиенты могли выбирать, какие товарызаказать (и, следовательно, создать SalesLines из).

Какой тип сценария вас интересует?

0 голосов
/ 15 июня 2012

Веб-сервисы - это путь;у нас есть несколько приложений, которые имеют аналогичные требования.Я бы порекомендовал создать интерфейс (ASP, чтобы использовать веб-сервис из NAV) и заставить его общаться с NAV таким образом.

Редактирование базы данных напрямую не рекомендуется, так как это приведет к блокировке и может привести к взаимоблокировкамесли не осторожноКроме того, NAV может быть очень чувствительным, когда дело доходит до базы данных, поэтому лучше не писать в нее напрямую, если это возможно:)

Я бы порекомендовал создать блок кода, который обрабатывает заказ на продажу, в котором вы можете создавать свои функции, 'CreateOrder', а затем выставить это через веб-сервисы.Даже если вы не планируете использовать веб-интерфейс, NAV использует протокол SOAP - существует множество библиотек, позволяющих вам подключаться и взаимодействовать с веб-службами из других языков, таких как Java. = Например.

...