Разработать внешнюю обработку (.epf), которая читает XML из системы и создаёт документы в базе 1С (для всех)
⚓ Work 📅 2026-05-18 👤 surdeus 👁️ 2
Формат входного файла
XML в формате EnterpriseData, кодировка UTF-8. Файл содержит два типа документов:
Документ.СчетНаОплатуПокупателю – счёт на оплату
Документ.РеализацияТоваровУслуг – УПД / реализация услуг
Также в файле присутствуют справочники:
Справочник.Контрагенты – покупатели
Справочник.Организации – наши компании
Справочник.Номенклатура – услуги
Справочник.БанковскиеСчета – расчётные счета организаций
Пример файла прилагается.
Поля документов
Счёт на оплату:
Номер, дата
Организация (поиск по ИНН)
Контрагент (поиск по ИНН)
Расчётный счёт организации (по БИК + номер счёта)
Валюта (643 = рубль)
Табличная часть: наименование услуги, количество, цена, сумма без НДС, ставка НДС, сумма НДС, итого
Реализация товаров и услуг:
Номер, дата
Вид операции: Услуги
Организация (поиск по ИНН)
Контрагент (поиск по ИНН)
Расчётный счёт организации
Валюта (643 = рубль)
Признак проведения: Истина
Табличная часть: наименование услуги, количество, единица измерения (штука, код 796), цена, сумма без НДС, ставка НДС, сумма НДС, итого
Правила сопоставления объектов
Контрагент:
Искать по ИНН
Если не найден – создать новый с заполнением: наименование, полное наименование, ИНН, КПП, ОГРН, юридический адрес, фактический адрес, телефон
Если найдено несколько с одинаковым ИНН – брать первый, писать предупреждение в журнал
Организация (наша компания):
Искать по ИНН среди справочника Организации
Если не найдена – выдавать ошибку, документ не создавать
Номенклатура:
Искать по наименованию (точное совпадение)
Если не найдена – создать новую в группе «Загружено из SmartLog», тип «Услуга», единица измерения «шт»
Проставлять признак «создано обработкой» через дополнительный реквизит если есть, иначе через комментарий
Расчётный счёт:
Искать по БИК и номеру счёта среди банковских счетов организации
Если не найден – не заполнять, продолжить создание документа
Требования к реализации
Не использовать типовой механизм ВыгрузкаЗагрузкаEnterpriseData – только прямой парсинг XML через ЧтениеXML и явное создание объектов
Парсить XML самостоятельно, не через XDTO
Каждый документ создавать явно: Новый Документ.СчетНаОплатуПокупателю и Новый Документ.РеализацияТоваровУслуг
Проверять дубли перед созданием: искать документ по номеру и дате, если найден – пропускать или обновлять (на усмотрение, но поведение должно быть настраиваемым)
Вести журнал загрузки: что создано, что пропущено, что вызвало ошибку
В конце показывать итоговый отчёт: сколько документов создано, сколько пропущено, список ошибок
Интерфейс обработки
Кнопка выбора файла
Кнопка «Загрузить»
Флажок «Проводить документы автоматически»
Флажок «Обновлять существующие документы»
Поле для вывода журнала загрузки
Приложил Пример XML-файла из SmartLog TMS
🏷️ Work_feed
