Завершен

Интеграция ТСД с CRM

Вячеслав Ляутин 9 лет назад обновлен Сергей (Специалист) 9 лет назад 11
Доброго времени суток. Я занимаюсь интеграцией терминала с CRM системой BPM Online. Система работает на C# приложении и использует MSSQL базу данных. Удобнее всего было-бы реализовать интеграцию на уровне Базы данных.

Вопрос: Можно ли в конфигурации на основе полученных данных из базы сформировать список документов?
На рассмотрении
Добрый день,
Документы можно выгрузить на сервер при помощи функции StorageConnector.SetDocuments или использовать события сервера ПолучитьСписокДокументов, ПолучитьДокумент. Во вложении *.pdf по внедрению и ссылка по коннекторам.
Установка и внедрение
http://www.cleverence.ru/support/%D0%A0%D0%B0%D0%B7%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0+%D0%BA%D0%BE%D0%BD%D0%BD%D0%B5%D0%BA%D1%82%D0%BE%D1%80%D0%BE%D0%B2+%D0%BA+%D0%B2%D0%BD%D0%B5%D1%88%D0%BD%D0%B8%D0%BC+%D1%81%D0%B8%D1%81%D1%82%D0%B5%D0%BC%D0%B0%D...
Таким образом я могу в конфигурации добавить Операцию "ПолучитьСписокДокументов". В алгоритме этой операции выполнить запрос к базе данных.

Как мне дальше на основе полученных данных создать документы? 
Нужно создать Цикл по строкам и в качестве входных параметров указать Result выполненного запроса?
А как внутри цикла создавать документы?
+1
Добрый день, Вячеслав.

Нет, вы неверно понимаете механизм интеграции в данном случае.
Документы и номенклатура - это встроенные типы данных платформы, для работы с которыми уже предусмотрены отдельные инструменты.

Не нужно выбирать документы запросом в операции. Так вы конечно получите документы и сможете их отобразить в списке. Но в клиенте Mobile SMARTS уже есть список документов в главном окне. Этот список заполняется специальным запросом к серверу, а сервер генерирует событие ПолучитьСписокДокументов. Выборку документов вам надо реализовать в обработчике этого события, а дальше инфраструктура Mobile SMARTS вернет это на ТСД и отобразит где надо.
Пишите на C# класс, реализуете в нём интерфейс IConnector, в нём в InvokeMethod реализуете свою логику получения документов. и всего прочего.  Более подробно - во вложенном файле.

Mobile SMARTS 2008 - Подключение к внешним системам.pdf
Спасибо, я действительно не сразу понял что можно дописать свою логику. Очень здорово, что платформа позволяет это.

В файле что вы прикрепили есть пример коннектора, в котором:
this.connector = new MYSYS.Interop.COMConnector();

Но компилятор не видит namespace MYSYS. Искал вручную в структуре добавленных dll - "COMConnector" и не нашёл.
Ну конечно вы нигде не найдете MYSYS, это ведь просто пример. В конкретном случае вместо MYSYS будет стоять Microsoft.Dynamics.BusinessConnector или System.Data.SqlClient.SqlConnection
Ах ну да, глупый вопрос. Я почему-то подумал что это создаётся экземпляр коннектора который будет будет указан в конфигурации.

Но у меня возникли новые ошибки. Интерфейс IConnector требует реализации Timeout и TimeoutBehavaior. Что это за методы?
Правка: Это как-то само собой решилось. 

Не могли бы вы предоставить рабочий код коннектора? Допустим коннектор который ничего не делает, но работает. Или лучше коннектор который создаёт несколько произвольных документов на сервере. Буду вам безмерно благодарен!
Вот архив с полным работающим примером:   MobileSMARTS_TestConnector.zip
По ссылке короткое видео, как его установить и отладить в работе: http://youtu.be/jeS0-q_X_70.
Как и обещал безмерно благодарен! С документам всё получилось и даже лучше чем хотелось. Будем ковырять дальше. Ещё раз огромное спасибо за оказанную помощь! Приятно удивлен скорости и качеству техподдержки платформы! Спасибо!

Сервис поддержки клиентов работает на платформе UserEcho