Расширенная настройка > Обновление пользовательских заданий
  
Обновление пользовательских заданий
При создании пользовательских заданий в версии PTC Navigate 1.4 или более ранней центром выполнения всех действий интерфейса API REST был WindchillConnectorThing.processJSONRequest. В соединителе использовался подход управляемых URL-адресом REST. В текущем соединителе Integration Runtime (интеграции времени выполнения) на основе WindchillSwaggerConnector используется подход управления сервисом. В результате, чтобы перенести задания в соединитель, необходимо будет для конкретного URL-адреса REST, который использовался, предварительно определить сервис в этом соединителе. Выполните рекомендуемые ниже шаги, чтобы заменить интерфейс API processJSONRequest.
* 
Если для создания пользовательского задания используются задания Info*Engine и сервисы REST, дополнительные сведения о них см. в разделе: Обновление пользовательского задания, содержащего задания Info*Engine.
1. Используйте ptc-windchill-integration-connector - новую вещь соединителя интеграции времени выполнения, включенную в PTC Windchill Extension, или создайте собственный соединитель и используйте WindchillSwaggerConnector в качестве привязки шаблона вещи. При обновлении рекомендуется дублировать стандартный соединитель ptc-windchill-integration-connector и использовать для настройки дублированный соединитель. В противном случае собственный настроенный соединитель будет потерян.
2. Создайте сервис для operationType и URL-адреса, которые используются в вызовах интерфейса API processJSONRequest в соединителе.
Если нужна дополнительная информация о создании сервисов, начните с раздела справки ThingWorxСервисы вещей
3. В сервисе перечислите все параметры queryParams, как в предыдущих версиях ThingWorx Navigate. Убедитесь, что наименования param точно соответствуют ожидаемым наименованиям для этого сервиса.
4. При наличии запросов POST добавьте в раздел queryParams следующие элементы:
a. Лексема CSRF. Чтобы получить лексему, выполните сервис в соединителе Security_Get_CSRF.
b. Данные (JSONObject) для param. В предыдущих выпусках это был отдельный элемент param в вызовах processJSONRequest.
5. Убедитесь, что соединитель представляет собой вещь, которую можно идентифицировать по наименованию:
Thing connector = (Thing)EntityUtilities.findEntity(connector,ThingworxRelationshipTypes.Thing);
6. Запустите этот сервис в вещи соединителя.
InfoTable serviceResult = connector.processServiceRequest(serviceName,params);
7. Используйте WindchillServicesConnector.InvokeService(operationType,serviceName,queryParams) для справки и утилиту "Интерфейс API" для применения в любых пользовательских интерфейсах API или заданиях.