|   |   | 
| 
 | запись файле xml через СериализаторXDTO | ☑ | ||
|---|---|---|---|---|
| 0
    
        04347 16.06.16✎ 17:11 | 
        Внешняя обработка, выгружает данные XML в безопасном режиме. В модуле объекта не могу правильно использовать СериализаторXDTO, в файле xml получаются лишние строки. Как правильно записать7
 (отрывок кода) ЗаписьXML.ЗаписатьНачалоЭлемента("customer"); //Краткое наименование отправителя ЗаписьXML.ЗаписатьТекст(Строка(ВыборкаДетальныеЗаписиТТН.Организация)); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("loadpoint"); //Адрес пункта погрузки ЗаписьXML.ЗаписатьТекст(СведенияООрганизации.ЮридическийАдрес); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("unloadpoint"); //Адрес пункта разгрузки ЗаписьXML.ЗаписатьТекст(ВыборкаДетальныеЗаписиТТН.АдресДоставки); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьНачалоЭлемента("forwarder"); //ФИО водителя-экспедитора. ЗаписьXML.ЗаписатьТекст(Строка(ВыборкаДетальныеЗаписиТТН.Водитель)); ЗаписьXML.ЗаписатьКонецЭлемента(); ЗаписьXML.ЗаписатьКонецЭлемента(); //конец transport //заполняем табличную часть ЗаполнитьТабличнуюЧастьТовары(ВыборкаДетальныеЗаписиТТН.Ссылка, ЗаписьXML, ДатаДокумента); ЗаписьXML.ЗаписатьКонецЭлемента(); КоличествоДокументов = КоличествоДокументов + 1; //СериализаторXDTO.ЗаписатьXML(ЗаписьXML, Неопределено); // !проблема, при записи появляются лишние строки СериализаторXDTO.ЗаписатьXML(ЗаписьXML, ); // !проблема, при записи появляются лишние строки | |||
| 1
    
        ovrfox 16.06.16✎ 17:15 | 
        Какие лишние строки? Можно пример?     | |||
| 2
    
        04347 16.06.16✎ 17:34 | 
        (1)
 вот эта строка <Undefined xsi:nil="true" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns=""/> у меня выгружаются в цикле данные по 11 документам и 11 раз выходит эта строка | |||
| 3
    
        ovrfox 16.06.16✎ 17:58 | 
        Честно говоря не знаю, но скорее всего зависит от параметров.
 Но зачем вообще писать через сериализатор? У тебя нет объектов 1С, которые нужно сериализовать Используй метод "ОткрытьФайл" объекта ЗаписьXML и метод "Закрыть" того же объекта (или только закрыть, если просто нужна строка XML) | |||
| 4
    
        Fragster гуру 16.06.16✎ 17:59 | 
        СериализаторXDTO.ЗаписатьXML(ЗаписьXML, Неопределено); - это и есть твои "лишние строки"
 СериализаторXDTO.ЗаписатьXML(ЗаписьXML, ЭтотОбъект); | |||
| 5
    
        ovrfox 16.06.16✎ 18:03 | 
        (4) Нет, сериализация выполняется в некотором простарнстве имен. Его нужно указать или будет использовано умолчание.
 Возможно проблема в том что в один файл несколько раз сериализовуют? ТОгда каждая сериализация записывает свой заголовок. | |||
| 6
    
        Fragster гуру 16.06.16✎ 18:03 | 
        (5) пробовал сделать СериализаторXDTO.ЗаписатьXML(ЗаписьXML, ДокументОбъект) когда-нибудь?     | |||
| 7
    
        ovrfox 16.06.16✎ 18:06 | 
        Нет и я вообще не вижу параметра "ДокументОбъект" в примере кода. Может это параметр "ЭтотОбъект"?     | |||
| 8
    
        04347 16.06.16✎ 18:22 | 
        (4) вы правы, убрала СериализаторXDTO и все правильно записалось     | |||
| 9
    
        04347 16.06.16✎ 18:30 | 
        у меня нет ДокументОбъект , использовать  "ОткрытьФайл" я не могу, в безопасном режиме не пропускает     | |||
| 10
    
        Карупян 16.06.16✎ 18:31 | 
        только не понятно причем здесь сериализатор, когда мы руками хмл формируем?     | |||
| 11
    
        Fragster гуру 16.06.16✎ 19:06 | 
        (7) я про "абстрактный" объект типа ДокументОбъект.хххх, например     | |||
| 12
    
        ovrfox 17.06.16✎ 09:17 | 
        Проблема решена?
 Или остался вопрос как в безопасном режиме записать файл? Ответ - никак | |||
| 13
    
        Fragster гуру 17.06.16✎ 11:45 | 
        (12) для этого предназначены общие модули "ДополнительныеОтчетыИОбработкиВБезопасномРежиме*"     | |||
| 14
    
        Fragster гуру 17.06.16✎ 11:47 | ||||
| 15
    
        ovrfox 17.06.16✎ 12:17 | 
        Можно еще раз как для обработки, которая загружена в качестве дополнительной и для которой установлен безопасный режим (потому как понятно, что если режим не безопасный , то ограничений нет) сохранить что либо в файл?     | |||
| 16
    
        Fragster гуру 17.06.16✎ 12:19 | 
        (15) 
 "В демонстрационной базе БСП возможность расширения безопасного режима представлена в обработке Демо: Загрузка номенклатуры из прайс-листа (сценарное выполнение) в справочнике Дополнительные отчеты и обработки. Эта обработка является аналогом обработки Демо: Загрузка номенклатуры из прайс-листа (профили безопасности) и адаптирована к выполнению в безопасном режиме." | |||
| 17
    
        ovrfox 17.06.16✎ 12:25 | 
        Я правильно понимаю, что в БСП реализованы функции, которые фактически выполняются при отключенном безопасном режиме, но их вызов можно осуществлять из безопасного режима?
 Т.е. фактически ответ никак - правильный? | |||
| 18
    
        Fragster гуру 17.06.16✎ 12:44 | 
        (17) рассматривая сферический безопасный режим в вакууме - мы видим, что если в конфигурации реализован интерфейс для реализации функций, запрещенных безопасным режимом, то эти функции выполнить можно.
 В конфигурациях на основе БСП такие функции есть. Значит, из безопасного режима в конфигурациях на основе БСП можно выполнять функции типа сохранения файлов, если выполнить правильную настройку подключаемой внешней обработки. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |