Для начала я бы хотел написать, что в принципе сподвигло меня на написание данной статьи, а именно, отсутствие в принципе какой либо информации (во всяком случае в моем информационном поле) касательно темы написания типовых операций для БГУ 2. У меня есть подозрение, что написав такой шикарный адекватный механизм в новой версии (по сравнению с которым БГУ 1 нервно курит в сторонке), методисты расслабились, программисты ушли на перекур, а комьюнити осталось абсолютно обделенным. Приходя во многие учреждения, каких только операций я не видел. Отсутствующие реквизиты в проводках, поголовно все реквизиты вынесенные в дополнительные, на каждом шагу внутри прописаные реквизиты вручную, остатки копи-пасты в виде корявых описаний, а сверху, вишенкой на торте, красуются кривые ЖО, бессмысленные субконто, и не дай бог конечно (если у уникума был доступ к конфигуратору) снятый с поддержки релиз. Эта статья зрела 3 года внутри меня, и наконец-то получила шанс реализоваться.
Что такое типовая операция? Типовая операция это механизм формирования бухгалтерских проводок в конфигурации БГУ 2 (БГУ 1 касаться не будем). На этом моменте колени внедренцев ERP начинают нервно дрожать, ведь аналогичный механизм по хорошему сильно облегчил бы им жизнь во внедрении, но увы и ах, такая прерогатива доступна только госсектору, с его перегруженым учетом. Давайте разберемся для начала, почему для нас никогда не хватит стандартных типовых операций, которые идут из коробки? А дело все в том, что стандартные операции не покрывают наши потребности полностью. Если мы с вами заглянем под капот конфигурации, то обнаружим, что у многих механизмов до сих пор нет оптимального решения, из-за чего каждый раз, когда приходишь туда, где тебя не было (или был, но давно) приходится разгребать громадную свалку.
Как типовые операции могут помочь нам вести учет? Начиная с того, чтобы сделать дополнительные проводки по счетам бухгалтерского учета, заканчивая механизмами, позволяющими нам расставить дополнительную аналитику на счетах буквально за 10 минут. Тоесть это может быть не только мощным механизмом для ведения учета, но и исправления ошибок (которых всегда в достатке). Особенно это актуально при работе во фреше, где вы сильно зажаты рамками.
Итак, приступим. В принципе, для написания мало-мальских операций, вам хватит статьи на ИТС (при наличии подписки ИТС статью вы можете найти по запросу < Настройка типовых операций в редакции 2 "1С:Бухгалтерии государственного учреждения 8" >). Но мы же не за этим здесь собрались, чтобы просто сидеть и читать ИТС, верно?
Начнем мы с того, что рассмотрим, из каких разделов состоят типовые операции. Открыв любую типовую мы с вами увидим:
1) Окно состояния поддержки. Здесь можно изменить состояние поддержки операции. В скопированной операции данное окно заменится ссылкой на типовую операцию оригинал (родитель)
2) Сравнить с поставляемой операцией. С помощью этой кнопки удобно сравнивать скопированные операции с операцией оригиналом (родителем)
3) Галочка "Не используется". Очень полезная штука, особенно когда вы переделываете операции за кем-то, и старье нужно куда-то скрыть с глаз бухгалтеров. Если вы нажимаете данную галочку, то операция перестанет показываться в списках типовых операций. Можно вернуть зайдя в справочник типовых и увидеть их (они будут выделены темно серым цветом)
4) Наименование типовой операции.
5) Документ к которому привязана типовая операция (без этой привязки ее существование невозможно)
6) Условие использования. Грубо говоря это условие отбора, при котором будет показываться операция в списке.
7) Используется внешняя процедура. Эта галочка скажет, что функцию формирования типовой возьмет на себя внешняя процедура.
8) Вкладки разделов типовой операции
9) Галочка устанавливать блокировку. Необходима в документах, где вычисляется стоимость чего-то, например перемещение-списание МЗ.
10) Формула получения организации для проводок
11) Формула получения даты для проводок
12) Условие формирования операции
13) Описание функции (если будете щелкать в разделе бухгалтерские операции в окошечке выше - покажет вам описание функций от разработчиков)
14) Текст при ошибке (напишется, если в проводке не будет соблюдено условие из поля 12
15) Настроить доступ для пользователей
Также наверху вы можете увидеть кнопку "Скопировать операцию", которая была намерено проигнорирована. Сейчас мы с нее как раз и начнем. Формат будет таким: мы рассмотрим составление операции от начала и до конца, в каждом пункте, я буду делать полезные заметки, которые помогут вам, вашим коллегам и вашим бухгалтерам комфортно работать. Так-же я приверженец автоматического импорта/экспорта типовых операций, в следствии чего вы научитесь как писать операции, которые вы сможете потом просто экспортировать в файлик и установить необходимые скопом вашему клиенту меньше чем за минуту (в том числе во фреш).
Сейчас я набросаю подобие задачи, которую мы будем решать в процессе этой статьи:
В нашем учреждении 2 лицевых счета. По одному на каждый КФО (вид средств). Соответственно у нас проблема. При поступлении от поставщика партии, оплаченой единовременно по КФО 2 и КФО 4, денежные обязательства (санкционирование необходимости оплаты) встают сугубо на один раздел лицевого счета. А мы хотим, чтобы мало того, что раздел лицевого счета подтягивался в проводку, но и чтобы он определял сам, какой и где потребуется.
Давайте сразу возьмем за правило, что мы никогда не будем изменять состояние поддержки операции, так как никаких плюсов от этого вы не получите. Просто примите это как аксиому.
Предлагаю изначально не создавать пустую типовую операцию с нуля. Давайте скопируем ту, которая у нас уже есть. В данном случае это "Поступление по договорам купли-продажи, договорам поставки, другим аналогичным договорам" из документа "Поступление МЗ". Чтобы скопировать операцию нажмем на кнопку вверху "Скопировать операцию". На выбор мы увидим три пункта:
1) Установить связь с копируемой операцией
Этот пункт свяжет нашу операцию с оригиналом (родителем). Это даст нам возможность отслеживать изменения в типовой операции. Это очень полезная функция, так как синтаксис типовых операций изменяется и эволюционирует благодаря разработчикам. Без этой связи будет очень легко потеряться. Даже если вы не будете ее использовать - ничего страшного вы все равно не сможете сделать связывая свою операцию с оригиналом, поэтому используйте этот пункт всегда.
2) Установить связь, как у копируемой операции
Этот пункт свяжет нашу операцию с оригиналом (родителем) той операции, которую мы копируем (если он у нее есть). Данный пункт стоит выбирать, если вы будете копировать уже измененную типовую операцию у которой была связь.
3) Не устанавливать связь с операцией
Все логично. Абсолютно бессмысленный пункт по моему мнению. Если вы знаете что-то, чего не знаю я - пожалуйста напишите в комментариях.
Итак, мы выбрали первый пункт и получили новую операцию. Сразу скажу, что типовая операция скопировалась и уже записалась в справочник. Программа не ждет вашего нажатия записи (как обычно), поэтому неопытные пользователи могут насоздавать множество типовых закрывая их и забывая, поэтому будьте внимательны! От оригинала ее отличает отсутствие предопределенности и слово "Копия" перед названием.
Перейдем к формированию названия. Для себя хорошим тоном в написании операции, я считаю необходимость зафиксировать в названии оригинал типовой операции и дописать к ней своеобразный тег. При таком принципе наименования мы сразу с вами поймем, на базе чего строилась операция, какие проводки в теории она будет делать и по тегу мы можем предположить какой у нее смысл. Например, данную операцию я назову "Поступление по договорам купли-продажи, договорам поставки, другим аналогичным договорам \\ АВТО РАЗДЕЛ Л/С //". Сразу возникает вопрос, что я добавил в конце. Таким образом я выделяю свои теги. Вы можете использовать свои варианты с любыми символами. Например, я видел попытки помечать измененные операции плюсами, звездочками и прочим, но мне нравится данный вариант, потому что его никто не использует, он бросается в глаза бухгалтеру, да и встретить 2 слеша или 2 бекслеша в наименовании типовой - это надо постараться конечно (за счет этого я очень быстро нахожу свои операции в справочнике типовых). Написание тега так-же должно быть полностью осознанным. Не пытайтесь писать там проводки или счета корреспонденты. Очень часто я вижу теги из разряда *401.10 дир доп аналитика* в этот момент в голове происходит взрыв. И даже не потому, что из данного описания ничего не понятно, а потому, что сам автор уже забыл, что это и как это. Если кто-то хочет узнать, почему мое наименование более емкое в данном случае - объясняю. У этой операции есть только 1 проводка, которая будет использовать раздел лицевого счета, в данном случае это проводка 502.11 - 502.12. Предполагая, какие операции будут в данной типовой (мы же оставили оригинальное наименование), я могу понять, что здесь будет какая то автоматическая выборка раздела лицевого счета по определенным закономерностям.
Думаю, с наименованием мы разобрались, пойдем дальше. Условие использования трогать не будем. Меня полностью устраивает, что эта типовая возникнет именно в этом разделе и именно с данными отборами (скажу честно, это условие еще и багнутое, поэтому я крайне не рекомендую его изменять).
Последнее, что я бы хотел сделать на этой вкладке, это задать комментарий. И вы можете мне сказать, что его негде оставлять, и вы будете совершенно правы! Господа из 1С, если вы читаете эту статью, пожалуйста, сделайте еще одну вкладку с информацией о типовой операции. Вы можете даже ее не заполнять, она не для вас, она для нас!!! А теперь к делу. У нас с вами есть огромное бессмысленное поле с условием, в котором мы можем написать с вами послание потомкам или самому себе в будущее (которое позволит вам уже расшифровать ваш тег подробнее). Я предлагаю написать условие, которое точно всегда будет осуществимо.
Что-то вроде такого (сейчас это слабо похоже на то, что должно быть в результате, просто потому, что я пока не уверен в том, через какой механизм я буду это реализовывать, перепишем наш комментарий в перспективе).
Запишем нашу типовую операцию, и на этом пока закончим. В следующий раз я по максимуму постараюсь пройтись по следующим вкладкам. Думаю, будет смысл рассматривать эту статью в комплексе. Пока можете написать, если что-то не так.
Типовые операции в 1С: БГУ 2. Часть 2