Первоначально необходимо определить какие счета будут использоваться в расчетах. Кроме этого нужно определить перечень субконто. Для этого необходимые данные сведем в таблицу, для удобства:
Счет | Аналитика |
10 | По местам хранения |
По приходным накладным | |
По товару, услуге | |
50 | нет |
51 | нет |
60.0 | По материально-ответственным лицам |
По приходным накладным | |
По поставщикам | |
60.01 | По договорам |
По подрядчикам | |
61 | нет |
63 | нет |
76 | нет |
После определения видов субконто, перейдем непосредственно к их созданию. Для этого в окне метаданных в разделе "Виды Субконто"" вводим новое субконто.
Создание Субконто.
Идентификатор: МестоХранения
Тип: С.Склады
Триады: нет
Неотрицательный: нет
Отбор: да
Цена: не назначена
Валютная цена: не назначена
Пустые субконто: нет
Быстрый выбор: да
Рис.13
Аналогичным образом создадим оставшиеся виды субконто:
· Поставщики
· Подрядчики
· ПриходнаяНакладная
· ТоварУслуга
· Договора
· МОЛ
Переходим к созданию плана счетов. В окне метаданных находим раздел "Планы Счетов".
1. Входим в режим редактирования раздела "Планы счетов"
Рис.14
1. Максимальная длина кода счета. Зададим 7;
2. Длина наименования счета 25;
3. Планы счетов. Нажимаем [Новый]. Появилось сообщение "Для бухгалтерии был добавлен Документ операций". [ОК]. Мы вошли в окошко свойств плана счетов;
4. Идентификатор – Наш. Шаблон кода - ###.###
5. Добавим реквизит "ПолноеНазвание" типа Строка неограниченной длины;
6. Количественный учет только по аналитике – Да. Аналитический учет – максимальное количество субконто– 3;
7. Редактировать счета – Обоими способами;
8. Основной план счетов – Наш;
9. Валютный учет. Справочник валют – С.Валюты;
10. Курс – Курс;
11. Кратность – Кратность;
12. Разделитель учета- не назначен;
13. Создадим форму счета.
Рис.15
14. Отредактируем форму списка;
15. Добавим кнопку. Заголовок – "Печать", формула – Печать();
16. В модуле формы напишем процедуру:
Процедура Печать()
Сч=СоздатьОбъект("Счет");
// Создаем в памяти экземпляр объекта "Счет"
Сч.ИспользоватьПланСчетов(ИспользоватьПланСчетов());
// Указываем, что будем использовать тот план счетов, который является
// текущим в открытом списке счетов
Таб=СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Таблица");
Таб.ВывестиСекцию("Шапка");
Сч.ВыбратьСчета();
// Открываем подборку со списком счетов в текущем плане счетов
Пока Сч.ПолучитьСчет()=1 Цикл
Если Сч.ЭтоГруппа()=1 Тогда
// Это счет либо субсчет, содержащий субсчета
Таб.ВывестиСекцию("Группа");
Иначе
// Это счет не содержащий субсчетов, либо это субсчет самого нижнего уровня
Таб.ВывестиСекцию("Строка");
КонецЕсли;
КонецЦикла;
Таб.ТолькоПросмотр(1);
Таб.ПараметрыСтраницы(2,,1,,,,,,,1,,);
// ориентация "Ландшафт"
Таб.Показать("План счетов");
КонецПроцедуры
17.Создадим печатную форму нашего плана счетов:
Рис.16
18. Заполняем форму плана счетов.
19. Распечатаем полученный план счетов:
Рис.17
Операция
Создадим документ Операция. Документ создает операцию, которая состоит из проводок, а операция изменяет остатки в плане счетов.Войдем в режим редактирования документа. Идентификатор трогать не будем, журнал создадим. Создаем журнал "Операции", без каких-либо реквизитов, тип журнала - Обычный. Форму списка журнала создадим самую простую. В документе "Операция" укажем журнал – "Операции". Нумератор назначать не будем, Периодичность – в пределах года. Длина – 8, тип числовой, автоматическая нумерация – Да, контроль уникальности – Да. Реквизитов шапки либо табличной части этот вид документа не имеет – он просто констатирует факт создания бухгалтерской операции вручную.
В дереве метаданных найдем объект "Операция". Войдем в режим редактирования объекта "Операция". Здесь укажем реквизиты.
Операции состоят из проводок, войдем в редактор проводок.
1. Сумма. Длина 10, при точности 2;
2. Количество. Длина – 2, точность – 0;
3. Валютная сумма – 10.2;
4. Отбор. Отбор разрешим по дебету/кредиту по всем счетам и субсчетам;
5. Отбор по валюте – Да;
6. Отбор по количеству – Да;
7. Отбор по сумме – Да;
8. Отбор по валютной сумме – Да;
9. Отбор по планам счетов отсутствует
10. Сложные проводки – обязательно.
Рис.18
Рис.19
Редактируем форму журнала проводок.
1. Создаем форму списка
2. Добавим в форму переключатель. Заголовок - "разделять по журналам", Идентификатор –"ФлагПоЖурналам", Формула – ПоЖурналам();
3.
4. В модуле формы пропишем процедуру:
Процедура ПриОткрытии()
ФлагПоЖурналам=ВосстановитьЗначение("ФлагПоЖурналам");
// Получаем сохраненное между сеансами значение
Если ФлагПоЖурналам=1 Тогда
ЗакладкиОтбора("НомерЖурнала",1);
// Устанавливаем отбор
Иначе
ЗакладкиОтбора("",1);
// Отключаем отбор
КонецЕсли;
КонецПроцедуры
//=====================================================
Процедура ПоЖурналам()
СохранитьЗначение("ФлагПоЖурналам",ФлагПоЖурналам);
// Указываем какое значение и под каким именем сохранить для
// текущего пользователя между сеансами его работы
Если ФлагПоЖурналам=1 Тогда
ЗакладкиОтбора("НомерЖурнала",1);
Иначе
ЗакладкиОтбора("",1);
КонецЕсли;
КонецПроцедуры
Рис.20
После определения всех реквизитов проводок можно перейти к созданию формы Операции. Вернемся в окно редактирования свойств объекта метаданных Операция. Вызовем окно редактирования формы операции.
Рис.21
Напишем в модуле формы процедуру:
Процедура ПриОткрытии()
ИспользоватьВалюту(Константа.ОснВалюта);
// Здесь мы указываем, что в форме операции по умолчанию использовать основную
// валюту
КонецПроцедуры
Создадим и форму списка операций, самого простого вида.
Документ Приходная Накладная.
Составляется при оприходовании на склад ТМЦ.
В дереве метаданных выбираем раздел "Документы". Создаем новый документ.
Идентификатор: ПриходнаяНакладная
Журнал: ПриходныеНакладные
Нумератор: Нет Периодичность: Год
Длина: 5 Тип: число
Уникальность: да Автонумерация: да
Может являться основанием для документа любого вида?: нет
Отредактируем журнал ПриходныеНакладные. Добавим в него две графы – Кол из реквизита таблицы Кол, и Сумма из реквизита Сумма. Настроим форму журнала.
Перейдем к форме документа. Создаем ее.
В поле Наименование пишем формулу Товар(), в поле Цена – Цена (). Под таблицей добавим текст с формулой для вычисления суммы по колонке Итог("Кол"), Итог("Сумма").
В модуле формы документа пишем:
Процедура ПриОткрытии()
ПриЗаписиПерепроводить(1);
КонецПроцедуры
Процедура Наименование()
Если Наименование.Выбран()=1 Тогда
КонецЕсли;
КонецПроцедуры
Процедура Цена()
Цена=Окр(Наименование.Цена);
Сумма=Окр(Кол*Цена,2,1);
КонецПроцедуры
Процедура Печать()
Таб=СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Таблица");
Таб.ВывестиСекцию("Шапка");
ВыбратьСтроки();
Пока ПолучитьСтроку()=1 Цикл
НС=НомерСтроки;
// атрибут НомерСтроки возвращает номер текущей строки
// табличной части
Таб.ВывестиСекцию("Строка");
КонецЦикла;
ИтогПр=Формат(Итог("Сумма"),"ЧПДС");
// В переменную ИтогПр мы выведем сумму прописью
Таб.ВывестиСекцию("Подвал");
Таб.ТолькоПросмотр(1);
Таб.ПараметрыСтраницы(1,100,1);
Таб.Показать("");
КонецПроцедуры
Рис.22
Создаем печатную форму документа:
Рис.23
Теперь переходим к модулю документа. Пишем процедуру:
Процедура ОбработкаПроведения()
ВыбратьСтроки();
Пока ПолучитьСтроку() = 1 Цикл
Операция.НоваяПроводка();
Операция.Дебет.Счет = СчетПоКоду("10",ПланыСчетов.Наш);
Операция.Дебет.МестоХранения = Склад;
Операция.Дебет.ТоварУслуга = Наименование;
Операция.Дебет.ПриходнаяНакладная = ТекущийДокумент();
Операция.Кредит.Счет = СчетПоКоду("60.0",ПланыСчетов.Наш);
Операция.Кредит.Поставщики = Поставщик;
Операция.Кредит.ПриходнаяНакладная = ТекущийДокумент();
Операция.Кредит.МОЛ = ЧерезТов;
Операция.Сумма = Сумма;
КонецЦикла;
Операция.Содержание = "Поступили материалы от поставщиков";
Операция.СуммаОперации = Итог("Сумма");
Операция.Автор = АвторДокумента;