- •От автора курса
- •Содержание Урок 1.
- •Урок 2.
- •Урок 3.
- •Урок 4.
- •Занятие 1.01
- •Занятие 1.02
- •Занятие 1.03
- •Занятие 1.04
- •Занятие 1.05
- •Занятие 1.06
- •Занятие 1.07
- •Занятие 1.08
- •Занятие 1.09
- •Занятие 1.10
- •Занятие 1.11
- •Занятие 1.12
- •Занятие 1.13
- •Занятие 1.14
- •Занятие 1.15
- •Занятие 1.16
- •Занятие 1.17
- •Занятие 1.18
- •Занятие 2.19
- •С корреспонденцией
- •Без корреспонденции
- •Занятие 2.20
- •Занятие 2.21
- •Занятие 2.22
- •Занятие 2.23
- •Занятие 2.24
- •Занятие 3.25 расчет
- •Занятие 3.26
- •Занятие 3.27
- •Занятие 3.28
- •Занятие 3.29
- •Занятие 3.30
- •Перерасчеты
С корреспонденцией
Без корреспонденции
С точки зрения БУ эти записи идентичны и одинаково влияют на остатки. Независимо от выбора, система будет контролировать остатки и обороты по принципу двойной записи – обороты и остатки по Дт и Кт должны быть равны.
Но только в бухгалтерской записи с корреспонденцией можно получить «Корреспондирующие обороты» - обороты между конкретными счетами.
«Корреспонденция - Истина» - при этом система создает два поля «СчетДт» и «СчетКт», но измерение в регистре все равно одно – «Счет».
По ресурсу «Сумма»:
«Неотрицательное - Ложь» - могут быть проводки со знаком «-».
«Проверка заполнения – Не проверять» - нулевые записи по регистру бухгалтерии допускаются.
«Балансовый - Истина» - контроль баланса значений данного ресурса по Дт и Кт.
Создадим документ-регистратор, формирующий движения по данному регистру – «Операция бух»:
Свойство |
Значение |
Имя |
ОперацияБух |
Синоним |
Операция бух |
Представление объекта |
Операция |
Представление списка |
Журнал операций |
Структуру данных сделаем аналогичной структуре регистра бухгалтерии «Управленческий»:
Свойство |
Значение |
Закладка «Данные» |
|
Реквизиты |
|
Сумма операции |
|
Имя |
СуммаОперации |
Синоним |
Сумма операции |
Тип |
Число 15, 2 |
Содержание операции |
|
Имя |
СодержаниеОперации |
Синоним |
Содержание операции |
Тип |
Строка |
Неограниченная длина |
Истина |
Табличные части |
|
Проводки |
|
Счет Дт |
|
Имя |
СчетДт |
Синоним |
Счет Дт |
Тип |
ПланСчетовСсылка.Управленческий |
Проверка заполнения |
Выдавать ошибку |
Счет Кт |
|
Имя |
СчетКт |
Синоним |
Счет Кт |
Тип |
ПланСчетовСсылка.Управленческий |
Проверка заполнения |
Выдавать ошибку |
Сумма |
|
Имя |
Сумма |
Синоним |
Сумма |
Тип |
Число 15, 2 |
Сумма операции – это не сумма по регистру, данная сумма выводится для отображения общей суммы операции.
Свойство |
Значение |
Закладка «Движения» |
|
Оперативное проведение |
Запретить |
Удаление движений |
Удалять автоматически |
Конструктором создадим движения по регистру бухгалтерии «Управленческий»:
Итого код:
Процедура ОбработкаПроведения(Отказ, Режим)
// регистр Управленческий
Движения.Управленческий.Записывать = Истина;
Для Каждого ТекСтрокаПроводки Из Проводки Цикл
Движение = Движения.Управленческий.Добавить();
Движение.Период = Дата;
Движение.СчетДт = ТекСтрокаПроводки.СчетДт;
Движение.СчетКт = ТекСтрокаПроводки.СчетКт;
Движение.Сумма = ТекСтрокаПроводки.Сумма;
КонецЦикла;
КонецПроцедуры
В режиме исполнения:
Создадим операцию:
Добавим отображение в Журнале проводок списка проводок текущего документа «Операция»:
Добавим форму списка документа «Операция». К выбранным по умолчанию реквизитам добавим:
СуммаОперации.
СодержаниеОперации.
Добавим таблицу, отображающую часть регистра бухгалтерии – реквизит формы «Проводки»:
Свойство |
Значение |
Имя |
Проводки |
Заголовок |
Проводки |
Тип |
ДинамическийСписок |
Основная таблица |
РегистрБухгалтерии.Управленческий.ДвиженияССубконто |
Произвольный запрос |
Истина |
ДвиженияССубконто – в движение включается отображение аналитики (в примере ее пока нет).
Настройка списка – отредактируем запрос:
ВЫБРАТЬ
Управленческий.Период,
Управленческий.Регистратор,
Управленческий.НомерСтроки,
Управленческий.Активность,
Управленческий.СчетДт,
Управленческий.СчетКт,
Управленческий.Сумма,
Управленческий.МоментВремени
ИЗ
РегистрБухгалтерии.Управленческий КАК Управленческий
ГДЕ
Управленческий.Регистратор = &Регистратор
И укажем порядок «НомерСтроки – По возрастанию»
Добавим реквизит «Проводки» в форму.
В «Списке» при переходе между элементами установим отбор в динамическом списке «Проводки»:
&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)
УстановитьОтборВПроводках(Элементы.Список.ТекущиеДанные.Ссылка);
КонецПроцедуры
&НаСервере
Процедура УстановитьОтборВПроводках(Регистратор)
Проводки.Параметры.УстановитьЗначениеПараметра("Регистратор", Регистратор);
КонецПроцедуры
В реквизитах формы пометим, что реквизит «Ссылка» будет использоваться в форме всегда, чтобы избежать ошибки при выполнении процедуры «УстановитьОтборВПроводках()».
В режиме исполнения:
Создадим еще одну операцию:
Теперь при переходе по документам видно, что содержание таблицы с проводками обновляется.
Создадим отчет «Оборотно-сальдовая ведомость»:
Свойство |
Значение |
Имя |
ОСВ |
Заголовок |
Оборотно-сальдовая ведомость |
Откроем СКД, добавим «Набор данных-запрос» и откроем «Конструктор запроса»:
В регистре бухгалтерии 3 «реальных» таблицы – в таких таблицах доступны неактивные записи (Активность - Ложь).
Таблица «Управленческий» - отображает синтетические данные (счета и сумма).
Таблица «Управленческий.ДвиженияССубконто» - отображает аналитические данные.
Таблица «Управленческий.Обороты».
Таблица «Управленческий.Остатки» - поле «Остаток» имеет несколько видов:
СуммаОстаток |
В данном поле сумма хранится физически |
СуммаОстатокДт СуммаОстатокКт |
В каком из этих полей отобразится сумма, со знаком «+» или «-», зависит от Вида счета – если счет Активный, то остаток будет в Дт, если Пассивный, то в Кт. Причем значение «СуммаОстаток» будет возвращено с обратным знаком (если «-», то в Кт будет «+» и наоборот). Если счет Активно-пассивный, то остаток будет там, где Движение больше. |
СуммаРазвернутыйОстатокДт СуммаРазвернутыйОстатокКт |
Используется только для построения итогов. Показывает отдельно остаток по Дт и по Кт. Пример: Счет «Расчеты с поставщиками».
|
Желательно аналитику и служебные данные убирать из регистра бухгалтерии, т.к. сам по себе регистр бухгалтерии не очень быстрый механизм.
Вернемся в СКД:
СКД добавляет Роли, но из-за этого в данном случае неправильно формируются Итоги, очистим значения Ролей:
Настроим Параметры, чтобы пользователь указывал только одно значение параметра «Период отчета»:
Значение – это значение по умолчанию.
Дата окончания в Стандартном периоде всегда равна концу дня.
«Ограничение доступности – Ложь» - у полей «НачалоПериода» и «КонецПериода», чтобы эти поля не отображались в пользовательском режиме.
Закладка «Настройки» - сформируем основной вариант отчета:
Период отчета включим в пользовательские настройки:
«Период отчета – ПКМ – Свойства элемента пользовательских настроек»:
В режиме исполнения:
