Имя: Пароль:
1C
1С v8
v8: неверная структура файла
0 liliputochka
 
19.07.13
10:59
Помогите, создается xml-файл с предопределенной структурой. Проверяю в тестовом режиме на ошибки. Говорит:"не верная структура файла". Где и что не верно - не говорит.
Вот сам xml-файл:

<?xml version="1.0" encoding="utf-8"?>
<root xmlns="http://spsr.ru/webapi/WA/1.0">
   <Params Name="WAXmlConverter" Ver="1.3" xmlns="http://spsr.ru/webapi/WA/1.0"/>
   <XmlConverter>
       <GeneralInfo ContractNumber="7701675521" TotalShipments="0" TotalInsurance="0.00" TotalDeclared="0.00" TotalCOD="0.00" TotalPieces="0" TotalWeight="0.000">
           <Invoice Action="N" ShipmentNumber="0" PickUpType="C" ProductCode="PelSt" PiecesCount="1" InsuranceType="INS" InsuranceSum="5.00" CODGoodsSum="10.00" CODDeliverySum="2.00">
               <Shipper Region="Московская область" City="Москва" Address="ул.Шоссейная д.6 стр.1 оф.9" CompanyName="FED"/>
               <Receiver Region="Москва" City="Москва" Address="ул.Шоссейная д.6 стр.1 оф.9"/>
               <AdditionalServices COD="0" PartDelivery="0" ReturnDoc="0" CheckContents="0" Verify="0" TryOn="0" ByHand="1" PaidByReceiver="0" AgreedDelivery="0" IDC="0"/>
               <SMS SMStoShipper="0" SMStoReceiver="0"/>
               <Pieces>
                   <Piece PieceID="0" Description="24" Weight="0.000" Length="0.0" Width="0.0" Depth="0.0">
                       <SubPieces Description="Обувь" Cost="17.00" Quantity="1"/>
                   </Piece>
               </Pieces>
           </Invoice>
       </GeneralInfo>
   </XmlConverter>
</root>

Там где нули - там числа с необязательным заполнением.
1 Infsams654
 
19.07.13
11:32
(0) в каком еще тестовом режиме? У меня в MS XML Notepad отлично открывается
2 hhhh
 
19.07.13
11:35
первую строчку имеет смысл проверить
3 liliputochka
 
19.07.13
11:50
(2) вот эту:
<?xml version="1.0" encoding="utf-8"?>
4 liliputochka
 
19.07.13
11:52
(1) мне дан сайт где можно тестово проверить работу xml-файла. Вот я там и проверяю.
5 Infsams654
 
19.07.13
12:07
(4) ну значит файл не соответствует формату, который понимает сайт.
Есть описание формата ?
6 liliputochka
 
19.07.13
12:10
(5) есть, структура файла:

<root xmlns="http://spsr.ru/webapi/xmlconverter/номер версии протокола файла">                                
   <Params атрибуты />                            
   <XmlConverter>                            
       <GeneralInfo атрибуты>                        
           <Invoice атрибуты>                    
               <Shipper атрибуты />                
               <Receiver атрибуты />                
               <CustomerInfo атрибуты />                
               <AdditionalServices атрибуты />                
               <SMS атрибуты />                
               <Pieces>                
                   <Piece атрибуты />            
                       <SubPiece атрибуты />        
                   </Piece>            
               </Pieces>                
           </Invoice>                    
       </GeneralInfo>                        
   </XmlConverter>                            
</root>                                


Описание очень велико, даже не знаю как его размещать
7 liliputochka
 
19.07.13
12:14
ТЕГИ И ИХ АТРИБУТЫ                            ТЕГ/АТРИБУТ ОБЯЗАТЕЛЬНЫЙ?    ТИП ДАННЫХ    Кол-во символов    СПИСОК ЗНАЧЕНИЙ    ОПИСАНИЕ
<root>                            ДА                Обозначает тело документа. Указывается в документе только один раз
   <Params                        ДА                Служебная информация для обработки XML-файла. Подробнее см. раздел "ПЕРЕСЫЛКА XML-ФАЙЛА В "СПСР-ЭКСПРЕСС" И ЕГО ОБРАБОТКА" на листе "Заполнение XML-файла"
       Name                    ДА    текст        "WAXmlConverter - синхронная обработка xml-реестра
