1с 8 дописать данные в файл xml. Формирование файла XML. Простая выгрузка для стороннего приложения. Заливаем записи в приёмник

Когда предприятие постоянно пользуется в своей работе каким-то программным комплексом, то, естественно, всегда возникает вопрос его постоянной поддержки и администрирования. Никак не обойтись при этом с задачами обмена, хранения и восстановления данных . Рассмотрим, как загрузить или выгрузить данные из 1С в формате XML, так как это является важной процедурой этой темы.

Строятся они так, чтобы при выгрузке можно было получить файл формата XML, в котором будут записаны необходимые клиенту данные. При этом одновременно с записью происходит и контроль корректности переносимых записей на предмет критических ошибок.

Таким образом, выгрузка в XML-файл (импорт записей) из одной информационной базы и последующая загрузка из XML в другую- представляют собой обмен данными в формате XML между базами.

Такая процедура, особенно при больших массивах информации, экономит большое количество ручной работы.

Импорт (полученный файл) может быть использован также как архив для восстановления в непредвиденных ситуациях(при потере или повреждении).

Таких инструментов-обработок разработано очень много, и они доступны в интернете. Ответственность за их использование ложится на плечи (и голову) клиента.

Но для официальных пользователей одинэски разработчиками создан универсальный обработчик «Выгрузка/загрузка данных XML».

ВАЖНО. Экспорт в XML в 1С и дальнейшая загрузка в XML из 1С допустима для идентичных конфигураций - в противном случае произойдёт её повреждение.

Универсальный обработчик

Основные моменты для использования универсального разработчика:

  • Импорт файлов сохранять до окончания переноса записей и проверки их корректности;
  • При использовании как резервных копий следует вести их учёт для сортировки поиска.

В его работе предусмотрены два режима: создание файла при сохранении информации и его чтение/запись - когда происходит импорт.

Кроме того, пользователь может устанавливать как при экспорте, так и загрузке данных дополнительные ограничения.

Извлекаем записи

Выгружать данные можно как по всей базе, так и избирательно - пообъектно.

После скачивания, установки и открытия обработчика выполняется следующее:


Их отбор производят в открывшемся после запуска диалоговом окне. Для этого устанавливают галочки в перечне, который отображает объекты метаданных для извлечения;

  1. Настраиваются необходимые фильтры (например, по дате);
  2. Выбирается место на дисковом пространстве;
  3. Запускается сама операция.

Заливаем записи в приёмник

Первым шагом для принятия данных в базу-приёмник нужно открыть в ней программу-обработчик.

После того как будет указан путь к файлу-источнику и активированы (при необходимости) флажки настроек процедуры - можно запускать процесс кнопкой «Загрузить данные».

Теперь вам известно, как загрузить или выгрузить данные из 1С в формате XML для сохранения данных и обмена между базами.

Перенос информации между базами данных является одной из задач их поддержки и администрирования. Для его эффективного выполнения в автоматизированных комплексах 1С создаются обработки. Они значительно облегчают рутинную работу, ускоряют процессы выгрузки-загрузки информации и одновременно реализуют контроль ее корректности. Выгрузка из 1с в xml позволяет создавать файл с содержимым любого объекта настроенной конфигурации, и использовать его, когда необходима выгрузка данных в идентичную конфигурацию.

Инструменты для создания выгрузки

Для экспорта информации, содержащейся в базах данных, главным образом используется формат xml. Для 1С разработано множество обработок (например, ВыгрузкаЗагрузкаДанныхxml82 epf), при помощи которых возможно выводить в файл и загружать данные. При этом пользователь должен получать файл определенной структуры, который позволяет загружать хранящуюся в нем информацию в родную базу данных или переносить ее в другое место. При создании выгрузки следует соблюдать следующие правила:

  • Сохранить созданные файлы до момента полного восстановления и окончания процедур проверки корректности перенесенной информации;
  • В случае использования обработки как инструмента резервного копирования создавать для копий данных отдельные подпапки и вести журнал их учета для быстрого поиска.

Поставляемая в программе поддержки пользователей 1С , которую можно найти на сайте или дисках ИТС, является великолепным средством для экспорта и импорта информации. Пользователь компьютера может выгрузить как всю базу, так и ее отдельные объекты, при этом кроме собственно экспорта производятся различные операции по проверке информации, помогающие избавиться от критических ошибок в данных.Обработка 1с выгрузка в xml работает в двух режимах:

  • Выгрузка. Создает файл, содержащий выгружаемые объекты, определяемые пользователем;
  • Загрузка. Производит чтение экспортируемого ранее файла и записывает находящиеся в нем сведения в информационную базу.

Обработка позволяет произвести контроль объектов на недопустимые символы, а также включает в себя функцию экспорта информации с ограничениями.

Выгрузка может использоваться не только при обмене информацией между базами 1С. С ее помощью можно обеспечить интеграцию различных комплексов, например, 1С и системы Парус. Универсальность формата XML позволяет создавать программы для переноса информации практически для любых информационных банков. Обработка выгрузка и загрузка данных xml – важнейший инструмент обмена информацией.

Процесс выгрузки данных в xml

Рассмотрим, как выгрузить из 1с в xml в обычном режиме. После закачки обработки ВыгрузкаЗагрузкаДанныхxml.epf и ее открытия необходимо выполнить следующие шаги:

  • Отобрать объекты для экспорта;
  • Настроить необходимые фильтры, например, по периоду;
  • Определить месторасположение файла с информацией на дисковой подсистеме;
  • Запустить выгрузку объектов.

Необходимо помнить, что заголовочная часть формата файла выгрузки отличается от формата файла, используемого при выгрузке по планам обмена.

xml

Загрузка xml в 1с производится в базу-приемник с конфигурацией, идентичной базе-источнику. До того, как загрузить в 1с xml 1с необходимо открыть обработку в базе-приемнике. Затем нужно указать путь до выгруженного ранее файла и осуществить загрузку данных нажатием на кнопку «Загрузить данные».

При необходимости активируются флажки для загрузки данных в режиме обмена в распределенной информационной базе и игнорирования возникающих ошибок при загрузке объектов.

После этого необходимо проверить базы и убедиться, что все элементы загружены корректно, чтобы не получить их потери, например, если произошла ошибка в обработчике события после загрузки объекта.

В организации учет может вестить не только в решениях на платформе 1С:Предприятие, но и в других программным комплексах (Галактика, Парус, SAP и прочее). При этом появляются задачи интеграции двух приложений.

Напрмер, в некотором приложении (назовем его "X") требуется прочитать список документов конфигурации. О практической пользе решения подобной задачи говорить не будем, отмечу лишь, что наиболее удобным и универсальным способом в такой ситуации будет выгрузка списка документов в формате XML .

Обмен с использованием этого формата является универсальным, поскольку с ним могут работать большинство приложений. Рассмотрим как можно из 1С:Предприятия выгрузить список документов конфигурации в XML-файл.

Выгрузка в XML

И так, перейдем к главному. Нам нужно обойти список метаданных документов и сформировать список в XML-файле. На следующем скриншоте представлен алгоритм формирования XML-файла:

Функция СоздатьXML() Экспорт // Получаем имя временного файла Путь = ПолучитьИмяВременногоФайла() ; // Инициализируем класс "ЗаписьXML" Запись = Новый ЗаписьXML; // Открываем временный файл для записи - 8 " ) ; // Записываем объявление XML-файла Запись. ЗаписатьОбъявлениеXML() ; // Запись. ЗаписатьНачалоЭлемента(" ДокументыКонфигурации " ) ; // Первый элемент // Атрибут первого элемента с датой формирования файла Запись. ЗаписатьАтрибут(" generated " , Формат(ТекущаяДата() , " ДФ= гггг- ММ- ddThh:mm:ss; ДЛФ= DT " ) ) ; // Записываем элемент для каждого документа конфигурации. В текст помещаем имя документа. Для Каждого Док Из Метаданные. Документы Цикл Запись. ЗаписатьНачалоЭлемента(" Документ " ) ; Запись. ЗаписатьТекст(Док. Имя) ; Запись. ЗаписатьКонецЭлемента() ; КонецЦикла ; // Завершаем запись первого элемента Запись. ЗаписатьКонецЭлемента() ; Запись. Закрыть() ; // Закрываем файл // Получаем двоичные данные файла и помещаем их во временное хранилище ДвоичныеДанные = Новый ДвоичныеДанные(Путь) ; Адрес = ПоместитьВоВременноеХранилище(ДвоичныеДанные, Новый УникальныйИдентификатор) ; Возврат Адрес; // Возвращаем адрес файла в хранилище КонецФункции

Каждый созданный элемент должен быть правильно завершен. После выполнения "ЗаписатьНачалоЭлемента()" обязательно должен быть выполнен метод "ЗаписатьКонецЭлемента", иначе структура XML-файла будет некорректной.

Общий шаблон создания XML-файлов предсавляет собой следующую последовательность:

// 1. Инициализируем класс "ЗаписьXML" Запись = Новый ЗаписьXML; // 2. Открываем временный файл для записи Запись. ОткрытьФайл(Путь, " UTF- 8 " ) ; // 3. Записываем объявление XML-файла Запись. ЗаписатьОбъявлениеXML() ; // // 4. ++ Записываем содержимое XML-файла Запись. ЗаписатьНачалоЭлемента(" ЭлементXML " ) ; Запись. ЗаписатьКонецЭлемента() ; // -- Записываем содержимое XML-файла // 5. Закрываем файл Запись. Закрыть() ;

С помощью этих пяти шагов создается практически любой XML-файл.

В нашем примере созданный файл переводится в двоичные данные и возвращается в место вызова функции "СоздатьXML". Далее этот файл может быть записан в файловую систему.

Пример выгруженного файла Вы могли видеть на скриншоте выше.

Стороннее приложение

Для примере создал приложение на.NET Framework, чтобы продемонстрировать чтенеие XML-файла в стороннем приложении.

Програма читает созданный файл и выводит документы в виде списка:

Можете попробовать сами, приложение доступно для загрузки по ссылке в конце статьи.

Универсальность

Формат XML используется в большинстве конфигурации обмена данными между прикладными решениями на платформе 1С:Предприятие. Другим часто используемым способом обмена является подключение через COM-соединение. XML-позволяет выполнять обмен практически с любыми приложениями, чем и заслужил называться универсальным.

Файлы для загрузки:

Приложение чтения XML-файла.

Обработка формирования XML-файла.

Работа с XML-документами доступна непосредственно из встроенного языка системы 1С:Предприятие 8.

Имеется возможность:

  • последовательно читать и записывать xml-документы:
    • преобразовывать из строки, полученной из текста элемента или значения атрибута XML, в значение в соответствии с указанным типом;
    • получать строковое представление значения для помещения в текст элемента или значение атрибута XML;
    • получить тип данных XML, соответствующий переданному в качестве параметра типу;
    • производить проверку возможности чтения из XML значения указанного типа;
    • производить проверку соответствия схеме XML при чтении XML
    • производить запись значения в формате XML;
    • возвращать тип, соответствующий типу данных XML.
  • использовать модель объектного доступа к данным xml-документов (ДокументDOM), соответствующую следующим стандартам:
    • DOM Level 2;
    • XPath (DOM Level 3);
    • DOM Load and Save (DOM Level 3).
  • использовать объектную модель схемы XML (СхемаXML);
  • использовать канонический XML стандарт 1.1 (Canonical XML 1.1).

Используя внешнее соединение и механизмы работы с XML можно организовывать интеграцию с прикладными системами по принятым в этих системах форматам. Для этого применяются механизмы XSL-преобразования. Например, для такой интеграции можно использовать BizTalk сервер компании Microsoft:

Fast Infoset

Платформа предоставляет средства для работы с XML-документами в бинарном формате Fast Infoset. Технология Fast Infoset использует альтернативный синтаксис отображения XML-данных. Это обеспечивает меньший объем файлов и более высокую скорость обработки, чем скорость обработки данных, записанных в обычном XML-формате. Файл, записанный в формате Fast Infoset, имеет расширение.fi или.finf.

Простой обмен данными между различными учетными программами является одним из ключевых моментов их распространенности, на практике для этого достаточно загрузить XML в 1С или в другой продукт. Причем чаще всего легко обойтись без его конвертации: все базы данных поддерживают стандарт формата в полном объеме. На практике имеется масса способов, как использовать XML для переноса данных, все они реализованы в 1С и совместимых с ней продуктах.

Как загрузить файл XML в базу 1С?

Выгруженные базы, отдельно взятые документы могут передаваться от пользователей по любым каналам связи – на сменных носителях, по электронной почте или через облачные хранилища. Формат хорошо поддается сжатию с помощью архиваторов, что значительно ускоряет копирование и экономит место на диске.

Процедура загрузки данных из файла формата XML в общих чертах выглядит следующим образом:

    Разрешить показ пункта меню «Все функции». Для этого надо поставить галочку в соответствующем пункте окна «Параметры» (вкладка находится в разделе меню «Сервис»).

    В меню «Все функции» через плюс раскрыть перечень вариантов, где и выбрать пункт «Обработки».

    В предложенном списке открыть пункт «Универсальный обмен данными в формате XML».

По нажатию кнопки «Загрузить данные» произойдет их считывание из файла, сохранение в базу данных с одновременной проверкой корректности. Если в документе обнаружатся ошибки, процедура будет прекращена с выдачей определенного текста, указывающего на причину.

