Как исправить ошибку «Не заполнена колонка "Курс взаиморасчетов"» в 1С:Бухгалтерия 3.0?

Бухгалтер 1С v8.3 (Управляемые формы) 1C:Бухгалтерия Бухгалтерский учет
← На главную

При работе в программе 1С:Бухгалтерия 3.0 пользователи часто сталкиваются с системным сообщением: «Не заполнена колонка "Курс взаиморасчетов" в строке №... списка "Оплата поставщикам"» (или «Расшифровка платежа»). Эта ошибка блокирует проведение таких важных документов, как Авансовый отчет, Списание с расчетного счета или Выдача наличных — поможет проверка технического состояния базы на ошибки и несоответствия. В данной статье мы детально разберем причины возникновения этой ситуации и пошагово рассмотрим способы её решения.

Причина 1. Некорректные данные в справочнике «Валюты»

Самая распространенная причина — это отсутствие записи о курсе российского рубля в соответствующем справочнике. Проанализируем логику программы: даже если все расчеты ведутся в рублях, система обращается к регистру сведений Курсы валют. Если программа не находит там значения, равного «1» для валюты регламентированного учета, возникает ошибка.

Выполним следующие действия для проверки:

  1. Перейдем в раздел Справочники — Валюты.
  2. Найдем в списке Российский рубль (код 643 или 810).
  3. Проверим наличие дублей. Если в списке два «рубля», это критическая ошибка. Один из них система может воспринимать как иностранную валюту. В таком случае необходимо воспользоваться обработкой «Поиск и удаление дублей» и объединить элементы — для этого подойдёт обработка поиска и удаления дублей в 1С:Бухгалтерия.
  4. Зайдем в карточку рубля и перейдем по ссылке Курсы валют. Убедимся, что установлена запись, где Курс равен 1, а Кратность равна 1.
  5. Важно проверить Дату курса. Она должна быть максимально ранней (например, 01.01.1980), чтобы охватывать все создаваемые в базе документы. Если запись внесена датой 01.01.2024, а вы пытаетесь провести документ от 31.12.2023, программа выдаст ошибку.

Причина 2. Скрытая табличная часть «Расшифровка платежа»

В современных интерфейсах 1С:Бухгалтерия 3.0 данные о курсах и кратности часто скрыты от глаз пользователя. Рассмотрим пример документа Авансовый отчет. На вкладке «Оплата» мы видим основные реквизиты, но за ними стоит табличная часть ОплатаПоставщикам, содержащая скрытые поля.

Выясним, как актуализировать эти данные:

  1. В документе найдем кнопку Разбить платеж (она находится над табличной частью или в меню «Еще»).
  2. В открывшейся форме «Редактирование платежа» проверим колонки Курс и Кратность. Если там стоят нули, это и есть причина ошибки.
  3. Попробуем простой способ: перевыберем договор с контрагентом. При выборе договора срабатывает обработчик события, который автоматически заполняет скрытые реквизиты курса значениями из регистра.
  4. Если перевыбор не помогает, введите значения «1» вручную в этой форме и нажмите «ОК».

Причина 3. Ошибки при обмене данными и программном создании документов

Проанализируем ситуацию, когда документы загружаются из сторонних систем (например, из 1С:Управление торговлей или клиент-банка) — пригодится автоматическое заполнение расшифровки платежей при импорте выписки. Часто при программном создании объекта реквизиты КурсВзаиморасчетов и КратностьВзаиморасчетов остаются незаполненными (равными 0), так как они не были явно указаны в коде загрузки.

Для массового исправления таких документов рекомендуем использовать обработку Групповое изменение реквизитов (поможет автозаполнение реквизитов банковских документов по правилам):

  1. Откроем обработку (раздел Администрирование — Обслуживание — Корректировка данных).
  2. Выберем тип объекта (например, Списание с расчетного счета).
  3. В настройках выберем табличную часть Расшифровка платежа.
  4. Установим значения для реквизитов Курс взаиморасчетов и Кратность взаиморасчетов равными 1.
  5. Выполним изменение для проблемных документов.

Причина 4. Несоответствие настроек в карточке договора

Посмотрим на настройки договора с контрагентом. Ошибка часто возникает, если в договоре указано, что Цена в — USD или EUR, а оплата производится в рублях, при этом курс пересчета на дату документа не загружен.

Рассмотрим порядок действий:

  1. Откроем карточку договора.
  2. Развернем группу Расчеты.
  3. Убедимся, что валюта договора соответствует фактической валюте операции. Если вы платите рубли по рублевому договору, там должен стоять код 643.
  4. Если договор ведется «В условных единицах», программа в обязательном порядке потребует курс для пересчета. Проверьте, не установлен ли этот признак ошибочно.

Решение для разработчиков (программное заполнение)

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

Пример кода для обработки документа:


Для Каждого СтрокаТЧ Из Объект.ОплатаПоставщикам Цикл
    // Проверяем, если курс не заполнен, устанавливаем единицу
    Если СтрокаТЧ.КурсВзаиморасчетов = 0 Тогда
        СтрокаТЧ.КурсВзаиморасчетов = 1;
    КонецЕсли;
    
    // Кратность также не может быть нулевой для проведения
    Если СтрокаТЧ.КратностьВзаиморасчетов = 0 Тогда
        СтрокаТЧ.КратностьВзаиморасчетов = 1;
    КонецЕсли;
КонецЦикла;

Этот небольшой фрагмент кода предотвратит появление ошибки Поле Кратность взаиморасчетов не заполнена, которая часто идет «в паре» с ошибкой курса.

Дополнительные технические нюансы

Иногда проблема кроется в кэше платформы или использовании устаревших версий (например, 8.3.6). В старых версиях платформы механизмы отрисовки управляемых форм могли давать сбой, из-за чего скрытые поля не инициализировались корректно при открытии документа.

В такой ситуации выполним следующие шаги:

  1. Очистим локальный кэш конфигурации (удалим базу из списка и добавим её заново).
  2. Проверим счета учета расчетов. Если вместо 60.01 ошибочно указан валютный счет 60.21, система автоматически начнет требовать заполнения валютных реквизитов, даже если валюта договора — рубль.

Подведем итог: в большинстве случаев ошибка «Не заполнена колонка Курс взаиморасчетов» решается простой проверкой справочника Валюты на наличие записи курса рубля (равного 1) и отсутствия дублей. Если же проблема возникла после обмена данными, наиболее эффективным методом будет перевыбор договора в документе или использование групповой обработки реквизитов — поможет инструмент автоматической обработки реквизитов банковской выписки.

← На главную