WANewInvoicesByFile - ассинхронная обработка xml-реестра"    
       Ver                    ДА    текст        """1.3"" для Name=""WAXmlConverter""
""1.0"" для Name=""WANewInvoicesByFile"""    
       xmlns                    ДА    текст        "http://spsr.ru/webapi/WA/1.0"    
   />                                        
   <XmlConverter>                        ДА                
       <GeneralInfo                    ДА                Общая информация по накладным. Указывается в документе только один раз
           ContractNumber                ДА    целое положительное число    10        Индивидуальный клиентский номер (далее - ИКН)
           TotalShipments                НЕТ    целое положительное число    6    от "1" до "100000"    Общее количество накладных в реестре
           TotalInsurance                НЕТ    положительное число с 2-мя знаками после точки    15        Суммарная оценочная стоимость (в рублях) - сумма значений атрибутов InsuranceSum по всем накладным, для которых для атрибута InsuranceType задано значение "INS"
           TotalDeclared                НЕТ    положительное число с 2-мя знаками после точки    15        Суммарная объявленная ценность (в рублях) - сумма значений атрибутов InsuranceSum по всем накладным, для которых для атрибута InsuranceType задано значение "VAL"
           TotalCOD                НЕТ    положительное число с 2-мя знаками после точки    15        Сумма наложенного платежа в рублях по накладным с дополнительной услугой "Оплата товара в момент вручения". Если заданы значения атрибутов и TotalCOD и Cost и PrapaidSum, то значение атрибута TotalCOD игнорируется
           TotalPieces                НЕТ    целое положительное число    9        Общее количество вложимых во всех накладных
           TotalWeight                НЕТ    положительное число с 3-мя знаками после точки    15        Общий вес (в кг) всех вложимых во всех накладных
       >                                    
       <Invoice                    ДА                Информация об одной накладной. Может указываться в документе несколько раз. Максимальное количество - 150.
           Action                ДА    текст    1    "N - режим создания накладной
U - режим обновления информации по существующей накладной, которая еще не перерегистрирована"    Действие, которое нужно выполнить с накладной. Если для накладной, которая уже существует в ИС, задано значение "N", то данная накладная игнорируется. Если для накладной, которая отсутствует в ИС, задано значение "U", то в ИС будет создана новая накладная. Если задано значение "U" для накладной, которая уже существует в ИС, то в теге <Invoice> должен быть задан один из атрибутов: ShipmentNumber или ShipRefNum, а также указана информация по всем вложимым этой накладной
           ShipmentNumber                НЕТ (ДА, если для атрибута Action задано значение "U", а значение атрибута ShipRefNum не задано)    целое положительное число    20        Номер накладной
           ShipRefNum                НЕТ (ДА, если для атрибута Action задано значение "U", а значение атрибута ShipmentNumber не задано)    текст    50        Уникальный номер отправления, присвоенный отправителем
           PickUpType                ДА    текст    1    """W"" - в окне приема
""C"" - по вызову"    Вид приема
           ProductCode                ДА    текст    5    """Dox"" - Калибри-документ
""Gep13"" - Гепард-Экспресс 13
""Gep18"" - Гепард-Экспресс 18
""GepEx"" - Гепард-Экспресс
""PelSt"" - Пеликан-Стандарт
""PelEc"" - Пеликан-Эконом
""BisCa"" - Бизон-Карго
""BisAv"" - Бизон-Авиа
""Freig"" - Фрахт
""PelOn"" - Пеликан-Онлайн "    Вид сервиса
           FullDescription                НЕТ (Рекомендуется заполнять, т. к. полная информация о вложимом позволяет быстрее и наиболее правильно обрабатывать отправление)    текст    200        Полная информация о содержимом отправления - вложимом                                                          
           PiecesCount                ДА    целое положительное число    5    от "1" до "99999"    Количество вложимых в накладной
           DeliveryDate                НЕТ    дата в формате ГГГГММДД    20        Дата доставки. Окончательная дата будет согласована в с получателем
           DeliveryTime                НЕТ    текст    2    """AM"" - с 9:00 до 14:00
""PM"" - с 14:00 до 18:00
""WD"" - с 9:00 до 18:00"    Время доставки. Окончательное время будет согласовано в с получателем
           InsuranceType                ДА    текст    3    """INS"" - заявлена услуга ""Страхование отправлений/грузов""
""VAL""- заявлена услуга ""Доставка отправлений с объявленной ценностью"". Если в файле хотя бы для одного атрибута Description тега <Piece> задано значение ""18"" -  драгоценности, то в данном атрибуте может быть задано только значение ""INS""                                                             "    Дополнительные услуги "Страхование отправлений/грузов" и "Доставка отправлений с объявленной ценностью". Услуги доступны только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
           InsuranceSum                ДА    неотрицательное число с 2-мя знаками после точки    15    Если для атрибута InsuranceType задано значение "VAL", то максимальное значение стоимости - "499999.99"    Стоимость оценки отправления
           CODGoodsSum                ДА    неотрицательное число с 2-мя знаками после точки    15        Стоимость товара наложенным платежом в рублях
           CODDeliverySum                ДА    неотрицательное число с 2-мя знаками после точки    15    "Сумма - сумма, которая взымается с получателя и передается отправителю
""0"" или пустое значение - деньги за доставку с получателя не берутся"    Стоимость доставки наложенным платежом в рублях. Данный атрибут может быть задан, если для атрибута COD задано значение "1". Если для атрибута COD задано значение "0" или оно опустое, то значение атрибута CODDeliverySum игнорируется
       >                                    
           <Shipper                НЕТ                Информация об отправителе. Указывается в теге <Invoice> только один раз. Для того чтобы информация об отправителе выгружалась из XML-файла, в данном теге должны быть заполнены атрибуты Region, City, Address и один из атрибутов CompanyName или ContactName. Если не заполнен один из атрибутов Region, City или Address и/или не заполнены атрибуты CompanyName или ContactName, то при конвертировании используется информация из ИС по указанному в файле ИКН
               PostCode            НЕТ    текст    6        Почтовый индекс отправителя
               Country            НЕТ    текст    255        Страна отправителя
               Region            ДА    текст    255        Регион отправителя
               City            ДА    текст    255        Населенный пункт отправителя
               Address            ДА    текст в формате: улица, дом, строение, квартира/офис, код домофона    100        Адрес отправителя
               CompanyName            НЕТ (ДА, если в теге <Shipper> не заполнен атрибут ContactName)    текст    100        Наименование организации-отправителя
               ContactName            НЕТ (ДА, если в теге <Shipper> не заполнен атрибут CompanyName)    текст в формате: Ф. И. О. полностью с пробелами    60        Ф. И. О. (полностью с пробелами) отправителя или контактного лица в компании-отправителе
               Phone            НЕТ    текст в формате: номера телефонов с "+7" или "8" и кодом города через запятую    20        Контактные телефоны отправителя
               Email            НЕТ    текст    255        Адрес электронной почты отправителя
           />                                
           <Receiver                ДА                Информация о получателе. Указывается в теге <Invoice> только один раз
               PostCode            НЕТ    текст    6        Почтовый индекс получателя
               Country            НЕТ    текст    255        Страна получателя
               Region            ДА    текст    255        Регион получателя. Город, указанный в атрибуте City должен находиться в регионе, указанной в данном атрибуте
               City            ДА    текст    255        Населенный пункт получателя
               Address            ДА    текст в формате: улица, дом, строение, квартира/офис, код домофона    100        Адрес получателя
               CompanyName            НЕТ    текст    100        Наименование организации-получателя
               ContactName            НЕТ    текст в формате: Ф. И. О. полностью с пробелами    60        Ф. И. О. (полностью с пробелами) получателя
               Phone            НЕТ    текст в формате: номера телефонов с "8" и кодом города через запятую    255        Контактные телефоны получателя.  Желательно указывать мобильный и стационарный телефоны. Первый номер телефона должен быть не длинее 20 символов
               Comment            НЕТ    текст    100        Дополнительные комментарии и пожелания по процессу вручения отправления получателю
               ConsigneeСollect            НЕТ    текст    1    """Y"" - доставка отправления ""до востребования"";  
если атрибут не заполнен, то считается, что услуга не используется"    Дополнительная услуга "До востребования". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               Email            НЕТ    текст    255        Адрес электронной почты получателя
           />                                
           <CustomerInfo                НЕТ                Дополнительная информация. Указывается в теге <Invoice> только один раз
               Info1            НЕТ    текст    255        Дополнительная информация, в том числе по процессу доставки отправления
               Info2            НЕТ    текст    255        
               Info3            НЕТ    текст    255        
               Info4            НЕТ    текст    255        
               Info5            НЕТ    текст    255        
               Info6            НЕТ    текст    255        
               Info7            НЕТ    текст    255        
           />                                
           <AdditionalServices                НЕТ                
               COD            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Оплата товара в момент вручения". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               PartDelivery            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Частичная доставка". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов").
               ReturnDoc            НЕТ    целое положительное число    1    """0"" или пустое значение - услуга не заявлена
