|   |   | 
| 
 | Как прочитать ответ от WEB-сервиса Почты России | ☑ | ||
|---|---|---|---|---|
| 0
    
        alex-79 06.07.20✎ 15:37 | 
        Здравствуйте!
 Как распарсить ответ от web-сервиса Почты России? текЗапрос = Новый COMОбъект("WinHttp.WinHttpRequest.5.1"); текЗапрос.Open("POST", "http://tracking.russianpost.ru/fc?wsdl", 0); текЗапрос.setRequestHeader("Content-Type", "text/xml; charset=utf-8"); XMLБилет = "<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:pos=""http://fclient.russianpost.org/postserver""> |<soapenv:Header/> |<soapenv:Body> | <pos:answerByTicketRequest> | <ticket>" + Билет + "</ticket> | <login>"+рЛогин+"</login> | <password>"+рПароль+"</password> | </pos:answerByTicketRequest> |</soapenv:Body> |</soapenv:Envelope>"; текЗапрос.Send(XMLБилет); текЗапрос.WaitForResponse(); ОтветСервера = текЗапрос.ResponseText; WEB-сервис присылает ответ в виде XML Пример https://i0.wampi.ru/2020/07/06/OTVET-WEB-SERVISA.png В 1С использую объект ЧтениеXML, но данный объект не умеет читать структура XML-строки присланной WEB-Сервисом. Файл с ответом web-сервиса https://cloud.mail.ru/public/9c5R%2FM7STyJgwt | |||
| 1
    
        Волшебник модератор 06.07.20✎ 15:39 | 
        Создай пакет XDTO     | |||
| 2
    
        arsik гуру 06.07.20✎ 15:50 | 
        (0) Стаж: 7 лет 10 месяцев 9 дней - а до сих пор гуглом не научили пользоваться.
 http://catalog.mista.ru/public/311011/ | |||
| 3
    
        sitex naïve 06.07.20✎ 15:57 | 
        (2) Может аккаунт продал)     | |||
| 4
    
        alex-79 06.07.20✎ 15:58 | 
        (1) XDTO не сложно создать, но в функции Фабрика.ПрочитатьXML в первый параметр нужно передавать значение объекта ЧтениеXML. При выполнении процедуры ЧтениеXML.УстановитьСтроку 1С выдает ошибку, что передаваема строка в параметре не того формата. В этом вся сложность.     | |||
| 5
    
        alex-79 06.07.20✎ 15:58 | 
        (3) Нет     | |||
| 6
    
        acht 06.07.20✎ 15:59 | 
        (0) Как это все печально...
 Ты же в своей ветке Пакетное отслеживание посылок Почты России из 1С собственноручно давал ссылку на страницу с примерами, по которой специально, блд, для 1Сников, выложена конфигурация с примерами работы через CreateWSProxy. | |||
| 7
    
        alex-79 06.07.20✎ 16:02 | 
        (6) Нет не печально.  CreateWSProxy только для одиночного запроса, а у меня пакетный. И этого куска кода в демо конфе нет. В демо конфе по пакетному запросу выдается номер билета и нужно после этого делать запрос по билету, чтобы получить список информацию по посылкам. Во этого куска кода там нет.     | |||
| 8
    
        alex-79 06.07.20✎ 16:08 | 
        (6) Вот пожалуйста по поводу WS ссылки в демо базе от Почты России https://i0.wampi.ru/2020/07/06/ws-SSYLKA.png
 Только одиночный запрос. Пакетного нет. | |||
| 9
    
        alex-79 06.07.20✎ 16:10 | 
        Насколько я понимаю к строке ответа web-сервиса при чтении надо подсунуть ещё схему, чтобы 1С могла с помощью неё прочитать. Но не понимаю как сделать.     | |||
| 10
    
        acht 06.07.20✎ 16:11 | 
        falselight №2     | |||
| 11
    
        alex-79 06.07.20✎ 16:13 | 
        (10) Что это?     | |||
| 12
    
        sitex naïve 06.07.20✎ 16:14 | 
        (9) А комментарии читал в (2) ?     | |||
| 13
    
        arsik гуру 06.07.20✎ 16:24 | 
        (4) Ну вот загрузил твой пример. Все читает. Что нужно еще?
 https://i.imgur.com/6qOkpCr.png | |||
| 14
    
        alex-79 06.07.20✎ 16:28 | 
        (13) Вот тут СокрЛП() надо использовать было
 ЧтениеXML.УстановитьСтроку(СокрЛП(ОтветСервера)) Ужас! Из-за обрезки пробелов не читалось Спасибо за помощь! | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |