Как активировать кнопку «Выплатить» в документе «Начисление прочих доходов» в 1С:ЗиКГУ?

Программист 1С v8.3 (Управляемые формы) 1С:Зарплата и Управление Персоналом Управленческий учет IT и автоматизация бизнеса
← На главную

В конфигурациях 1С:ЗиКГУ и 1С:ЗУП версии «ПРОФ» многие пользователи сталкиваются с тем, что функционал выплаты прочих доходов через ведомости скрыт или недоступен. На форме документа «Начисление прочих доходов» кнопка «Выплатить» отсутствует или скрыта программно, так как этот механизм является привилегией версии «КОРП». Давайте разберем, как активировать этот функционал и сделать кнопку видимой.

Причина скрытия функционала

Система 1С выполняет проверку на наличие подсистемы ЗарплатаКадрыКорпоративнаяПодсистемы. Если конфигурация определена как ПРОФ, в процедуре ПередЗаписью модуля набора записей регистра сведений НастройкиВзаиморасчетовПоПрочимДоходам значения ресурсов принудительно устанавливаются в Ложь. Прямая запись в этот регистр часто блокируется проверками, даже при установке флага ОбменДанными.Загрузка = Истина.

Способ №1: Настройка регистра сведений через расширение

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

После того как вы обеспечите возможность записи, выполните программное включение настроек:


Набор = РегистрыСведений.НастройкиВзаиморасчетовПоПрочимДоходам.СоздатьНаборЗаписей();
Набор.Прочитать();
Набор.Очистить();

Запись = Набор.Добавить();
Запись.ИспользоватьВедомостиДляВыплатыПрочихДоходов = Истина;
Запись.ИспользоватьВзаиморасчетыПоПрочимДоходам = Истина;

Набор.ОбменДанными.Загрузка = Истина;
Набор.Записать(Истина);

Способ №2: Активация кнопки на форме документа

Даже если в регистре установлены необходимые флаги, кнопка может не появиться на форме. Это связано с тем, что механизм отображения команд опирается на ПодключаемыеКоманды и проверку реквизитов самого документа.

Разберем по шагам, как обеспечить видимость кнопки:

  1. Проверка реквизита: Убедитесь, что в самом документе «Начисление прочих доходов» установлен (или доступен) реквизит РегистрироватьВыплатуВедомостью. Именно этот булевый признак является «ключом» для отображения кнопки выплаты.
  2. Управление видимостью через расширение: Если кнопка по-прежнему скрыта, вы можете принудительно включить ее видимость в процедуре ПриСозданииНаСервере формы документа через расширение:

&НаСервере
Процедура _ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
    // Вызов типовой логики создания команд
    ЗарплатаКадры.ПриСозданииНаСервереФормыСДинамическимСписком(ЭтотОбъект, "Список");
    
    // Принудительное включение видимости кнопки
    ЭлементКоманды = Элементы.Найти("ФормаОбработкаСозданиеВедомостейПрочихДоходовСоздатьВедомостиПрочихДоходовПоДокументу");
    Если ЭлементКоманды <> Неопределено Тогда
        ЭлементКоманды.Видимость = Истина;
    КонецЕсли;
КонецПроцедуры

Важные рекомендации и риски

Будьте осторожны: Принудительная активация КОРП-функционала в версии ПРОФ через расширение — это вмешательство в логику работы программы. Мы рекомендуем:

Если объемы операций по прочим доходам в вашей организации крайне высоки и требуют сложного учета, рассмотрите переход на версию «КОРП» официально, чтобы избежать необходимости постоянной поддержки расширений и гарантии корректной работы всех механизмов учета.

← На главную