Как используются файлы XML в 1С?

С помощью той же обработки пользователь может выгрузить в XML выбранный перечень данных или всю базу целиком, создав за счет этого ее резервную копию. Это необходимо делать перед внедрением серьезных корректировок глобального модуля 1С, если обойтись внешними обработками по каким-либо причинам не удается.

Формат используется на платформе 1С: Предприятие 8 по следующим направлениям:

    Выгрузка прайс-листов, заказов, печатных форм документов.

    Обмен данными с банками, налоговой службой, внебюджетными фондами.

    Перенос расчетов по заработной плате из 1С: ЗУП и других «специализированных» конфигураций в «общую» 1С: Бухгалтерия 8.

Везде используется одна и та же реализация универсальной обработки. Если ее функций мало, то прибегают к разработке собственных вариантов этого модуля. Причем изменять стандартные файлы необходимости нет, достаточно потом подключить нужную обработку и запускать их на выбор - в зависимости от конкретной задачи.

Если в компании выбран раздельный способ ведения бухгалтерского и налогового учета, то обработка по выгрузке/загрузке финансовых данных через формат XML станет весьма востребованной. С ее помощью нужные для расчета налоговой базы цифры переносятся в программу 1С: Налогоплательщик или в подобный программный продукт. За счет того, что файлы этого формата легко редактируются, с помощью пакета Microsoft Office легко подкорректировать их содержимое перед отправкой в налоговую службу.

То же относится к КУДиР (книге учета доходов и расходов), журналу учета выданных или полученных счет-фактур. Все это передается через систему СБИС++ и, помимо процесса редактирования табличной части XML файла, выгрузка в этом формате необходима для последующей загрузки в сервис и передачи данных в ФНС.

Часто востребован обмен и с такой конфигурацией, как 1С: Управление торговлей, т. к. в бизнесе она используется для организации продаж, управленческого учета, а бухгалтерия на базе 1С: Бухгалтерия 8 функционирует автономно, получая лишь сводные данные обо всех движениях товара и денежных средств.

Если выгрузку заказов или прайсов настроить просто, так как здесь легко использовать «любой» формат данных, то те же выписки по банковским счетам приходится сохранять в XML (как общепринятом стандарте).

Чаще всего обмен происходит с программой Клиент-Банк. Процесс выгрузки выглядит здесь следующим образом:

    Формируется выписка за нужный пользователю период.

    В зависимости от версии программы нажимается кнопка либо «Экспортировать», либо «Экспорт».

    В открывшемся окне выбирается нужная папка и имя файла.

После завершения процедуры документ можно переносить на сменных носителях или же через интернет (электронная почта, облачные хранилища с общим доступом и т. д.). Когда нужно загрузить выписку в конфигурацию 1С, то выбирают раздел «Банк и касса», затем переходят в журнал «Банковские выписки».

Перед табличной частью документа (в правом углу) нажимают кнопку «Еще», после чего появляется перечень функций, где выбирают пункт «Обмен с банком». Закладка «Загрузка выписки из банка» позволяет импортировать данные по указанному названию фирмы или по конкретному банковскому счету.

После загрузки выписки в базу 1С еще потребуется проведение платежных поручений, это происходит в ручном режиме. Бухгалтер может заказать разработку обработки, которая позволит автоматизировать процесс, но здесь понадобится обратиться к компетентному программисту.

Используется формат XML и для загрузки различных классификаторов (КЛАДР, ОКОФ, ЕНАОФ). Если в программе 1С они отсутствуют, надо избегать их ручного заполнения, т. к. легко допустить ошибку при указании кодов. Стоит один раз воспользоваться файлом XML, скачав классификатор из надежного источника.

Сделать это может как сам пользователь, так и приглашенный специалист:

    В основном меню выбирают раздел «Справочники».

    Нажимается кнопка «Настройка действий».

    В открывшемся окне указывают пункт «Загрузить классификатор okof», после чего нажимают на кнопку «Добавить».

    В появившемся разделе «Сервис» выбирают нужную команду и жмут «ОК».

Остается кликнуть по кнопке «Открыть и прочитать файл», указать нужный на диске или сменном носителе, открыть его соответствующей клавишей. Стандартные классификаторы автоматически копируются на жесткий диск при инсталляции платформы и конфигурации 1С. Причем при обновлении версии того или иного создаются папки с номером ревизии, где размещается актуальный файл, соответствующий текущим требованиям. В версии 7 7 тоже есть возможность загрузки XML файлов, но эта устаревшая платформа часто требует помощи специалистов.


Top