Знакомая история
Документ провели, обмен прошел без ошибок, а в приемнике его нет. Или есть, но без контрагента — потому что контрагент на узле так и не зарегистрировался. Или бухгалтер задним числом поправил три десятка реализаций, и теперь их надо дослать, а какие именно — он помнит примерно.
Дальше начинается ручная работа: открыть обработку регистрации из состава конфигурации, найти вид объекта, отобрать нужное, отметить, зарегистрировать. По одному документу это минута. По списку из файла, который прислал бухгалтер, — полдня.
Что делает обработка
Набирает список объектов, показывает по каждому, что с ним не так, и регистрирует его на выбранные узлы. Или снимает регистрацию. Список набирается четырьмя способами, и все четыре складываются в один общий список — можно взять часть из журнала, часть из файла и дополнить запросом.
Из журнала
Выбираете вид объекта — под ним открывается обычный список документов с привычными отборами и поиском. Отмечаете мышью нужные строки и жмете «Добавить выделенные». Если нужен весь вид целиком — есть отдельная кнопка.
Из файла
Это самая частая просьба: «вот список от бухгалтера, зарегистрируй». Разметку по колонкам умеют все обработки. Проблема в том, что реальные файлы выглядят не так, как ожидает разметка.
Вся строка в одной ячейке. Человек скопировал список из журнала:
Реализация товаров и услуг ТД00-000016 от 04.12.2024 0:00:00, 04.12.2024 0:00:00 Приобретение товаров и услуг № ТД00-000002 от 18.04.2025 г Сумма 14000
Обработка разбирает такую строку сама: отделяет вид от номера и даты, не путается в документах, у которых «от» есть в самом названии («Возврат товаров от покупателя»), не принимает сумму за дату и понимает знак номера.
Вид написан заголовком блока. Файл собран из секций:
Взаимозачет: ТД00-000004 12.03.2025 ТД00-000009 14.03.2025 Реализация товаров и услуг: ТД00-000016 04.12.2024 Итого по документам: 3
Вид подхватывается из шапки секции и держится до следующей шапки. Строки вида «Итого» и «Всего» служебными распознаются и вид секции не сбрасывают.
Книга из нескольких листов. Читаются все листы, в колонке «Откуда» видно, с какого листа и из какой строки пришла запись.
Если вид написан не так, как он называется в конфигурации, обработка пробует угадать — по началу названия и по вхождению, но только когда совпадение однозначное. Что угадать не удалось, собирается в отдельный список: будет видно, чего в файле она не поняла.
Форматы: xlsx, csv, txt.
По идентификаторам
Вставляете список GUID — по одному в строке. Понимает и голый идентификатор, и строку целиком, дубли схлопывает. Пригодится, когда список пришел от коллеги, из технического журнала или из выгрузки другой базы.
Запросом
Для случаев, которые отбором не выражаются: «все реализации по этому складу за март, где сумма больше ста тысяч». Пишете запрос, обработка сама находит в нем параметры вида &Дата и подставляет поля для ввода — с правильным типом. Если параметр стоит в условии В (&Ссылка), поле разрешает выбрать несколько значений сразу.
Связанные объекты
Документ без контрагента в приемнике бесполезен. Две галочки добавляют к списку то, что объект использует (реквизиты и табличные части), и то, что ссылается на него. В колонке «Откуда» написано, через какой реквизит объект подтянулся.
Почему объект не уйдет на узел
Кнопка «Проверить выгрузку» по каждой отмеченной строке пишет причину: вида нет в составе плана обмена, объект не зарегистрирован, объект помечен на удаление. Это ровно те вопросы, на которые обычно уходит время: регистрируешь, запускаешь обмен, а в приемнике снова пусто, и снова непонятно почему.
Отправлен или еще ждет
Колонка «Отправка» отвечает на вопрос, объект уже уехал или все еще стоит в очереди. Читается она так:
- пусто — объект в очереди не стоит;
- не отправлялся — зарегистрирован, но в сообщение обмена еще не попадал;
- сообщение 42 — ушел, номер сообщения такой;
- отправлен на 1 из 3 — по части узлов ушел, по остальным еще нет.
Оговорка честная: подтверждение приемника платформа тут не показывает. Она снимает регистрацию, когда приходит квитанция, и запись просто исчезает из таблицы.
История: что уже регистрировали
Платформа историю регистрации не ведет. В таблице изменений лежит только текущее состояние: сняли регистрацию — запись исчезла, и что она вообще была, узнать неоткуда. Поэтому обработка ведет историю сама.
На вкладке «История» видно, что регистрировали и снимали: когда, кто, сколько объектов, по какому плану обмена и на какие узлы. Выбираете строку — снизу открывается состав действия: какие именно объекты в него вошли, какого они вида, что с каждым получилось и какой у объекта идентификатор.
Кнопка «Вернуть список в работу» находит эти объекты заново по идентификаторам и кладет их в список. Отсюда можно повторить регистрацию или, наоборот, снять ее — например, когда после выгрузки выяснилось, что часть документов ушла зря.
Те же события пишутся в журнал регистрации, по записи на каждый объект. Там их отбирают штатными средствами по данным и получают ответ на вопрос «кто и когда дослал вот этот документ» — уже без обработки.
Две оговорки. Записи появляются с момента установки обработки, задним числом взяться им неоткуда. И регистрации, которые типовой механизм сделал сам при записи объектов, сюда не попадают — обработка знает только про свои действия.
Очередь узла
Отдельная вкладка показывает, что вообще стоит в очереди на выгрузку по отмеченным узлам, с разбивкой по видам объектов и количеством. Оттуда же можно снять регистрацию по всему виду сразу — когда в очередь попало то, чего там быть не должно, и разбирать построчно смысла нет. Очередь выгружается в xlsx.
Протокол
«Выгрузить протокол» сохраняет список вместе с результатами в xlsx: что искали, что нашли, что зарегистрировали, что не получилось и почему. В протоколе есть колонка с идентификатором объекта — по ней список возвращается в обработку через вкладку «По идентификаторам». Хоть через неделю, хоть в другой базе.
Два режима
Простой режим — подбор из журнала и регистрация, ничего лишнего. Расширенный — файл, идентификаторы, запрос, очередь, история. Переключаются ссылкой в командной панели, набранный список при переходе сохраняется.
Чего обработка не делает
Она не запускает обмен и не лезет в его правила. Ее дело — поставить объекты в очередь на выгрузку или убрать их оттуда, а дальше работает штатный механизм обмена. Конвертацию она не настраивает и ошибки правил не чинит.
Установка
Открывается как обычная внешняя обработка через «Файл — Открыть» и подключается как дополнительная обработка через механизм БСП. Изменений в конфигурацию не вносит, ничего в базе не создает. Регистрация выполняется в привилегированном режиме, поэтому она не упирается в права на отдельные объекты, но список планов обмена и узлов пользователь видит только тот, к которому у него есть доступ.
Решение универсальное: работает в любой конфигурации на управляемых формах, где есть планы обмена. К конкретной типовой не привязано — ссылки на объекты нигде не хранятся в реквизитах форм, поэтому типы конфигурации заранее знать не требуется. БСП для работы не нужна.
Два файла: 8.3 и 8.5
В публикации два файла, обработка в них одна и та же. Внешняя обработка хранится в формате той платформы, на которой она собрана, поэтому файл под 8.5 на 8.3 просто не откроется. Берите тот, что соответствует вашей платформе:
- 8.3 — собран на 8.3.27.2214;
- 8.5 — собран на 8.5.1.1343.
Вступайте в нашу телеграмм-группу Инфостарт