Отслеживание (трейсинг)

Функция ПолучитьТекстЗапросПоЗаказамORDERNUM(Заказы, Заказчик, Ключ)

       

       ЗаписьXML = Новый ЗаписьXML;

       ЗаписьXML. УстановитьСтроку();

       //ЗаписьXML. ЗаписатьОбъявлениеXML();

       

       ЗаписьXML. ЗаписатьНачалоЭлемента("soap:Envelope");

       ЗаписьXML. ЗаписатьАтрибут("xmlns:soap", "http://schemas. xmlsoap. org/soap/envelope/");

  ЗаписьXML. ЗаписатьАтрибут("xmlns:ns0", "http://dpd. ru/ws/order2/2012-04-04");

       

       ЗаписьXML. ЗаписатьНачалоЭлемента("soap:Header");

       ЗаписьXML. ЗаписатьКонецЭлемента();

       

       ЗаписьXML. ЗаписатьНачалоЭлемента("soap:Body");

       

               ЗаписьXML. ЗаписатьНачалоЭлемента("ns0:getOrderStatus");

               ЗаписьXML. ЗаписатьАтрибут("xmlns:xs", "http://www. w3.org/2001/XMLSchema");

               ЗаписьXML. ЗаписатьАтрибут("xmlns:xsi", "http://www. w3.org/2001/XMLSchema-instance");

               

                       ЗаписьXML. ЗаписатьНачалоЭлемента("orderStatus");

НЕ нашли? Не то? Что вы ищете?

                       

                               ЗаписьXML. ЗаписатьНачалоЭлемента("auth");

                               

                                       ЗаписьXML. ЗаписатьНачалоЭлемента("clientNumber");

                                       ЗаписьXML. ЗаписатьТекст(Заказчик);

  ЗаписьXML. ЗаписатьКонецЭлемента();

                                       

                                       ЗаписьXML. ЗаписатьНачалоЭлемента("clientKey");

                                       ЗаписьXML. ЗаписатьТекст(Ключ);

  ЗаписьXML. ЗаписатьКонецЭлемента();

                                       

                               ЗаписьXML. ЗаписатьКонецЭлемента();

                               

                               Для Каждого Заказ Из Заказы Цикл

                                       ЗаписьXML. ЗаписатьНачалоЭлемента("order");

                                       

                                               ЗаписьXML. ЗаписатьНачалоЭлемента("orderNumberInternal");

                                               ЗаписьXML. ЗаписатьТекст(Заказ);

                                       ЗаписьXML. ЗаписатьКонецЭлемента();

                                                       

                                       ЗаписьXML. ЗаписатьКонецЭлемента();

                               КонецЦикла;

                               

                       ЗаписьXML. ЗаписатьКонецЭлемента();

                       

               ЗаписьXML. ЗаписатьКонецЭлемента();

               

       ЗаписьXML. ЗаписатьКонецЭлемента();

       ЗаписьXML. ЗаписатьКонецЭлемента();

  ТекстXML = ЗаписьXML. Закрыть();

       

       Возврат ТекстXML;

       

КонецФункции

Функция        ОтправитьЗапросWEBСервису(URL, ТекстXML, Таймаут = 10000)

       

       Если ПустаяСтрока(ТекстXML) Тогда

               Возврат "";

       КонецЕсли;

       

       WinHttp = Новый COMОбъект("WinHttp. WinHttpRequest.5.1");

       WinHttp. SetTimeouts(Таймаут, Таймаут, Таймаут, Таймаут);

       WinHttp. Option(2,"utf-8");                 

       WinHttp. Open("POST",URL);        

       

       WinHttp. setRequestHeader("Content-Type","text/xml; charset=utf-8");

       

       Сообщить("Начало - " + ТекущаяДата());

       Сообщить("URL: " + URL);

       //Сообщить("ТекстXML запроса: " + ТекстXML);

       

       Попытка 

               WinHttp. Send(ТекстXML);

               Сообщить("Завершение - " + ТекущаяДата());

               Если WinHttp. Status = 200 Тогда

                       Сообщить("Ответ: " + WinHttp. ResponseText);

                       Возврат(WinHttp. ResponseText);

               Иначе

                       Сообщить("Ошибка сервера: " + WinHttp. Status + " " + WinHttp. ResponseText + " " + WinHttp. StatusText, СтатусСообщения. Важное);

                       Возврат("");

               КонецЕсли;

               

       Исключение

               Сообщить(ОписаниеОшибки(), СтатусСообщения. Важное);

               Возврат("");

       КонецПопытки;

КонецФункции