Учет оплаты документов (УАУ)

Материал из КинтВики
Перейти к: навигация, поиск


Назначение подсистемы

Подсистема предназначена для автоматического отслеживания (учета) долей оплаты (предоплаты) по каждому первичному документу. Такой учет необходим при решении задач бухгалтерского, налогового и финансового учета.

Глоссарий

Доля оплаты
процент оплаты документа. Подсистема учитывает неполную оплату документов.
Метод оплаты FIFO
первыми оплачиваются самые старые документы, не оплаченные на момент проведения финансового документа. Такой порядок оплаты принят "по умолчанию", если не указан список документов к оплате.
Метод оплаты "по списку"
если к финансовому документу "прицеплен" список оплачиваемых документов, то первыми оплачиваются документы списка. Причем документы списка оплачиваются принудительно – тот факт, что документы из списка были уже оплачены ранее, во внимание не принимается.
Документ к оплате
документ, который подлежит оплате (накладная, счет-фактура и т.п.). Отдельно учитывается оплата продаж и покупок.
Покупатели
контрагенты, которым фирма что-либо продала (реализовала). Каждый документ продажи имеет покупателя.
Поставщики
контрагенты, у которых фирма что-либо купила (приобрела). Каждый документ покупки имеет поставщика.
Привязка бухгалтерских счетов к учетным регистрам
реализация механизма отображения движений по бухгалтерским счетам на предопределенные учетные регистры. Преимущество учетных регистров в том, что их аналитика является "жесткой" (предопределенной). Такая привязка обеспечивает соответствие данных бухгалтерского учета (с нефиксированной аналитикой) данным оперативного (управленческого) учета. В данной подсистеме используется привязка счетов к учетному регистру "Взаиморасчеты".
Регламентный счет
бухгалтерский счет, тип которого предопределен в конфигурации. В данной подсистеме используются предопределенные счета поставщиков (60) и покупателей (62).
Сальдо дебетовое
положительный остаток на счете.
Сальдо кредитовое
отрицательный остаток на счете.
Список документов к оплате
список документов, которые необходимо обязательно оплатить. Используется в тех случаях, когда необходимо "вручную" указать, какие документы оплачиваются.
Финансовый документ
документ, который оплачивает документы к оплате (выписка банка, платежное поручение, акт взаимозачета и т.п.).

Описание задачи, проблемы

  • Необходимо в любой момент времени иметь возможность развернуть состояние взаиморасчетов по документам.
  • Необходимо иметь возможность автоматического учета оплаты/неоплаты документов системой, т.е. без интерактивного вмешательства пользователя.
  • Нельзя привязывать вызов процедур к типу документа, поскольку с оплатой документов могут быть связаны много разных видов документов (накладные, счета-фактуры, выписки банка, платежные поручения, акты взаимозачета, уступки долга и прав требования, бух. справки и пр.).
  • Необходимо иметь возможность интерактивного указания списка документов к оплате.
  • Необходимо грамотно отследить возврат документов (при этом документ может быть оплачен полностью, частично или неоплачен). Система должна обеспечить выполнение инвариантов при данной операции.
  • Контрагент, указанный в документе (покупатель или поставщик) не всегда совпадает с контрагентом учетного регистра. Изменение контрагента может иметь место при операциях уступки долга (права требования).

Концепция решения

  • Используем предопределенные счета (Счет покупателя, Счет поставщика) для того, чтобы привязать вызов процедур подсистемы к изменению состояния счетов.
  • При выполнении движений на предопределенных счетах анализируем, в дебете или в кредите находится счет и, в зависимости от этого, либо заносим документ в реестр покупок/продаж, либо пытаемся оплатить документы из данного реестра.
  • При возврате оплаченного документа от контрагента пытаемся перенести возникающий при этом излишек оплаты на другие неоплаченные документы данного контрагента, если они есть. Если их нет, или их сумма недостаточна, то проводим излишек оплаты как предоплату.

Инварианты, правила

  • Кредитовое сальдо расчетов с поставщиками (регистр "Взаиморасчеты") должно быть подтверждено неоплаченными документами покупок (регистр "Учет оплаты покупок"). Дебетовое сальдо с покупателями (регистр "Взаиморасчеты") - неоплаченными документами продаж (регистр "Учет оплаты продаж").
  • Дебетовое сальдо расчетов с поставщиками (регистр "Взаиморасчеты") должно быть подтверждено документами предоплаты поставщикам (регистр "Учет оплаты покупок"). Кредитовое сальдо с покупателями (регистр "Взаиморасчеты") - документами предоплаты от покупателей (регистр "Учет оплаты продаж").
Приведенные выше инварианты оперируют с ресурсами в базовой валюте (рубли). По валютным остаткам взаиморасчетов подокументный учет оплат/предоплат не ведется.
  • По одному и тому же значению детерминанта (набора измерений) регистров "Учет оплаты покупок (продаж)" не могут одновременно быть ненулевыми остатки ресурсов "Сумма к оплате" и "Сумма предоплаты". Другими словами, если есть неоплаченные документы, то предоплаты быть не может.

Контроль выполнения инвариантов осуществляется через отчет Контроль взаиморасчетов.

Последовательное перепроведение документов контрагента за период должно автоматически убирать "красноту" из отчета, т.е. восстанавливать выполнение инвариантов.

Реализация

Справочники

Документы

Любой документ, выполняющий типовые операции (бухгалтерские проводки), может выполнить движения по регистрам учета оплаты/предоплаты.

Особые правила определены для двух документов:

  • Документ "Ввод остатков" (УАУ) – при начальном вводе остатков на счетах взаиморасчетов необходимо создать пустышки (документы прошлых периодов), которые будут оплачиваться (списываться с предоплаты) в текущем периоде (с момента перевода первичных документов на УАУ).
  • Документ "Корректировка оплаты документов" (УАУ) - при наличии в информационной базе неверных остатков по регистрам оплаты, которые невозможно исправить стандартным способом (последовательным перепроведением документов за период), ситуацию можно поправить данным документом. Он позволяет явным образом указать, каково должно быть состояние регистров учета оплат. Рекомендуется использовать только в самых запутанных случаях.

Регистры

Учет оплаты покупок – регистр остатков

Атрибуты Тип/Вид Описание
Измерения
Док Документ Документ к оплате. Если имеет место предоплата, то документ, сделавший предоплату.
Контрагент Справочник.Клиенты Поставщик, документы которого подлежат оплате. В случае предоплаты – поставщик, которому сделана предоплата.
Бух. счет Справочник.БухгалтерскиеСчета Бухгалтерский счет, на котором "висит" неоплата или предоплата. Должен быть регламентирован как счет поставщика (60-е счета).
Договор Справочник.Договоры Договор с контрагентом, по которому проходят расчеты.
Ресурсы
Сумма к оплате Число, 17.2 Сумма документа к оплате. Движение на приход – постановка документа к оплате, движение на расход – снятие документа с оплаты.
Предоплата Число, 17.2 Предоплата по документу.
Реквизиты движения
Тип оплаты Число Флаг. 0 - оплата, 1 - списание долга


Учет оплаты продаж – регистр остатков

Атрибуты Тип/Вид Описание
Измерения
Док Документ Документ к оплате. Если имеет место предоплата, то документ, сделавший предоплату.
Контрагент Справочник.Клиенты Покупатель, документы которого подлежат оплате. В случае предоплаты – покупатель, которому сделана предоплата.
Бух. счет Справочник.БухгалтерскиеСчета Бухгалтерский счет, на котором "висит" неоплата или предоплата. Должен быть регламентирован как счет покупателя (62-е счета).
Договор Справочник.Договоры Договор с контрагентом, по которому проходят расчеты.
Ресурсы
Сумма к оплате Число, 17.2 Сумма документа к оплате. Движение на приход – постановка документа к оплате, движение на расход – снятие документа с оплаты.
Предоплата Число, 17.2 Предоплата по документу.
Реквизиты движения
Тип оплаты Число Флаг. 0 - оплата, 1 - списание долга


Взаиморасчеты – регистр остатков

Атрибуты Тип/Вид Описание
Измерения
Клиент Справочник.Клиенты Контрагент, с которым учитываются расчеты.
Бух. счет Справочник.БухгалтерскиеСчета Бухгалтерский счет, по которому проходят расчеты
Договор Справочник.Договоры Договор с контрагентом, по которому проходят расчеты
Ресурсы
Долг клиента Число, 17.2 Остаток на счете. Если положителен, то контрагент должен компании, если отрицателен – компания должна контрагенту.
Долг клиента, $ Число, 17.2 Остаток в валюте. Используется при расчетах в валюте.
Реквизиты движения
Перекидка долга Перечисление.Булево Флаг. Да (Истина) – движение по регистру отражает перекидку долга между счетами, контрагентами или договорами.
КоррСчет Справочник.БухгалтерскиеСчета Корреспондирующий счет при изменении взаиморасчетов.


Состояние данных регистров отражает выполнение (невыполнение) основных инвариантов (правил, условий, ограничений) подсистемы (см. раздел "Инварианты"). Выполнение инвариантов зависит от последовательности ввода (проведения) первичных документов. Состояние регистра "Взаиморасчеты" не зависит от последовательности ввода. Состояние регистров "Учет оплаты" зависит от последовательности ввода, поскольку при списании ресурсов "Сумма к оплате", "Сумма предоплаты" необходимо знать список документов, с которых списываются ресурсы.

Отчеты

Обработки

Глобальные функции, процедуры, переменные

Процедуры и функции

  • ЭтоСчетПокупателя(), ЭтоСчетПоставщика() – функции. Возвращают флаг 1/0.
  • УчетОплатыПокупок(), УчетОплатыПродаж() – выполнить отражение в учетных регистрах данных об оплате документов.
  • ЗанестиВРеестрПокупокПродаж() – проводимый документ заносится в регистр «Учета оплаты покупок/продаж». Если на момент проведения существует предоплата, то она списывается, а документ оплачи-вается.
  • ПроверитьОплатуДокументов() – функция/процедура. Оплачивает неоплаченные документы. Излишек суммы заносится как предоплата. Возвращает суммы оплаты (сумму предоплаты).
  • СторнироватьОплатуДокументов() – для проводок с отрицательной суммой. Сторнирует оплату документов.
  • УстановитьПриоритетОплатыДокументов() – устанавливает список документов, которые необходимо оплатить. Зависит от наличия заполненных списков _табПокупкиКОплате, _табПродажиКОплате. Если спи-ски пусты, то выбирает документы из регистра учета неоплаченных покупок/продаж по методу FIFO.
  • ЗанестиДанныеОбОплатеДокументов() – зафиксировать в кэш-таблице факт оплаты документов.
  • ИзменитьДанныеОбОплатеДокументов() – изменить данные в кэш-таблице.
  • СписатьПредоплатуПоДокументам() – списать документы, создавшие предоплату. Вызывается из процедуры ЗанестиВРеестрПокупокПродаж()..
  • ЕстьДанныеОбОплатеДокументов() – функция. Возвращает флаг, есть данные в кэш-таблице или нет.

Работа со списком принудительно оплачиваемых документов:

  • СоздатьТаблицуДокКОплате() – инициализировать список документов к оплате _табПокупкиКОплате, _табПродажиКОплате.
  • ЗаполнитьСписокДокКОплате()
  • ЗаполнитьТабНеоплаченныхДокПоСписку()
  • ПривязкаДокументовКОплате() – вызывается из документов для заполнения списков документов к приоритетной оплате.

Переменные

  • тзОплатаДок – кэш-таблица для учета оплаты документов во время проведения документа. Структура совпадает со структурой регистров «Учет оплаты покупок/продаж». Инициализируется перед проведением документа. Заполняется данными по мере изменения оплаты (предоплаты) документов.
  • тзУчетОплатыДок – кэш-таблица для учета наличия данных об оплате документов в таблице тзОплатаДок. Если по детерминанту (БухСчет, Клиент, Договор) данные из регистров уже извлекались, в данной таблице выставляется флаг (процедура «ЗанестиДанныеОбОплатеДокументов()»).
  • _табПокупкиКОплате, _табПродажиКОплате – списки документов, которые интерактивно указываются пользователем для приоритетной (обязательной) оплаты.
  • _ОплачиватьТолькоПоСписку – флаг, устанавливается интерактивно пользователем при «привязке» списка документов к оплате. 1 – документы списка всегда оплачиваются. 0 – документы списка оплачиваются только в том случае, если на момент проведения документа были неоплачены.

Контекст, исходные условия, ограничения

UAUoplata.png


Подсистема используется при проведении документов, если проводки документа связаны со счетами поставщиков или покупателей. Контекст функционирования подсистемы определяется:

  • Проводимым документом.
  • Текущим (рабочим, оперативным) документом – обычно совпадает с проводимым. Для "Возврата товара" может не совпадать.
  • Проводкой. Важны как счет, так и корреспондирующий счет.
  • Суммой проводки.
  • Контрагентом и Договором.
  • Списком существующих документов к оплате и/или предоплаты (данные регистра).
  • Списком документов к приоритетной оплате (задается интерактивно).

Порядок работы, логика функционирования

Ниже приведена только основная логика процедур.


UAUoplataProc1.png


UAUoplataProc2.png


UAUoplataProc3.png


Примеры

Методика тестирования

Связанные подсистемы, контуры, механизмы

  • Механизм организации типовых операций, корреспонденции счетов.
  • Учет взаиморасчетов.
  • Расчет НДС к возмещению.
  • Расчет НДС к уплате.

К описанию

  • Учет оплаты векселей и ценных бумаг.

К пересмотру

  • В будущих версиях регистры учета взаиморасчетов и оплаты/предоплаты должны быть объединены в один.
  • Возможно, что ресурсы "К оплате" и "Предоплата" должны быть объединены.
  • Учет долга по документам похож на партионный (подокументный) учет товаров, так что, возможно, что данные подсистемы должны иметь единое ядро.
  • Механизм привязки документов необходимо перевести на дополнительные реквизиты документа (табличная часть) или на "стикеры".