""1"" - заявлена услуга ""Возврат сопроводительных документов""
""2"" - заявлена услуга ""Возврат сопроводительных документов"" и дополнительные сервисы ""Проверка заполняемых документов"" и ""Приоритетное получение документов""
""3"" - заявлена услуга ""Возврат сопроводительных документов"" и дополнительный сервис ""Приоритетное получение документов"""    Дополнительная услуга "Возврат сопроводительных документов",             а также дополнительные сервисы: "Проверка заполняемых документов" и "Приоритетное получение документов". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               CheckContents            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Проверка комплектности". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               Verify            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Проверка работоспособности". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               TryOn            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Примерка". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               ByHand            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Доставка лично в руки". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               PaidByReceiver            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Оплата получателем". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов"), а также если подписано соответствующее дополнительное соглашение к базовому договору или есть гарантийное письмо
               AgreedDelivery            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Согласование даты и времени доставки".    Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               IDC            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "Индивидуальный контроль доставки". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
           />                                
           <SMS                НЕТ                
               SMStoShipper            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "SMS-оповещение Отправителя". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов")
               SMSNumberShipper            НЕТ (ДА, если для атрибута SMStoShipper задано значение "1")    номер телефона в формате: "8" плюс код города плюс семь цифр телефона без разделителей между ними    11        Номер телефона для SMS-оповещения Отправителя
               SMStoReceiver            НЕТ    целое положительное число    1    """1"" - услуга заявлена
""0"" или пустое значение - услуга не заявлена"    Дополнительная услуга "SMS-оповещение Получателя". Услуга доступна только для определенных сервисов (см. таблицу "Использование дополнительных услуг для сервисов" на листе "Доп. услуги и вложимое сервисов").
               SMSNumberReceiver            НЕТ (ДА, если для атрибута SMStoReceiver задано значение "1")    номер телефона в формате: "8" плюс код города плюс семь цифр телефона без разделителей между ними    11    Если данный телефон не указан, то в системе по умолчанию сохраняется номер, указанный в атрибуте Phone тега <Receiver>    Номер телефона для SMS-оповещения получателя
           />                                
           <Pieces>                ДА                Информация о вложимых накладной. Указывается в теге <Invoice> только один раз. Если для атрибута Action у накладной, которая уже существует в ИС, задано значение "U", то должна быть указана информация по всем вложимым этой накладной
               <Piece                            Информация об одном вложимом накладной. Может указываться в теге <Pieces> несколько раз
                   PieceID        НЕТ    12-значное число, которое начинается с "20"    12        Штрихкод (далее - ШК) вложимого из диапазона, выделенного ООО "СПСР-Экспресс".
                   ClientBarcode        НЕТ    текст    255        ШК вложимого, присвоенный отправителем
                   Description        ДА    целое положительное число    2    """15"" – документы и печатная продукция
""16"" – товары народного потребления (без техники)
""17"" – техника и электроника без ГСМ (единичное количество)
""18"" – драгоценности
""19"" – медикаменты и БАДы
""20"" – косметика и парфюмерия
""21"" – продукты питания (партия)
""22"" – техника и электроника с ГСМ (партия)
""23"" – опасные грузы
""24"" – товары народного потребления (без техники, партия)"    Описание вложимого в виде цифрового кода. Виды вложимого, допустимые для сервисов см. в таблице "Допустимые виды вложимого для сервисов" на листе "Доп. услуги и вложимое сервисов"
                   Weight        НЕТ    положительное число с 3-мя знаками после точки    15        Вес вложимого в кг
                   Length        НЕТ    положительное число с 1-м знаком после точки    15        Длина вложимого в см
                   Width        НЕТ    положительное число с 1-м знаком после точки    15        Ширина вложимого в см
                   Depth        НЕТ    положительное число с 1-м знаком после точки    15        Высота вложимого в см
               >                            
                   <SubPiece        НЕТ                Информация об одном субвложимом накладной. Может указываться в теге <Piece> несколько раз
                       Description    ДА    текст    255        Описание субвложимого
                       Cost    ДА    неотрицательное число с 2-мя знаками после точки    15        Цена субвложимого в рублях
                       ProductCode    НЕТ    текст    255        Номер артикула, код номенклатуры.
                       Info    НЕТ    текст    255        Любая дополнительная информация (номер заказа, код номенклатурной группы и т. п.)
                       Quantity    НЕТ    целое число    3        Количество товара
                   />                        
               </Piece>                            
           </Pieces>                                
       </Invoice>                                    
       </GeneralInfo>                                    
   </XmlConverter>                                        
</root>
8 1Сергей
 
19.07.13
12:16
тег <Params не закрыт
9 1Сергей
 
19.07.13
12:17
(8) сторно
10 liliputochka
 
19.07.13
12:21
(8) вот же он закрыт:
<Params Name="WAXmlConverter" Ver="1.3" xmlns="http://spsr.ru/webapi/WA/1.0"/>

закрываем />
11 liliputochka
 
19.07.13
12:21
(9) - ничего не понятно.
12 Infsams654
 
19.07.13
12:29
(7) по описанию тэг Invoice принадлежит XmlConverter на одном уровне с GeneralInfo , а в файле он внутри GeneralInfo