|   |   | 
| 
 | Как в отладчике посмотреть содержимое XML файла? | ☑ | ||
|---|---|---|---|---|
| 0
    
        dft2014 12.10.18✎ 14:48 | 
        Создаю XML-файл, заполняю его. На выходе получаю пустой файл. Как мне в отладчике посмотреть записывается что-то в него или нет? Ниже код:
 Процедура Web() Экспорт ЗаписьXML = Новый ЗаписьXML; ЗаписьXML.ОткрытьФайл("C:\OBMEN\staff.xml"); ЗаписьXML.ЗаписатьОбъявлениеXML(); ЗаписьXML.ЗаписатьНачалоЭлемента("STAFF"); ЗаписьXML.ЗаписатьАтрибут("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance"); Для каждого Выборка из ТЗ_на_отправку Цикл ЗаписьXML.ЗаписатьНачалоЭлемента("Person"); ЗаписьXML.ЗаписатьНачалоЭлемента("Number"); ЗаписьXML.ЗаписатьТекст(Выборка.PersonnelNumber); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("LastName"); ЗаписьXML.ЗаписатьТекст(Выборка.Surname); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("FirstName"); ЗаписьXML.ЗаписатьТекст(Выборка.Name); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("MiddleName"); ЗаписьXML.ЗаписатьТекст(Выборка.Patronymic); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("Sex"); ЗаписьXML.ЗаписатьТекст(Строка(Выборка.Sex)); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("BirthDate"); ЗаписьXML.ЗаписатьТекст(Строка(ОбработатьДату(Выборка.BirthDate))); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("TakeDate"); ЗаписьXML.ЗаписатьТекст(Строка(ОбработатьДату(Выборка.ReceptionDate))); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("Post"); ЗаписьXML.ЗаписатьТекст(Строка(Выборка.Position)); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("Subdivision"); ЗаписьXML.ЗаписатьТекст(Выборка.SubdivisionCode); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("VacationDays"); ЗаписьXML.ЗаписатьТекст(Выборка.VacationDays); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьКонецЭлемента(); КонецЦикла; ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.Закрыть(); ЗаписьXML_Состояния.ЗаписатьКонецЭлемента(); ЗаписьXML_Состояния.Закрыть(); КонецПроцедуры | |||
| 1
    
        Ёпрст гуру 12.10.18✎ 14:52 | 
        (0) ну, файло явно не пустое.
 Как проверил, что оно пустое ? | |||
| 2
    
        Ёпрст гуру 12.10.18✎ 14:52 | 
        как минимум, там будет 1 элемент и запись о пространстве имён     | |||
| 3
    
        Ёпрст гуру 12.10.18✎ 14:54 | 
        а так, ЗаписьXML.Закрыть() - возвращает строку, весь текст твоей xml     | |||
| 4
    
        Ёпрст гуру 12.10.18✎ 14:54 | 
        можешь глядеть в отладчике     | |||
| 5
    
        dft2014 12.10.18✎ 14:55 | 
        <?xml version="1.0" encoding="UTF-8"?>
 <STAFF xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Person> <Number>0000005960</Number> <LastName>Иванов</LastName> <FirstName>Иван</FirstName> <MiddleName>Иванович</MiddleName> <Sex>Мужской</Sex> <BirthDate>1987-09-28T00:00:00</BirthDate> <TakeDate>2012-12-13T00:00:00</TakeDate> <DismissDate>2013-07-31T00:00:00</DismissDate> <Post>Менеджер</Post> <Subdivision>174</Subdivision> <VacationDays/> </Person> <Person> <Number>0002005009</Number> <LastName>Петров</LastName> <FirstName>Петр</FirstName> <MiddleName>Петрович</MiddleName> <Sex>Мужской</Sex> <BirthDate>1995-03-06T00:00:00</BirthDate> <TakeDate>2017-01-16T00:00:00</TakeDate> <DismissDate>0001-01-01T00:00:00</DismissDate> <Post>Юрист</Post> <Subdivision>254</Subdivision> <VacationDays> | |||
| 6
    
        dft2014 12.10.18✎ 14:55 | 
        +(5) Это я на выходе такое получаю.     | |||
| 7
    
        Ёпрст гуру 12.10.18✎ 14:56 | 
        (6) и ? Че не устраивает то ? :)     | |||
| 8
    
        dft2014 12.10.18✎ 15:03 | 
        (7) Видите, блок VacationDays пустой! И незакрытый! Почему?! Там у меня цифры должны подтягиваться (тип число).     | |||
| 9
    
        Mankubus 12.10.18✎ 15:05 | 
        (8) значит у тебя в выборке пустота в этом поле     | |||
| 10
    
        Mankubus 12.10.18✎ 15:06 | 
        (8) и он закрытый. Видишь там символ / есть     | |||
| 11
    
        dft2014 12.10.18✎ 15:13 | 
        (9) Да, пустота может быть в некоторых случаях, но я думала, что в этом случае, будет заполнено вот так:
 <VacationDays></VacationDays> Разве не так? | |||
| 12
    
        Ёпрст гуру 12.10.18✎ 15:18 | 
        (11) это одно и тоже     | |||
| 13
    
        Darych 12.10.18✎ 15:19 | 
        не так.. тебе шашечки или ехать?     | |||
| 14
    
        dft2014 12.10.18✎ 15:19 | 
        (12) и (13) противоречите друг другу     | |||
| 15
    
        Darych 12.10.18✎ 15:20 | 
        (14) с чего б?     | |||
| 16
    
        sitex naïve 12.10.18✎ 15:21 | 
        (14) Такой синтаксис элемента называется самозакрывающийся.     | |||
| 17
    
        Ёпрст гуру 12.10.18✎ 15:23 | 
        (14) 
 Ознакомься, как оформляется пустой элемент https://msdn.microsoft.com/ru-ru/library/ms256085(v=vs.120).aspx | |||
| 18
    
        Serg_1960 12.10.18✎ 15:40 | 
        Хм... кто кого тут путает?
 В файле (5) первый <Person> - закрыт, второй - нет. Ок? В первом <Person> элемент VacationDays - пустой, а во втором - нет и при попытке вывода значения - исключительная ситуация ( и судя по всему - без анализа ошибки). | |||
| 19
    
        dft2014 12.10.18✎ 17:14 | 
        Всем спасибо, разобралась!     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |