Имя: Пароль:
1C
1C 7.7
v7: И снова Пони Экспресс, XMLHTTP и формат строки ему на вход.
0 Владимир1С
 
25.12.17
17:55
Собственно:

Имеем базу ИнетМагазина. Сформированный заказ отсылается на сервер доставщика в формате XML.

Следующим кодом:

URL = "http://www.ponyexpress.ru/tools/im/im_order_std.php";;

HTTPОбъект = СоздатьОбъект("Microsoft.XMLHTTP");
        
HTTPОбъект.Open("POST", URL, 0);
        
HTTPОбъект.Send("access_code="+ТестовыйКод+"&xml_data=" + ТекстXMLВСтроку); // ТекстXMLвВСтроку - utf-8

Приходит статус ответа 200, вроде как всё хорошо.

Сам ответ только "<?xml version="1.0" encoding="UTF-8"?><respond><order_respond><order_number></order_number><pony_order_number></pony_order_number><return_code>999</return_code><message_text>Unknown error:Changed database context to 'Main'.</message_text><route></route></order_respond></respond>"

То есть, подсоединение есть, а адекватной реакции нет.

Текст запроса в первом комментарии.
1 Владимир1С
 
25.12.17
17:59
<?xml version="1.0" encoding="utf-8"?>
  <Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xmlns:xsd="http://www.w3.org/2001/XMLSchema"; xsi:type="OrderRequest">
  <Id>Из-ЦО-0053497:#:15.08.17:#:5670</Id>
  <Mode>Order</Mode>
  <OrderList>
    <Order>    <ClientsNumber>83410</ClientsNumber>
    <Payment>  <Mode>CashBySender</Mode>  <PaymentContract> <Number>12 - 52467</Number> </PaymentContract>  </Payment>
    <ServiceList><Service xsi:type="DeliveryService">
          <Id>1</Id>
          <PickupDate>2041</PickupDate>
          <Mode>Express</Mode>
              <Waybill> <Number>15.08.17</Number> </Waybill>
            <Sender>
              <Address> <Country>Россия</Country>
                      <Region>Россия</Region>
                      <District></District>
                      <PostCode></PostCode>
                      <City></City>    
                      <StreetAddress></StreetAddress>
              </Address>
               <Company> <Name>ООО "Вестленд Центр"</Name> </Company>
                  <PersonList> <Person> <Name>Плясулин Вячеслав</Name>
                              <PhoneList> <string>8-495-6</string> </PhoneList>
                              </Person>
                  </PersonList>
           </Sender>

          <Recipient>
            <Address>
              <Country>Россия</Country>
              <Region></Region>
              <District> </District>
              <PostCode>248003</PostCode>
              <City>Калуга</City>
              <StreetAddress>248003, Калужская область, г. Калуга Ул.Белинского , квартиры нет</StreetAddress>
            </Address>
            <Company> <Name></Name></Company>
            <PersonList> <Person> <Name>малыхина  </Name> <PhoneList> <string>792</string> </PhoneList> </Person> </PersonList>
            <Unformalized></Unformalized>
          </Recipient><CargoList> <Cargo>
              <Id>83410</Id>
              <Barcode></Barcode>
              <Description>Одежда</Description>
              <Packing>
                <Type></Type>
              </Packing>
              <Dimentions>
                <Length>0</Length>
                <Width>0</Width>
                <Height>0</Height>
              </Dimentions>
              <Weight>0</Weight>
              <IsOversized>false</IsOversized>
              <IsDangerous>false</IsDangerous>
              <Cost>5670</Cost>
            </Cargo></CargoList><ItemList><Item><Id>1</Id><CargoId>1</CargoId><Barcode>05123641108451300-6</Barcode><Description>толст жен 3641 MOROCCO</Description><Weight>0</Weight><Cost>1990</Cost><Count>1</Count></Item><Item><Id>2</Id><CargoId>1</CargoId><Barcode>05123641104551300-7</Barcode><Description>толст жен 3641 SMALT</Description><Weight>0</Weight><Cost>1990</Cost><Count>1</Count></Item><Item><Id>3</Id><CargoId>1</CargoId><Barcode>05164425128852700-4</Barcode><Description>юбка 4425 LAZURITE UF0343</Description><Weight>0</Weight><Cost>1690</Cost><Count>1</Count></Item></ItemList><Unformalized></Unformalized> <DocumentList>
    <DeliveryDocument xsi:type="WarrantyLetter">
      <IsRequired>true</IsRequired>
    </DeliveryDocument>
    <DeliveryDocument xsi:type="ProxyLetter">
      <IsRequired>true</IsRequired>
      <Type>PonyToCourier</Type>
</DeliveryDocument>
    </DocumentList> </Service></ServiceList></Order></OrderList></Request>
2 Владимир1С
 
25.12.17
18:02
Что я делаю не так?
3 big
 
26.12.17
05:31
Скопипастил из (2) текст в файл. Мой XML-reader ругался на ";" в этой строке
<Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";; xmlns:xsd="http://www.w3.org/2001/XMLSchema";; xsi:type="OrderRequest">

и файл не открывал.

Убрал ";" и всё открылось. М.б. из-за этого?
4 Владимир1С
 
26.12.17
09:33
(3) в исходном варианте ";" нет, это сайт выставил. Может быть, и приёмная сторона тоже выставляет? Это надо проверить.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.