Операции в системе Brainysoft
В системе Brainysoft все изменения баланса происходят посредством Операций, которые в свою очередь формируется из нескольких параметров: "Операция"
1. Вид суммы
2. Вид движения
3. Знак
4. Тип платежа
5. Баланс/Забаланс
6. Соответствующие транши, по которым произошли движения
7. Cуммы
где,
- Вид суммы AmountTypes , справочник возможных видов задолженностей по контрактам .
Получение справочника виды сумм http://docs.brainysoft.ru/page/731
- Вид движения , ActionType список возможных движений можно посмотреть здесь т.е. это по сути то что происходит с задолженностью (начисление/погашение/списание/сторно....)
- Знак - sign 0 - плюс 1 - минус Увеличение задолженности клиента происходит со знаком "плюс", уменьшение со знаком "минус" т.е. начисление ОС (выдача), процентов. штрафов по кредитным контрактам происходит со знаком плюс, так как это увеличение задолженности клиента, а по депозитным (вклады клиента) - со знаком минус, так как это увеличение задолженности организации перед клиентом
- Тип платежа "paymentTypeId", возможные значения: 101171 - Банк 101172 - Касса 101173 - Пусто
Для операций, которые происходят за счет "платежей", т.е. напрямую связаны с ДДС (Выдача, Погашение, Предоплата, Переплата) могут быть значения Банк/Касса, в зависимости от того каким способом был произведен платеж
Для внутренних операций, которые никак не связаны с поступлением денежных средств или расхода - всегда тип платежа "пусто". (Начисление/зачет предоплаты/погашение за счет предоплаты/списания/сторно/реструктуризация/цессия и т.п.)
- Баланс/Забаланс "Balance"/"outBalance" - дополнительный признак для
Учет по процентам, штрафам и сборам может быть переведен при просрочке за баланс, что позволяет выделить эти начисления из общего учета и не выгружать их в 1С, но при этом продолжать вести начисления в системе. При погашении задолженности начисления из забаланса могут быть переведены в баланс.
- Транши - периоды из графика платежей контракта, по которым непосредственно происходят движения: "issueDate"- дата начала транша,
"repaymentDate"- дата окончания транша
График может состоять из одного или нескольких траншей. Каждый последующий транш всегда начинается с даты погашения предыдущего. Начисления по траншу начинаются со следующей даты после даты начала транша и по дату окончания транша включительно. Например:
1. "issueDate": "2015-09-20", "repaymentDate": "2015-10-20",
2. "issueDate": "2015-10-20", "repaymentDate": "2015-11-20",
проценты по первому траншу будут начислены с 21.09.2015 по 20.10.15 включительно обе даты. Поэтому следующий транш начинается с 20.10.15
- Сумма. "amount" отражается в локальной валюте (в которой ведется учет) и иностранной (перерасчет производится по курсу). Локальная для России всегда рубли. Иностранная указывается в контракте "local": 25434.7, "foreign": 0
Одна операция может сформировать только одно движение по одному виду суммы. Например, начисление процентов: Вид суммы "Процент", Вид движения "Начисление", знак "Плюс", тип платежа "Пусто".
Существует ограничение по комбинации использования всех этих параметров в системе, так как операции выгружаются в конечном итоге в 1С, где для каждого типа операции (возможных вариантов) прописываются соответствующие проводки , т.е. Бухгалтерия должна понимать значение этой операции и каким образом отразить её в учете. Нельзя делать операцию Начисление со знаком минус, а погашение со знаком плюс. Или с точки зрения бухгалтерии нельзя сторнировать ОС или др. рода ограничения. Для этого в БС существует справочник "корректных проводок", где устанавливаются эти ограничения.
Но, в связи с тем, что в системе присутствует настраиваемая логика Обработки контрактов и автоматическое распределение платежей, удобнее "управлять" сразу несколькими операциями.
"Документ" - может содержать сразу несколько операций, например: Документ "Погашение с предоплатой". содержит в себе операцию: типовую операцию "Погашение" и операцию "Предоплата" Обе операции в данном случае относятся к операциям связанным с ДДС
"Процессы" - могут содержать в себе один или несколько документов. Например, Процесс "Обработка с досрочным зачетом предоплаты и перерасчетом графика"- содержит в себе документы: Начисление процентов, зачет предоплаты, перерасчет графика.
Что касается непосредственно методов получения информации по операциям:
1. http://docs.brainysoft.ru/page/431 метод позволяет получить все операции по контракту с датой меньше либо равно переданной дате причем включительно, то есть грубо говоря - дата в метод передаётся, например, 2017-09-20 и все операции возвращаются фактически меньше либо равны 2017-09-20 23:59:59
В интерфейсе Brainysoft мы используем его для вывода таблицы "Детальная раскладка по операциям" в Финансовой информации по контракту здесь можно увидеть пример:
2. В методе http://docs.brainysoft.ru/page/439 возвращаются акторы (процессы, документы, операции) за указанный период
т.е. если задаётся период двумя датами 2017-09-01 и 2017-09-20, то в итоге выборка будет по операциям с 2017-09-01 00:00:00 по 2017-09-20 23:59:59
В этом методе присутствует необязательный параметр portion-size, в котором можно передать кол-во элементов на одной странице если не указать этот параметр, то, используется значение из Констант "Кол-во элементов на странице" (сейчас установлено 100).
В интерфейсе пример использования можно увидеть на странице Контракты – Операции: