|
Форма отчета в ЗуП 🠗 (Фрэнки 10.10.2022 10:20) | ☑ | ||
---|---|---|---|---|
0
NIGHTHUNTER
10.10.22
✎
06:57
|
Отчет Анализ начислений и удержаний. Как определить какая форма открывается для формирования отчета?
В самом отчете не указаны формы. |
|||
1
SleepyHead
гуру
10.10.22
✎
07:21
|
Посмотри свойства конфигурации. Там есть поле "Форма отчета" - указана общая форма "ФормаОтчета"
Вот она и открывается. |
|||
2
NIGHTHUNTER
10.10.22
✎
07:27
|
(1) Да это видимо она. Называется форма отчета. Просматриваю сейчас все эти взаимовызовы.
Как мне можно получить функционал формирования расчетного листка по сотруднику на период за 2 месяца. что бы сохранить его для отправки? Не пойму в каком направлении двигаться для решения этой задачи. |
|||
3
SleepyHead
гуру
10.10.22
✎
07:37
|
(2) Для твоей задачи форма не нужна. Нужно работать с модулем отчета. Дам ниже кусок кода, как я это делаю, разбирайся.
Таб = Новый ТабличныйДокумент; ЭтоАванс = Ложь; // подставить истина, если надо получить расчетный листок за первую половину месяца ИмяОтчета = "АнализНачисленийИУдержаний" + ?(ЭтоАванс, "Авансом",""); КлючВариантаОтчета = "РасчетныйЛисток" + ?(ЭтоАванс, "ПерваяПоловинаМесяца",""); ОтчетРЛ = Отчеты[ИмяОтчета].Создать(); ОтчетРЛ.ИнициализироватьОтчет(КлючВариантаОтчета); ОтчетРЛ.КомпоновщикНастроек.ЗагрузитьНастройки(ОтчетРЛ.СхемаКомпоновкиДанных.ВариантыНастроек[КлючВариантаОтчета].Настройки); ОтчетРЛ.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства.Вставить("КлючВарианта", КлючВариантаОтчета); ОтчетРЛ.КомпоновщикНастроек.ПользовательскиеНастройки.ДополнительныеСвойства.Вставить("УстанавливаетсяМакетКомпоновкиДанных", Ложь); Настройки = ОтчетРЛ.КомпоновщикНастроек.Настройки; МесяцНачисления = '20220101'; УстановитьЗначениеПараметраСКД(Настройки, "Период", Новый СтандартныйПериод(НачалоМесяца(МесяцНачисления),КонецМесяца(МесяцНачисления))); УстановитьЗначениеПараметраСКД(Настройки, "НачалоПериода", НачалоМесяца(МесяцНачисления)); УстановитьЗначениеПараметраСКД(Настройки, "КонецПериода", КонецМесяца(МесяцНачисления)); ОбщегоНазначенияКлиентСервер.ИзменитьЭлементыОтбора(Настройки.Отбор,"Организация",,Организация,ВидСравненияКомпоновкиДанных.Равно,Истина); СписокФизЛиц = Новый СписокЗначений; // поместить в список ссылку на твоего сотрудника ОбщегоНазначенияКлиентСервер.ИзменитьЭлементыОтбора(Настройки.Отбор,"ФизическоеЛицо",, СписокФизЛиц, ВидСравненияКомпоновкиДанных.ВСписке, Истина); ОтчетРЛ.КомпоновщикНастроек.ЗагрузитьНастройки(Настройки); ОтчетРЛ.СкомпоноватьРезультат(Таб); // теперь в табличном документе отчет расчетный листок по сотруднику за МесяцНачисления. Можешь задать 2 месяца -------------- Процедура УстановитьЗначениеПараметраСКД(Настройки, Имя, Значение) П = Настройки.ПараметрыДанных.Элементы.Найти(Имя); Если П<>Неопределено Тогда П.Использование = Истина; П.Значение = Значение; КонецЕсли; КонецПроцедуры |
|||
4
Фрэнки
10.10.22
✎
08:45
|
Но похоже, что вообще не нужно лезть в программирование расчетного листка.
Там же другая обработка запускает с параметрами задание на получение Расчетного листка, а затем отправляет результат. |
|||
5
SleepyHead
гуру
10.10.22
✎
14:19
|
(4) Все от целей зависит. Ему, наверное, не нужно. У меня была своя задача - подготовка пакета документов по событию (расчет ЗП, больничный, отпуск, увольнение и так далее). Пришлось разбираться, как получать табдоки по типовым отчетам программно, и это касается не только расчетного листка.
|
|||
6
NIGHTHUNTER
11.10.22
✎
02:49
|
(3) Спасибо. Я понимал, что нужно подобное решение. но не знал как его получить.
Это тоже нужно разбирать. Как работает, и тд. Хотелось бы разобраться с этой обработкой тоже. В Результат, как я понимаю табличный документ, сформированного отчета? Пока задача, эта отошла на задний план, и я не могу погружаться в ее решение. Так как там нужно именно погрузиться, для того что бы было понимание решаемой задачи . |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |