Здравствуйте!
Недавно, разрабатывая модуль отображения продуктов из TerrasoftCRM на сайте Заказчика, я решил попробовать проинтегрироваться с Веб-сервисами :)
Конечно, доставать данные напрямую из базы проще, но имея класс для интеграции с Веб-сервисами TerrasoftCRM, мы уже можем говорить о полноценной интеграции на уровне приложений! Вот и решил я написать такой класс :)
Язык программирования PHP ( >= 5.2.0 )
Представляю Вашему вниманию первые наработки в этом направление (будет востребовано - продолжу разработку).
Как же без примеров :)
Создаем объект и заполняем переменные:
$ws->set_Host('http://10.10.10.10:81/crm/TSWebServicesServerLibrary.dll/wsdl/IServer');
$ws->set_Username('Supervisor');
$ws->set_MaxPackageSize($ws->get_MaxPackageSize() - 558);
$ws->set_wsClient();
Получаем маcсив с доступными конфигурациями:
Устанавливаем Соединение:
$ws->OpenConfiguration();
Создаем XML-ый запрос и выполняем:
$ws->CreateXML($SQL);
$ws->CreateParam();
$ws->AddDBParam("AccountID", "1", "1", "0", "{DFC26A8C-C284-4FBF-9DE2-39E8D77F1915}");
$ws->ExecuteSQL();
Получаем XML-ый ответ, выводим и закрываем соединение
$params = $xml->getElementsByTagName('R');
$k=0;
foreach ($params as $param)
{
echo $params->item($k)->getAttribute('F0')."
";
$k++;
}
$ws->CloseConfiguration();
Надеюсь, что мой труд кому-то еще пригодится :)
Код класса itsTerrasoftWS выкладываю под MIT лицензией
Осторожно, как бы там диалоговое окно случайно не выскочило.
Еще могут быть проблемы ести террасофт где-то течет по памяти. Да и по скорости думаю не самый оптимальный вариант.
Вы работали с веб-сервисами Terrasoft?
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Добрый день, Виталий!
Отличная новость. Уверен что многим участникам Community это поможет в реализации Web интерфейса.
По поводу окон, и остальных комментариев Underscore a.k.a. _. К счастью Вы ошибаетесь. Все эти вопросы не проблемы для наших Web сервисов, хотя есть другие вопросы.
Да, Сергей, не все там еще учтено... это пробные наработки, но уже работоспособны! :)
Вот пример:
http://community.terrasoft.ua/blogs/3522
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Прошу прощения, я почему-то упустил, что это WEB-сервисы :)
"Underscore a.k.a. _" написал:Прошу прощения, я почему-то упустил, что это WEB-сервисы :)
Интересно, а что тогда? :)
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Я думаю что Underscore a.k.a. имел в виду, что в принципе можносуществует и еще два варианта
- Работа с БД напрямую (что в этом случае схоже с Web сервисам)
- Работа с COM объектами Terrasoft, но тут могут возникнуть вопросы с PHP, и те проблемы, о которых писал Underscore a.k.a.
Понятно...
я же просто думаю о клиентах с UNIX-хостингом :)
Работать на прямую с базой хорошо, но когда база и хостинг на разных серверах... Появляется много вопросов о безопасности прямых запросов и защите.
А Web-сервисы - это HTTPS ;)
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Относительно
"Карло Сергей" написал:Работа с COM объектами Terrasoft
Тогда (как и с ASP.NET) мы опять себя ограничиваем только Windows-хостингом
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Конечно же, у каждого конкретного варианта есть свои плюсы и минусы.
"Карло Сергей" написал:Работа с COM объектами Terrasoft
Я действительно подумал об этом. Какие же диалоги, если работаем с WEB-сервисом.
Продолжая тему OpenSource :)
Открыт доступ к SVN данного класса! Все желающие всегда смогут скачать последнюю версию:
https://it-sfera.com/svn/itsPHPts/
Если Вы используете в своих PHP решениях интеграцию с веб-сервисами Terrasoft и хотите помочь в развитие данного класса - обращайтесь в личку, открою для Вас полный доступ к данному SVN ;)
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Спасибо за пример.
Вопрос скорее к сотрудникам Terrasoft.
Скажите, а подобное подключение потребует отдельной лицензии?
Открывая конфигурацию используя веб-сервисы Террасофт, Вам необходимо указать пользователя лицензированного в Террасофт...
--
www.it-sfera.com.ua
Terrasoft Solution Partner
Пример для последней версии класса.
--
www.it-sfera.com.ua
Terrasoft Solution Partner
"Виталий Ковалишин" написал:example.zip 2.37 кб
Что-то этот файлик уже не доступен, да и ссылка на SVN на работает...
Коллеги приветствую,
Неможем скачать example.zip.
Продолжение по ссылке: http://www.community.terrasoft.ru/forum/topic/11126#comment-50135
Спасибо