последовательность содержит более одного прямого дочернего элемента или включает в себя другой составной объект в качестве такого элемента.
Универсальный конвертер XML в Таблицу значений + вывод XML в печатную форму (v 7.7)
Универсальная обработка для 1С 7.7 по конвертации XML-файла заранее неизвестной структуры в Таблицу значений с возможностью вывода наглядной печатной формы формата MXL (с возможностью свёртки узлов XML) и/или наглядной печатной формы формата Excel (с возможностью свёртки узлов XML).
При написании обмена между 1С 7.7 и «Меркурием» через ВЕТИС.API я впервые вплотную столкнулся с форматом XML. За основу взял существующую обработку «Обмен с системой Меркурий через Ветис.API» (//xn—1-6kca8bgsjrjhe.xn--p1ai/public/665865/). Обработка использует внешнюю компоненту V7PLUS.DLL, которая позволяет генерировать XML для запроса и читать XML ответа.
Я стал искать универсальные «читалки» XML для 1С 7.7, но универсального решения не нашёл, всё сводилось к фразе «циклы . циклы . циклы».
Обработка позволяет сохранять полученные файлы MXL и/или XLS по заданным путям.
Таким образом, обработка «ОтладочныйПросмотрXML.ert» позволяет:
- преобразовать XML-файл неизвестной структуры в таблицу значений для дальнейших манипуляций с ней средствами встроенного языка 1С (конвертер XML в Таблицу значений)
- вывести полученную из XML-файла таблицу значений на просмотр с возможностью «погружения» в более глубокие узлы XML
- вывести XMLфайл неизвестной структуры в древовидную печатную форму формата MXL с возможностью свёртки строк по узлам XML (конвертер XML в MXL)
- вывести XMLфайл неизвестной структуры в древовидную печатную форму формата Excel (XLS) с возможностью свёртки строк по узлам XML (конвертер XML в XLS)
Обработка использует внешние компоненты V7PLUS.DLL и SpreadSheet.dll, которые можно положить в каталог внешнего отчёта, каталог базы или каталог программы.
Тестирование обработки проводилось на релизе 1С 7.7 (7.70.025) как в DBF, так и в SQL версии.
Подробно о файлах обмена с 1С
Принципы заполнения схожи с заполнением фиксированной структуры для реквизитов базовых типов, и с созданием объекта XDTO для прочих реквизитов.
Сущности¶
Некоторые символы в XML имеют особые значения и являются служебными. Если вы поместите, например, символ < внутри XML элемента, то будет сгенерирована ошибка, так как парсер интерпретирует его, как начало нового элемента.
Промокоды на Займер на скидки
В примере ниже будет сгенерирована ошибка, так как в значении «ООО» атрибута НаимОрг содержатся символы .
Также ошибка будет сгенерирована и в слудющем примере, если название организации взять в обычные кавычки (английские двойные):
Сущность | Символ | Значение |
---|---|---|
< | меньше, чем | |
> | > | больше, чем |
& | & | амперсанд |
' | ‘ | апостроф |
" | « | кавычки |
Только символы допустим, но лучше его всегда заменять на сущность.
Таким образом, корректными будут следующие формы записей:
В последнем примере английские двойные кавычки заменены на французские кавычки («ёлочки»), которые не являются служебными символами.
Сущность | Символ | Значение |
---|---|---|
< | меньше, чем | |
> | > | больше, чем |
& | & | амперсанд |
' | ‘ | апостроф |
" | « | кавычки |
1C Сохранить Таблицу Значений в Xml
Сущности¶
Некоторые символы в XML имеют особые значения и являются служебными. Если вы поместите, например, символ < внутри XML элемента, то будет сгенерирована ошибка, так как парсер интерпретирует его, как начало нового элемента.
В примере ниже будет сгенерирована ошибка, так как в значении «ООО» атрибута НаимОрг содержатся символы .
Также ошибка будет сгенерирована и в слудющем примере, если название организации взять в обычные кавычки (английские двойные):
Сущность | Символ | Значение |
---|---|---|
< | меньше, чем | |
> | > | больше, чем |
& | & | амперсанд |
' | ‘ | апостроф |
" | « | кавычки |
Только символы допустим, но лучше его всегда заменять на сущность.
Таким образом, корректными будут следующие формы записей:
В последнем примере английские двойные кавычки заменены на французские кавычки («ёлочки»), которые не являются служебными символами.
Созданный в формате YML файл можно использовать для запуска динамического ретаргетинга во ВКонтакте и динамического ремаркетинга в myTarget.
Экспорт данных XML (для более чем 65 536 строк)
Найдите разность общего количества строк в файле и числа 65 537. Обозначим это число как x.
Экспортировать этот таблицу в файл данных XML (см. предыдущий раздел процедуры).
Нажмите кнопку «Закрыть», но не сохраните лист. Затем снова откроете таблицу Excel.
Удалите все данные после x итогов, а затем экспортировать их в файл данных XML (см. предыдущий раздел процедуры).
Это позволит не потерять оставшуюся часть данных. После этого у вас будет два файла экспорта XML, которые можно объединить для создания дубликата исходного таблицы.
Если нужно обеспечить обратную совместимость с более ранними версиями функциональности XML, можно сохранить файл в виде файла данных XML, а не использовать команду Экспорт.
Это действие гарантирует, что никакие изменения, внесенные в книгу, не будут потеряны, если она сохранена в виде файла данных XML.
Нажмите кнопку > «Сохранитькак» и выберите расположение для сохранения файла.
Только в Excel 2007 нажмите кнопку «Microsoft Office» , на стрелку рядом с кнопкой «Сохранить как» и выберите пункт «Другие форматы».
В поле Имя файла введите имя файла данных XML.
В списке Тип файла выберите тип Данные XML и нажмите кнопку Сохранить.
Если появится сообщение о том, что сохранение файла в виде данных XML может привести к потере функциональности, нажмите кнопку Продолжить.
Если откроется небольшое диалоговое окно Экспорт XML, щелкните карту XML, которую вы хотите использовать, и нажмите кнопку ОК.
Это диалоговое окно отображается только в том случае, если не выбрана XML-таблица и книга содержит несколько карт XML.
В большом диалоговом окне Экспорт XML введите в поле Имя файла имя для файла данных XML.
Примечание: Если лист содержит заголовки или метки, отличающиеся от имен XML-элементов на карте XML, то при экспорте или сохранении данных XML приложение Excel использует имена XML-элементов.
При экспорте данных XML могут появляться сообщения, подобные приведенным ниже.
Такое сообщение может появиться по следующим причинам.
На карте XML, связанной с этой XML-таблицей, есть один или несколько необходимых элементов, которые с ней не сопоставлены.
В иерархическом списке элементов в области задач источника XML необходимые элементы обозначены красной звездочкой в правом верхнем углу значка слева от каждого из них. Чтобы соповестить необходимый элемент, перетащите его в нужное место на нем.
Типичный пример рекурсивной структуры — иерархия сотрудников и руководителей, в которой одни и те же XML-элементы вложены на нескольких уровнях. Хотя возможно, вы соекнули все элементы в области задач «Источник XML», Excel не поддерживает рекурсивные структуры глубиной более одного уровня и поэтому не может соеоставить все элементы.
Как в 1С сохранить документ в Excel: загрузка значений таблицы в файл программно
Экспорт данных XML (для более чем 65 536 строк)
Найдите разность общего количества строк в файле и числа 65 537. Обозначим это число как x.
Экспортировать этот таблицу в файл данных XML (см. предыдущий раздел процедуры).
Нажмите кнопку «Закрыть», но не сохраните лист. Затем снова откроете таблицу Excel.
Удалите все данные после x итогов, а затем экспортировать их в файл данных XML (см. предыдущий раздел процедуры).
Это позволит не потерять оставшуюся часть данных. После этого у вас будет два файла экспорта XML, которые можно объединить для создания дубликата исходного таблицы.
Если нужно обеспечить обратную совместимость с более ранними версиями функциональности XML, можно сохранить файл в виде файла данных XML, а не использовать команду Экспорт.
Это действие гарантирует, что никакие изменения, внесенные в книгу, не будут потеряны, если она сохранена в виде файла данных XML.
Нажмите кнопку > «Сохранитькак» и выберите расположение для сохранения файла.
Только в Excel 2007 нажмите кнопку «Microsoft Office» , на стрелку рядом с кнопкой «Сохранить как» и выберите пункт «Другие форматы».
В поле Имя файла введите имя файла данных XML.
В списке Тип файла выберите тип Данные XML и нажмите кнопку Сохранить.
Если появится сообщение о том, что сохранение файла в виде данных XML может привести к потере функциональности, нажмите кнопку Продолжить.
Если откроется небольшое диалоговое окно Экспорт XML, щелкните карту XML, которую вы хотите использовать, и нажмите кнопку ОК.
Это диалоговое окно отображается только в том случае, если не выбрана XML-таблица и книга содержит несколько карт XML.
В большом диалоговом окне Экспорт XML введите в поле Имя файла имя для файла данных XML.
Примечание: Если лист содержит заголовки или метки, отличающиеся от имен XML-элементов на карте XML, то при экспорте или сохранении данных XML приложение Excel использует имена XML-элементов.
При экспорте данных XML могут появляться сообщения, подобные приведенным ниже.
Такое сообщение может появиться по следующим причинам.
На карте XML, связанной с этой XML-таблицей, есть один или несколько необходимых элементов, которые с ней не сопоставлены.
В иерархическом списке элементов в области задач источника XML необходимые элементы обозначены красной звездочкой в правом верхнем углу значка слева от каждого из них. Чтобы соповестить необходимый элемент, перетащите его в нужное место на нем.
Типичный пример рекурсивной структуры — иерархия сотрудников и руководителей, в которой одни и те же XML-элементы вложены на нескольких уровнях. Хотя возможно, вы соекнули все элементы в области задач «Источник XML», Excel не поддерживает рекурсивные структуры глубиной более одного уровня и поэтому не может соеоставить все элементы.
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы