gifts2017

Формирование расчетного листка из формы набора записей регистров расчета. Исправляем помарку в ЗУП

Опубликовал Сергей Коробейников (Sergey1CSpb) в раздел Программирование - Практика программирования

Убираем ошибку в установке фильтра при формировании расчетного листка из формы набора записей регистров расчета

На днях наткнулся на несущественную помарку в ЗУПе. Почему «несущественную»? Да потому, что функцией формирования расчетного листка из формы набора записей регистров расчета вообще редко кто пользуется, так как одни не знают, что она существует, а другие не вообще не понимают что такое регистры расчета и зачем смотреть их наборы записей.

Речь идет о пиктограмме с листком, по нажатию на которую формируется расчетный листок по данным текущей записи набора.

Так вот, при нажатии на данную кнопку мы получаем расчетный листок, «неотфильтрованный» по сотруднику. Вернее, фильтр установлен, но не работает. Если присмотреться, то в поле отбора правильно выбран сотрудник, но установлен режим отбора «не отбирать». Судя по всему, этой ошибке уже много лет. Полагаю, что она появилась в тот момент, когда во всех отчетах добавили режимы: отбирать/только выбранные и пр., а про кнопки в формах регистров расчета забыли.

Решается, в общем-то, просто. Стоит ли для этого снимать конфигурацию с поддержки, решать вам. Тем не менее, для кого-то эта функция может оказаться полезной.

В общем модуле «УправлениеОтчетамиПереопределяемый» находим процедуру УстановитьОтбор(Отчет, Поле, Значение)

 

Между строками

                                 ЗначениеПользовательскойНастройки.ДинамическиеОтборы.Получить(Поле).Значение.Добавить(Значение);

И

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

 

 

Вставляем новую строку

ЗначениеПользовательскойНастройки.ДинамическиеОтборы.Получить(Поле).ВидСравнения = "Выбранные";

 

Теперь все работает!

См. также

Подписаться Добавить вознаграждение

Комментарии

1. CITRUM CITRUM (CITRUM) 28.06.13 15:38
Не самый последний релиз (2.5.67.1), НО - все прекрасно отбирается/переключается/фильтруется и никаких доработок не требует.
Магия?
2. Сергей Коробейников (Sergey1CSpb) 28.06.13 15:58
Похоже, что магия!
У меня и на 69.2 и на лохматом 35-м картина одинаковая.
Надо подумать! Видимо, можно что-то подкрутить в настройках отчетов.
Может кто еще подскажет как у него с этим обстоят дела?
3. Андрей А. (Amras) 01.07.13 12:31
2.5.69.2 - Ситуация описанная присутствует и исправляется как все и описал автор.
4. Сергей Коробейников (Sergey1CSpb) 01.07.13 13:03
(3) Amras,
Благодарю! Значит может пригодиться.
Если кто еще попробует, отпишитесь, если не затруднит!
5. Степашка Никулин (Styvi) 03.07.13 10:22
В общем, полезная статейка, а недоработка в ЗУП на самом деле несущественная... Можно ведь после выноса в форму отчёта и вручную поставить "Только выбранные" и собрать листок снова... Но... "плюсую" за исследования...
6. Сергей Коробейников (Sergey1CSpb) 03.07.13 11:32
(5) Styvi,
Благодарю! Главное, Вы подтвердили, что фильтр не у всех работает.
По поводу несущественности (я о ней, кстати, упоминал), соглашусь частично.
То, что на эту кнопку никто никогда не жмет - это да. А если представить себе человека, который занимается разгребанием зарплатных проводок и решит воспользоваться данным сервисом. Он вынужден будет подождать пока сформируются листы всех сотрудников (может быть долговато в некоторых случаях), а потом выбрать вариант фильтра, нажать сформировать, еще подожать, а затем увидеть заветный результат.
Думаю, тут два варианта: либо этим не пользоваться вообще, либо, все же, вписать строчку в модуль.

А по поводу исследований - просто потребовалось сделать функцию формирования расчетного листка для своего отчета. В процессе изучения вопроса выяснилось, что у 1С почти все сделано, кроме этой "помарки", о чем и решил поделиться.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа