Администрирование · 9 мин
Как изменить выгрузку данных в 1С
Как изменить выгрузку в 1С: универсальная обработка, обмен через XML и правила конвертации, типовые обмены, доработка кода. Пошагово с проверкой результата.
Выгрузка в 1С — это перенос данных из базы в файл или другую систему: в банк-клиент, на сайт, в другую конфигурацию 1С, в Excel или в стороннюю учётную программу. Изменить выгрузку может потребоваться, когда нужно добавить новые поля, поменять формат файла, отфильтровать лишние данные или исправить ошибку в составе передаваемой информации.
Способ изменения зависит от того, какая выгрузка используется. Универсальная обработка «Выгрузка и загрузка данных XML» настраивается без программирования. Типовые обмены между конфигурациями меняются через правила конвертации в «Конвертации данных». Прикладные выгрузки (платёжные поручения в банк, товары на сайт) чаще всего правятся в коде конфигурации или через внешние обработки. Ниже разобраны основные варианты и критерии выбора между ними.
Шаг 1. Определите, какой механизм формирует выгрузку
Прежде чем что-то менять, нужно понять, как именно работает текущая выгрузка. В типовых конфигурациях встречаются три основных механизма: универсальная выгрузка данных в XML, план обмена с правилами конвертации и программная выгрузка, встроенная в конфигурацию или подключённая как внешняя обработка.
Признаки помогут определить механизм. Если выгрузка запускается из раздела «Администрирование — Обмен данными» и в настройках указан формат XML или EnterpriseData — это план обмена с правилами. Если файл формируется кнопкой в документе или справочнике (например, «Выгрузить в банк» из платёжного поручения) — это программная выгрузка. Если файл формирует отдельно открываемая обработка с выбором объектов — это универсальная выгрузка.
Смотрите настройки узла обмена и правила конвертации
Ищите внешнюю обработку или код в модуле объекта
Меняется через настройки самой обработки или правила обмена
Шаг 2. Измените универсальную выгрузку через обработку
Обработка «Универсальный обмен данными в формате XML» (входит в поставку большинства конфигураций и доступна на диске ИТС) позволяет изменить состав выгружаемых данных без программирования. Она работает в двух режимах: выгрузка по произвольному отбору и выгрузка по правилам обмена.
Для простого изменения состава данных откройте обработку, перейдите на вкладку «Выгружаемые данные» и отметьте нужные объекты: документы, справочники, регистры. Для каждого объекта можно задать отбор — например, выгружать документы только за период или только по конкретной организации. Это самый быстрый способ отфильтровать лишнее без изменения конфигурации.
Если нужно изменить структуру самого файла — добавить или исключить реквизиты, переименовать поля, изменить представление значений — потребуются правила обмена. Их создают в конфигурации «Конвертация данных», а в обработке указывают файл правил на вкладке с соответствующей настройкой.
- 1Откройте обработку «Универсальный обмен данными в формате XML» через Файл — Открыть
- 2На вкладке «Выгружаемые данные» отметьте нужные типы объектов
- 3Установите отборы: период, организация, конкретные элементы
- 4Укажите имя файла выгрузки и каталог
- 5Нажмите «Выгрузить данные» и проверьте файл на наличие нужных записей
Шаг 3. Измените правила обмена для типовых обменов
Обмены между конфигурациями 1С (например, «Управление торговлей» → «Бухгалтерия предприятия») работают по правилам конвертации. Чтобы изменить состав или логику выгрузки, нужно отредактировать эти правила. Делается это в конфигурации «1С:Конвертация данных» — специальном инструменте для разработчиков обменов.
В правилах конвертации объектов (ПКО) задаётся, какие реквизиты источника в какие реквизиты приёмника попадают. Чтобы исключить поле из выгрузки, достаточно удалить или отключить соответствующее правило конвертации свойств (ПКС). Чтобы добавить поле — создать новое ПКС и при необходимости написать алгоритм на встроенном языке для вычисления значения.
После редактирования правила выгружаются в файл и подключаются в настройках обмена в рабочей базе. Важно: правила должны быть одинаковыми в обеих базах, участвующих в обмене, иначе загрузка будет завершаться с ошибками несоответствия формата.
Шаг 4. Доработайте программную выгрузку безопасно
Выгрузки в банк-клиент, на сайт, в Excel или в произвольный XML обычно реализованы кодом. Менять типовой код конфигурации напрямую не рекомендуется: при обновлении доработки затрутся, а снятие объектов с поддержки усложнит сопровождение. Правильный путь — внешняя обработка или расширение конфигурации.
Расширение позволяет переопределить типовую процедуру выгрузки: изменить состав полей файла, добавить вычисляемые значения, поменять формат даты или кодировку. При обновлении конфигурации расширение сохраняется, нужно лишь проверить его совместимость. Внешняя обработка подходит, если выгрузка может запускаться отдельно от типовых кнопок.
Типичная структура кода выгрузки в файл XML выглядит так: создаётся объект записи XML, последовательно записываются элементы, файл сохраняется. Изменение состава полей сводится к добавлению или удалению соответствующих строк записи.
ЗаписьXML = Новый ЗаписьXML;
ЗаписьXML.ОткрытьФайл(ИмяФайла, "UTF-8");
ЗаписьXML.ЗаписатьОбъявлениеXML();
ЗаписьXML.ЗаписатьНачалоЭлемента("Документ");
ЗаписьXML.ЗаписатьАтрибут("Номер", Строка(Док.Номер));
ЗаписьXML.ЗаписатьАтрибут("Дата", Формат(Док.Дата, "ДФ=yyyy-MM-dd"));
ЗаписьXML.ЗаписатьКонецЭлемента();
ЗаписьXML.Закрыть();
Если доработка требует глубокого знания встроенного языка 1С, а опыта нет, безопаснее поручить её специалисту. Ошибка в коде выгрузки может привести к передаче некорректных данных в банк или контрагенту.
Шаг 5. Проверьте результат изменений
После любого изменения выгрузки нужно проверить файл до отправки его внешнему получателю. Минимальная проверка: файл открывается, содержит ожидаемое количество записей, новые поля заполнены, исключённые поля отсутствуют, числа и даты в правильном формате.
Для обменов между базами 1С оптимальная проверка — загрузить файл в копию базы-приёмника и сравнить данные с источником. Для выгрузок в банк или на сайт используйте тестовый режим приёмника, если он есть, или выгрузите один документ и убедитесь, что он корректно обрабатывается.
Как проверить результат
Файл открывается, структура читается, кодировка корректна
Ошибка разбора XML, иероглифы вместо кириллицы
Все нужные записи и поля присутствуют
Пропущены записи или поля пустые
Данные загружаются без ошибок и совпадают с источником
Ошибки формата, дубли, расхождения сумм
Типичные ошибки при изменении выгрузки
Чаще всего проблемы возникают не из-за сложности задачи, а из-за нарушения базовых правил: правки без копии, несогласованные изменения в двух базах, непроверенные файлы. Ниже — ошибки, которых легко избежать.
Часто задаваемые вопросы
Можно ли изменить выгрузку в 1С без программиста?
Да, если речь идёт о составе объектов и отборах: универсальная обработка «Универсальный обмен данными в формате XML» позволяет выбрать документы, справочники и задать отборы без кода. Для изменения структуры файла, вычисляемых полей и нестандартных форматов понадобятся навыки работы с «Конвертацией данных» или встроенным языком.
Как добавить новое поле в выгрузку на сайт?
Сначала выясните, какой механизм формирует файл: типовой обмен с сайтом или сторонний модуль. Для типового обмена поле добавляется доработкой через расширение — в переопределённой процедуре дописывается нужный реквизит. Затем убедитесь, что сайт способен принять и обработать новое поле.
Почему после изменения правил обмена загрузка завершается ошибкой?
Наиболее частая причина — правила обновлены только в базе-источнике, а в базе-приёмнике осталась старая версия. Правила выгрузки и загрузки должны соответствовать друг другу. Вторая причина — ошибка в алгоритме правила: проверьте журнал регистрации и текст сообщения об ошибке при загрузке.
Как выгрузить данные из 1С в Excel с нужными колонками?
Простой путь — сформировать отчёт или список с нужными колонками и сохранить табличный документ в формате Excel через «Файл — Сохранить как». Для регулярной выгрузки с фиксированным набором колонок удобнее внешняя обработка или настроенный отчёт на СКД с сохранённым вариантом.
Что делать, если выгрузка в банк перестала приниматься после изменений?
Верните исходную версию обработки или правил из сохранённой копии и убедитесь, что файл снова принимается. Затем вносите изменения по одному, проверяя формат после каждого шага. Сверьте требования банка к формату: кодировка, разделители, обязательные поля часто строго регламентированы.
Что важно запомнить
Определите механизм выгрузки, меняйте состав через универсальную обработку или правила конвертации, нестандартную логику выносите в расширение или внешнюю обработку. Перед правками делайте копии, после — проверяйте файл загрузкой в приёмник.