Синтаксис:
Visual Basic (Declaration)
|
<OperationBehaviorAttribute(Impersonation := ImpersonationOption.Allowed)> _
Public Function RunScript ( _
Name As String, _
Params As Dictionary(Of String, String) _
) As String
|
C#
|
[OperationBehaviorAttribute(Impersonation = ImpersonationOption.Allowed)]
public String RunScript (
string Name,
Dictionary<String, String> Params
)
|
Параметры:
• | Name – имя выполняемого сценария; |
• | Params – параметры сценария. |
Возвращаемое значение:
Результат выполнения сценария.
Примечание
Для выполнения серверных событий через веб-сервисы интеграции необходимо запускать сценарий Запуск серверного события. Подробнее см. раздел «Запуск серверного события».
Пример SOAP-пакета
Выполнение сценария с именем «RunSync» и параметром «SystemName», принимающим значение SAP HR. Получение результата выполнения сценария.
<soapenv:Envelope
xmlns:arr=http://schemas.microsoft.com/2003/10/Serialization/Arrays
xmlns:int=http://IntegrationWebService
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<int:RunScript>
<int:Name>RunSync</int:Name>
<int:Params>
<arr:KeyValueOfstringstring>
<arr:Key>SystemName</arr:Key>
<arr:Value>SAP HR</arr:Value>
</arr:KeyValueOfstringstring>
</int:Params>
</int:RunScript>
</soapenv:Body>
</soapenv:Envelope>
|
Пример обращения к веб-сервисам через сценарий Directum
Пример кода сценария, из которого через веб-сервисы вызывается другой сценарий Directum RunServerEvent.
Connector = CreateObject("MSSOAP.HttpConnector30")
Connector.Property("EndPointURL") = "{Ссылка на адрес веб-сервиса}"
Connector.Connect
Connector.Property("SoapAction") = "RunScript"
Connector.BeginMessage
Serializer = CreateObject("MSSOAP.SoapSerializer30")
Serializer.Init(Connector.InputStream)
Serializer.StartEnvelope
Serializer.StartBody
Serializer.StartElement("RunScript";"http://IntegrationWebService")
Serializer.StartElement("Name";"http://IntegrationWebService")
Serializer.WriteString("RunServerEvent")
Serializer.EndElement
Serializer.StartElement("Params";"http://IntegrationWebService")
Serializer.StartElement("KeyValueOfstringstring";"http://schemas.microsoft.com/2003/10/Serialization/Arrays")
Serializer.StartElement("Key";"http://schemas.microsoft.com/2003/10/Serialization/Arrays")
Serializer.WriteString("EventName")
Serializer.EndElement
Serializer.StartElement("Value";"http://schemas.microsoft.com/2003/10/Serialization/Arrays")
Serializer.WriteString("Param_value")
Serializer.EndElement
Serializer.EndElement
Serializer.EndElement
Serializer.EndElement
Serializer.EndBody
Serializer.EndEnvelope
Connector.EndMessage
Reader = CreateObject("MSSOAP.SoapReader30")
Reader.Load(Connector.OutputStream)
Reader.Body.xml
edittext(Reader.Body.xml)
|