Типовые операции в 1С: БГУ 2. Часть 1

07.09.21

Разработка - Механизмы типовых конфигураций

В данной статье автор расскажет, что такое типовые операции в конфигурации бухгалтерии для госсектора, установит стандарты качества написания типовых операций Часть 1. Знакомство с типовыми операциями. Разбор первой страницы формы типовой операции, корректное создание (копирование), создание правильного и удобного наименования, написание комментария.

Для начала я бы хотел написать, что в принципе сподвигло меня на написание данной статьи, а именно, отсутствие в принципе какой либо информации (во всяком случае в моем информационном поле) касательно темы написания типовых операций для БГУ 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

Типовые операции в 1С: БГУ 2. Часть 3

Типовые операции в 1С: БГУ 2. Часть 4. Заключение

См. также

СКД Механизмы типовых конфигураций Запросы Программист Платформа 1С v8.3 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Россия Бесплатно (free)

Работая с типовыми отчетами в конфигурациях «Зарплата и управление персоналом, редакция 3», «Зарплата и кадры государственного учреждения, редакция 3» и подобных, в схемах компоновки данных можно встретить конструкции запросов, которые обращаются к некоторым виртуальным таблицам.

20.08.2024    1738    PROSTO-1C    0    

18

Механизмы типовых конфигураций Программист Платформа 1С v8.3 1С:Комплексная автоматизация 2.х Россия Бесплатно (free)

Эта ошибка была обнаружена мной в типовой конфигурации 1С:Комплексная автоматизация 2 (2.5.16.115), БСП версия 3.1.9.302. Возникает она после того, как вы добавляете в расширение бизнес-процесс или задачу, выполняете обновление идентификаторов метаданных расширений, но ошибка при записи любого элемента справочника "Профили групп доступа" всё равно остаётся.

01.07.2024    1747    Vidz    0    

11

Механизмы типовых конфигураций Программист Платформа 1С v8.3 Конфигурации 1cv8 Россия Бесплатно (free)

Очень часто в написании кода требуется обращаться к предопределённым значениям. Если идёт обращение к типовым предопределённым значениям, то проблем не возникает.

24.06.2024    1106    olja-ljaaa    0    

3

Механизмы типовых конфигураций Программист Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Статистическая выборка сценариев и точек изменения отчетов на общей форме ФормаОтчета в типовых конфигурациях. Примеры кода.

03.06.2024    4894    Serg2000mr    32    

108

Механизмы типовых конфигураций Ценообразование, анализ цен Программист Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Россия Абонемент ($m)

Продолжение темы вынесения кусков повторно-используемого кода в запрос. В прошлый раз мы сделали это с вычислением пользовательских формул. Здесь замахнулись на формулы, задаваемые пользователем запросами.

1 стартмани

11.04.2024    1058    tango    5    

3
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. 8mironov 09.09.21 02:26 Сейчас в теме
начало хоршее. поддержу!
2. avega67 13.09.21 10:13 Сейчас в теме
Абсолютно замечательная тема вообще и статья в частности. Один тот посыл, что типовые не нужно снимать с поддержки - уже радует. Всегда приятно видеть единомышленников. И, конечно, не говорю, что не может не возникнуть необходимости в снятии с замка, но, как осознанно это надо делать и изящно вносить изменения. А возможности типовых решений очень и очень обязательно нужно изучать.
3. VinnieThePOOH 159 29.08.22 06:23 Сейчас в теме
Добрый день. Большое спасибо за статью.
/Но я так и не понял (а может быть, не вполне внимательно прочитал), как реализовать дозаполнение субконто, которое в типовой операции не заполнено.

Пример - типовая операция "Отражение зарплаты".
Для проводок по взносам, например, для ПФР, у клиента в "БГУ 1.0" заполнялось второе субконто - "Виды целевых средств".
В БГУ 2.0 это субконто остается пустым.

Казалось бы, нужно установить режим "редактирование с сохранением поддержки", и на вкладке "Проводки" открыть нужную проводку,в ней в нужном субконто прописать код заполнения... Но не тут-то было! Сама проводка все равно на замке и редактировать ее не получается.

Неужто придется копировать типовую операцию, устанавливать связь с исходной, а потом постоянно отслеживать изменения стандартной операции?
5. ldmonster 99 27.06.24 16:50 Сейчас в теме
(3) Абсолютно! Затем заменить во всех документах автоматической заменой на новую.
А потом еще и обновлять ее!

Не трогайте то что на замке. Пусть то, что было у вас в поставке - останется не тронутым.
4. пользователь 25.06.23 19:33
Сообщение было скрыто модератором.
...
Оставьте свое сообщение