v77. Как ИспользоватьСубконто


Как ИспользоватьСубконто или почему операция - "любимый" инструмент бухгалтера.

Как ИспользоватьСубконто
или почему операция - "любимый" инструмент бухгалтера.

    ФормаОперации. ИспользоватьСубконто(). Живет здесь такой метод.
"Это ж бухгалтерские итоги!" - воскликнет каждый первый аттестованный специалист, и будет прав. Что делает сей глагол в форме операции? А про ИспользоватьВалюту Вы что-нибудь слыхали?
    А назначение ИспользоватьСубконто таково - задать для определенных видов субконто значения по умолчанию. Так неприметно ПриОткрытии ЛюдиВЖёлтом установили использовать по умолчанию, кроме ОсновнойВалюты, ОсновнойСклад и ОсновнойБанковскийСчет, ОсновноеПодразделение, ОсновнойВариантРеализации и ОсновнойВидДеятельности. Хотя затем передумали, и три последних зачем-то закрасили зеленым цветом. Быть может, Вы найдете у себя в тексте несколько другие виды, однако все они схожи как собаки - образцы для всех хранятся в сходноименных константах.
    Итак, щелкнул пальцем счет 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

Файлы обработки:

-