Имя: Пароль:
1C
1С v8
XML. Заголовок файла . Кто нибудь разбирается??
0 SerGa
 
01.03.12
12:07
Контрагент хочет электронный обмен данными в XML. Выложил формат.

Файл должен начинаться строками:
1.    <?xml version="1.0" encoding="UTF-8"?>
2.    <soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-     envelope" xmlns:ru="ru.protek.epost.ws.EPostService">

     <soap:Header>
3.                        <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
                                       <wsse:UsernameToken Id="UsernameToken_1303287064266_1">
                                                      <wsse:Username>?</wsse:Username>
                                                      <!--логин:-->
<wsse:Password Type="PasswordText">?</wsse:Password>
                                                      <!--пароль:-->
                                       </wsse:UsernameToken>
                       </wsse:Security>
       </soap:Header>
  <soap:Body>
     <ru:createInvoice>      


В 1С делаю так  
ОбъектXML = Новый ЗаписьXML;
ОбъектXML.ОткрытьФайл(ПутьКФайлу);
Первую строку заголовка делаю так
ОбъектXML.ЗаписатьОбъявлениеXML();

а вот как создать 2ую и 3ю строку непонятно.  ОбъектXML.ЗаписатьНачалоЭлемента и  ОбъектXML.ЗаписатьАтрибут  не подходят...

Каким методом создать эти строки??
1 AaNnDdRrEeYy
 
01.03.12
12:13
Есть xsd файл?
2 KUBIK
 
01.03.12
12:14
ЗаписьXML.ЗаписатьТекст(XMLСтрока(.......))
3 badboychik
 
01.03.12
12:17
Запись.ЗаписатьНачалоЭлемента("Envelope")
Запись.ЗаписатьСоответствиеПространстваИмен("soap", "http://www.w3.org/2003/05/soap-  envelope");

что то типа этого
4 SerGa
 
01.03.12
12:19
(1) нет
(2)  попробую
(3) там после http://www.w3.org/2003/05/soap-  envelope  ещё идет одна ссылка     xmlns:ru="ru.protek.epost.ws.EPostService"
5 badboychik
 
01.03.12
12:23
ну я ж только начало написал. По такому же принципу и атрибуты пишутся
6 SerGa
 
01.03.12
12:24
(4) она идет как бы в одном блоке  < > .  Мне нужно 2 раза подряд вызвать Запись.ЗаписатьСоответствиеПространстваИмен ?
7 lbdyjujhcr
 
29.03.12
13:07
ИмяФайлаXML = "=======";
   
   Файл = Новый ЗаписьXML;
   //ПараметрыЗаписиXML = Новый ПараметрыЗаписиXML("UTF-8");
   ПараметрыЗаписиXML = Новый ПараметрыЗаписиXML("UTF-8", "1.0", Ложь);
   Файл.ОткрытьФайл(ИмяФайлаXML,ПараметрыЗаписиXML);
   
   Файл.ЗаписатьОбъявлениеXML();
   ТипXML = новый ТипДанныхXML("Envelope","http://www.w3.org/2003/05/soap-envelope");    
   Файл.ЗаписатьНачалоЭлемента("Envelope",ТипXML.URIПространстваИмен);
   Файл.ЗаписатьСоответствиеПространстваИмен("soap", "http://www.w3.org/2003/05/soap-envelope");
   ТипXML1 = новый ТипДанныхXML("ru","ru.protek.epost.ws.EPostService");    
   Файл.ЗаписатьСоответствиеПространстваИмен("ru", "ru.protek.epost.ws.EPostService");

   Файл.ЗаписатьНачалоЭлемента("Header","http://www.w3.org/2003/05/soap-envelope");
   
   ТипXML3 = новый ТипДанныхXML("Security","http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");    
   Файл.ЗаписатьНачалоЭлемента("Security",ТипXML3.URIПространстваИмен);
   Файл.ЗаписатьСоответствиеПространстваИмен("wsse", "http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");
   
   
   Файл.ЗаписатьНачалоЭлемента("UsernameToken","http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");
   
   Файл.ЗаписатьАтрибут( "Id", "UsernameToken_1303287064266_1");
   Файл.ЗаписатьНачалоЭлемента("Username","http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd");
       
   Файл.ЗаписатьКонецЭлемента();
   
   
   Файл.ЗаписатьКонецЭлемента();
   
   Файл.ЗаписатьКонецЭлемента();
   
   Файл.ЗаписатьКонецЭлемента();
   
   
   Файл.ЗаписатьКонецЭлемента();
   
   
   Файл.Закрыть();
2 + 2 = 3.9999999999999999999999999999999...