ОСНОВЫ И НАВИГАЦИЯP1L2

Документ SAP не проводится или отражается неверно: порядок проверки

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

Ревизия 1 Применимость к указанным контекстам Частичное покрытие Контекст: CTX-GENERALКонтекст: CTX-S4-ONPREM документальная опора: недостаточно данных
Справочный материал. Контракты данных, архитектурные решения и ограничения применения. Источники приведены в материалах, где используются внешние основания.

Документ SAP не проводится или отражается неверно: порядок проверки#

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

Этот маршрут помогает сузить причину для FI-документа. Он не заменяет проверку конкретного бизнес-процесса, настройки целевой системы или текстов сообщений. Для общей диагностики см. симптомы и диагностические признаки SAP, для зависимостей - настройки SAP. Детальные правила ввода и дат разобраны в статьях про даты и периоды FI, тип документа, ключи и поля и валидации и замещения.

1. Установите этап и состояние документа#

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

  • Не сохранён или остановлен на вводе: записи с окончательным номером документа может ещё не быть.
  • Удержан, припаркован или ждёт согласования: работа сохранена или передана дальше, но это не обязательно означает обновление главной книги.
  • Отправлен через интерфейс, статус неизвестен: найдите запрос или сообщение по correlation ID и проверьте целевой объект и прикладной журнал.
  • Проведён: найдите документ и сравните фактические реквизиты и строки с исходным запросом.
  • Выполнен частично: выясните, какие документы или позиции созданы, прежде чем продолжать остальные операции.

Названия и доступные статусы зависят от приложения и выпуска. Статус «ошибка» в вызывающей системе не доказывает, что SAP не создал документ. Если проводка уже существует, относитесь к случаю как к исправлению проведённого документа, а не как к безопасному повтору.

2. Сверьте даты и целевой период#

Разделите дату первичного документа, дату проводки и системную дату ввода. По документации SAP S/4HANA On-Premise дата проводки используется для определения периода и финансового года; для целевого периода должны быть выполнены предпосылки, в том числе задан финансовый год и открыт период.

Проверьте в таком порядке:

  1. Правильно ли указана дата проводки для требуемого бухгалтерского отражения?
  2. Какой финансовый год и период соответствуют этой дате по варианту финансового года компании?
  3. Открыт ли период для требуемой операции, типа счёта, компании и, где применимо, ledger или специального периода?
  4. Есть ли ограничения даты, специальные периоды или отдельные правила для соответствующего источника проводки?

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

3. Зафиксируйте компанию и остальные измерения#

Сравнивайте попытку с успешным документом только при совпадающем организационном и процессном контексте. Запишите company code, ledger или ledger group, валюту и тип валюты, финансовый год, тип документа, счёт и account type, а также источник проводки. Для связанных процессов добавьте контрагента, налоговые данные, cost/profit center, order, asset, bank или другие присвоения, если они участвуют в операции.

Проверьте, что реквизиты:

  • существуют и действуют на требуемую дату в целевой редакции и клиенте;
  • связаны с правильной компанией, планом счетов, областью учёта или компонентом;
  • подходят выбранному типу документа и типу счёта;
  • передаются источником без потери, неверного знака, валюты, единицы или идентификатора;
  • разрешены в бизнес-процессе и доступны пользователю или интерфейсу.

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

4. Проверьте поля, правила и derivation#

Для каждой строки сопоставьте фактические поля с ожидаемыми: счёт, дебет/кредит, сумма, валюта, налог, assignment и необходимые CO, AA или иные аналитики. В On-Premise тип документа ограничивает некоторые параметры документа, а posting key относится к позиции и влияет на тип счёта, направление дебет/кредит и обработку полей. Field status может сделать поле обязательным, необязательным или скрытым. Проверяйте эти настройки вместе для реального счёта и экрана ввода, а не отдельно по одному полю.

Если значение отсутствует или неожиданно подставлено, выясните, сработало ли одно из следующих условий:

  • реквизит был обязательным в данном контексте или скрыт правилами ввода;
  • master data или организационное присвоение отсутствовало, было заблокировано либо не действовало на дату;
  • валидация запретила комбинацию полей или остановила проведение;
  • замещение или derivation изменили исходное значение;
  • процесс использовал account determination или extension logic, которые зависят от контекста.

Для validation/substitution запишите контекст, событие, условие, активность правила, затронутое поле и фактическое значение до и после обработки. Доступные поля и моменты вызова зависят от приложения, релиза и редакции. Не отключайте правило и не ослабляйте его контроль, пока не установлены его владелец, область действия и бизнес-обоснование.

5. Сопоставьте сообщение с конкретным слоем#

Ищите точный текст и идентификатор сообщения, если он показан целевой системой, затем проверяйте журнал именно того этапа, где возник отказ. Валидация ввода, authorization check, настройка FI, интерфейсный mapping, очередь, фоновый job и ABAP runtime оставляют разные диагностические следы.

Что наблюдается Следующий безопасный шаг
Ошибка появляется при вводе отдельного поля Сверить значение, формат, обязательность, статус поля и связанную master data
Ошибка появляется после полного ввода или симуляции Сверить дату/период, баланс дебета и кредита, тип документа, account type, правило и присвоения
Пользователь не может выполнить действие Проверить точный authorization failure для этого пользователя, объекта и оргзначений; не запрашивать широкую роль наугад
Ошибка пришла из интерфейса, фонового запуска или workflow Сверить технический ID запроса, статус очереди/задания, прикладной результат и наличие FI-документа
Документ существует, но строки не соответствуют исходному событию Проследить mapping и derivation от источника, затем проверить документ, ledger и каждую существенную строку

Общие приёмы работы с сообщениями и журналами описаны в REF‑06. Не выводите единственную первопричину только из формулировки сообщения: несколько условий могут приводить к похожему симптому.

6. Ограничьте гипотезу и исправление#

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

Не используйте такие действия как универсальное исправление:

  • массово открывать периоды;
  • удалять validation или substitution;
  • менять тип документа, счет или автоматическое определение без владельца процесса;
  • добавлять пользователю широкие полномочия;
  • повторять запрос или пакет до выяснения, был ли документ уже создан.

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

7. Подтвердите финансовый результат#

После успешного проведения найдите документ по полному ключу и проверьте:

  • правильную company code, финансовый год, номер и дату проводки;
  • выбранный ledger или ledgers и период;
  • каждую существенную строку, account assignment и сторону дебет/кредит;
  • валюту, суммы, налог и баланс документа;
  • связь с исходным документом или запросом и отсутствие дубликата;
  • ожидаемое обновление открытой позиции, главной книги или связанного процесса.

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

Границы применимости#

Подробные примеры настроек и ввода в этой статье относятся к SAP S/4HANA On-Premise 2025 FPS01. Один и тот же термин или экран не гарантирует одинакового набора проверок в ECC, Private Edition, Public Edition и BTP. Используйте документацию и доступные инструменты для точного релиза и процесса. Источники зарегистрированы как metadata_only; конкретную систему, настройки, проводку, полномочия и SAP runtime проект не проверял.

Источники и документация

  1. Determining Posting Periods When Posting, SAP S/4HANA On-Premise 2025 FPS01 ↗
  2. G/L Account Posting, SAP S/4HANA On-Premise 2025 FPS01 ↗
  3. Opening and Closing Posting Periods, SAP S/4HANA On-Premise 2025 FPS01 ↗
  4. Document Type, SAP S/4HANA On-Premise 2025 FPS01 ↗
  5. Posting Key, SAP S/4HANA On-Premise 2025 FPS01 ↗
  6. Screen Layout Using the Posting Key, SAP S/4HANA On-Premise 2025 FPS01 ↗
  7. Defining the Field Status Group, SAP S/4HANA On-Premise 2025 FPS01 ↗
  8. Rules for Substitution/Validation, SAP S/4HANA On-Premise 2025 FPS01 ↗

Источники нужны для самостоятельной проверки. Примеры и интерпретации на сайте могут быть учебными упрощениями.