Как опубликовать сервис запросов бизнес-объектов - PullRequest
0 голосов
/ 04 ноября 2008

Мы пытаемся скопировать BO Query Service из одной вселенной в другую. Если вы используете инструмент BO Query As A Service (QAAS), вы можете сделать это, но в конечном итоге в основном создадите службу запросов.

Кажется, что библиотеки BusinessObjects.DSWS. * Позволяют читать и писать службы запросов, но они не отображаются в инструменте QAAS. Я думаю, что эти запросы попадают в другую вселенную, чем пинги инструмента QAAS. Возможно, существует Universe для данных, а другая для запросов веб-сервисов. Мониторинг инструмента QAAS для трафика HTTP показал, что веб-служба BO, используемая для выполнения запросов к содержащимся в них данным, также используется для управления запросами веб-службы.

Мне удалось скопировать одну службу запросов в новую в новой вселенной, используя Replace () в строке XML в QuerySpec для изменения UniverseID. По сути, мы можем скопировать один Query Service в другой Universe без его перестройки вручную, за исключением одной мелочи.

Инструмент QAAS включает кнопку публикации. Это делает что-то неизвестное, но важное. Возможно, он создает файлы SOAP, WSDL или config, чтобы скопированная служба запросов была общедоступной. Кажется, что нет никакого HTTP-трафика для отслеживания, когда он делает это. Библиотеки BusinessObjects.DSWS. * Включают функцию публикации, но не для служб запросов. Это для общих файлов, таких как Excel и PDF.

Прямо сейчас мы вынуждены использовать два инструмента. Кто-нибудь знает о том, как программно публиковать BO Query Service, как QAAS Tool?

1 Ответ

0 голосов
/ 20 февраля 2009

Это было давно, но был хакерский способ сделать это.

Вы можете использовать инструмент VS для генерации класса csharp, который может вызывать веб-сервис BO. Этот объект может тянуть соответствующие настройки в текстовом формате. Затем вы заменяете существующую часть идентификаторов объектов в службе запросов, которая является идентификатором юниверса, новым идентификатором юниверса. Затем этот объект может добавить новую службу запросов.

Этот процесс очень быстрый, и после него вам нужно использовать инструмент QAAS для публикации новой, скопированной службы запросов. Кажется, что все действия публикации, доступные из кода, публикуют что-то еще, а не службы запросов.

...