Как ИспользоватьСубконто
или почему операция — «любимый» инструмент бухгалтера.
ФормаОперации. ИспользоватьСубконто(). Живет здесь такой метод.
«Это ж бухгалтерские итоги!» — воскликнет каждый первый аттестованный специалист, и будет прав. Что делает сей глагол в форме операции? А про ИспользоватьВалюту Вы что-нибудь слыхали?
А назначение ИспользоватьСубконто таково — задать для определенных видов субконто значения по умолчанию. Так неприметно ПриОткрытии ЛюдиВЖёлтом установили использовать по умолчанию, кроме ОсновнойВалюты, ОсновнойСклад и ОсновнойБанковскийСчет, ОсновноеПодразделение, ОсновнойВариантРеализации и ОсновнойВидДеятельности. Хотя затем передумали, и три последних зачем-то закрасили зеленым цветом. Быть может, Вы найдете у себя в тексте несколько другие виды, однако все они схожи как собаки — образцы для всех хранятся в сходноименных константах.
Итак, щелкнул пальцем счет 41.Х — пожалуйте Вам Ваше МестоХранения, счет 51 — вот Ваш РасчетныйСчет, Ваше Высокоблагородие. Согласитесь, это приятно. И полезно. Мы то знаем, что заполнение реквизитов значениями по умолчанию есть не что иное как один из методов оптимизации доступа к базам данных, путем снижения количества обращений.
Щелк счет 41.1 — «Основной склад», 41.2 — «Основной склад», 41.3 — «Основной склад», 43, 10.1, 10.3, 10.5 … — не поверишь, тоже «Основной склад».
Помечтаем — 41.1 — «Оптовая база», 41.2 — «Магазин», 43 — «Склад готовой продукции», 10.1 — «Склад сырья», 10.3 — «Mersedes S500″… Кстати, а где ОсновноеТопливо, ОсновнойВидПлатежаВБюджет и ОсновноеОсновноеСредство? И почему, наконец, зеленым цветом ОсновноеПодразделение и сотоварищи?
Ответа нет, перед нами очередное недоразумение.
Именно так — не-до-разумение.
Предлагаю более простое и вместе куда более мощное решение:
Дополнительные реквизиты счета: ВыбВалюта, ВыбСубконто1, ВыбСубконто2, ВыбСубконто3.
Картинка №1
Редактировать счет настоятельно рекомендую только диалоге.
Картинка №2
Остальное — дело техники — ПриВыбореСчета установить значения субконто. В качестве значений по умолчанию возможны и группы справочников. Почему нет? В этом случае слудует ПриНачалеВыбораЗначения ИспользоватьРодителя, и форма списка справочника откроется в нужном месте. Еще не впечатляет?
В
//
Функция глВалютаСчетаПоУмолчанию(Счет) Экспорт
Если ПустоеЗначение(Счет) = 1 Тогда
Возврат "";
ИначеЕсли ПустоеЗначение(Счет.ВыбВалюта) = 0 Тогда
Возврат Счет.ВыбВалюта;
ИначеЕсли ПустоеЗначение(Счет.Родитель()) = 0 Тогда
Возврат глВалютаСчетаПоУмолчанию(Счет.Родитель())
Иначе
Возврат "";
КонецЕсли;
КонецФункции
//
Функция глСубконтоСчетаПоУмолчанию(Счет, НомерСубконто) Экспорт
Перем Субконто;
Если ПустоеЗначение(Счет) = 1 Тогда
Возврат "";
КонецЕсли;
Субконто = Счет.ПолучитьАтрибут("ВыбСубконто" + НомерСубконто);
Если ПустоеЗначение(Субконто) = 0 Тогда
Возврат Субконто;
ИначеЕсли ПустоеЗначение(Счет.Родитель()) = 0 Тогда
Возврат глСубконтоСчетаПоУмолчанию(Счет.Родитель(), НомерСубконто)
Иначе
Возврат "";
КонецЕсли;
КонецФункции
И нет никакой необходимости настраивать каждый субсчет, наши методы глВалютаСчетаПоУмолчанию() и глСубконтоСчетаПоУмолчанию() умеют работать рекурсивно. Как, как? Так, так, вернуть значение по умолчанию, общее для всех субсчетов субсчета.
Таким образом, мы создали широкое поле для работы самому дотошному бухгалтеру. И избавились от него на какое-то время. Тебе, специалисту, тоже работы подвалило. Мы то знаем, что заполнение реквизитов значениями по умолчанию есть не что иное как один из методов оптимизации доступа к базам данных, путем снижения количества обращений.
01.03.2005, 28.10.2009, 05.03.2012
Не пойму никак, почему в описании используются старые счета. В плане счетов в 2012г. 41 «Паевой капитал», 51 «Долгосрочные векселя выданные». Согласитесь, Ваше Высокоблагородие, некоректно излагаете.
(1) Nadina2107,
Нам, эстонцам, за вами не угнаться.