|
![]() |
#1 |
Участник
|
Какая версия нав? Почему не используете DotNet Interop, вместо Automation?
1. Создаете Text строку SoapEnvelope (2015 поддерживает безлимитный текст). В эту строку пихаете ваш XML. 2. Пишете функцию "открытия" веб-реквеста: LOCAL OpenHttpWebRequest(Url : Text[250];Soap : Boolean;VAR httpWebRequest : DotNet "System.Net.HttpWebRequest") uri := uri.Uri(Url); httpWebRequest := httpWebRequest.CreateDefault(uri); httpWebRequest.Method := 'POST'; httpWebRequest.Credentials := credential.DefaultNetworkCredentials; IF Soap THEN httpWebRequest.ContentType := 'application/soap+xml' ELSE httpWebRequest.ContentType := 'text/xml'; 3. Далее делаете это: OpenHttpWebRequest(HTTP_адрес_сервиса,TRUE,httpWebRequest); streamWriter := streamWriter.StreamWriter(httpWebRequest.GetRequestStream); streamWriter.Write(SoapEnvelope); streamWriter.Close; CloseHttpWebRequest(httpWebRequest); 4. Функция закрытия CloseHttpWebRequest: httpWebResponse := httpWebRequest.GetResponse; IF httpWebResponse.StatusDescription <> 'OK' THEN ERROR(Text100,httpWebResponse.StatusDescription); 5. Типы переменных: httpWebResponse DotNet System.Net.HttpWebResponse.'System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' httpWebRequest DotNet System.Net.HttpWebRequest.'System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' streamWriter DotNet System.IO.StreamWriter.'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' uri DotNet System.Uri.'System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' |
|
![]() |
#2 |
Участник
|
|
|
![]() |
#3 |
Участник
|
Цитата:
Посмотрите код, что я скинул, и скоррелируйте его на свои Automation объекты. |
|