Зик 346 - в стаже для ПФР не выводит ПРОСТОЙ
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2) jack19, да оплачиваемые (Простой (абз. 2 ст. 157 ТК РФ, 2/3 тарифной ставки)
по идее период простоя должен исключаться из стажа и встать отдельной строкой, но у меня просто общий период работы у сотрудника. А простоев много было и сотрудников много, разбивать руками бухи у меня чокнутся.
по идее период простоя должен исключаться из стажа и встать отдельной строкой, но у меня просто общий период работы у сотрудника. А простоев много было и сотрудников много, разбивать руками бухи у меня чокнутся.
(4) Pilot741, Оплачиваемые простои 1С не реализовал. Впрочем, как и прогулы ("НЕОПЛ"), гособязанности ("ОБЩЕСТ"), учебные отпуска (не вставляется код "УЧОТПУСК"), льготные дни родителям детей-инвалидов ("ДОПВЫХ"). Я все это добавлял в программу сам, как и отпуска чернобыльцам ("ЧАЭС"), повышение квалификации ("КВАЛИФ"), для которых еще раньше ввел свои виды расчетов.
(6) Pilot741, Номера строк глобального модуля, которые надо подправить, буду называть по релизу 345, т.к. 346-го релиза у меня ещё нет (кстати, если скинете md-шник 346 релиза, буду признателен).
Процедура глЗаполнитьТаблицуСотрудниковСОсобымиПериодами():
1. Строка 28811 (шапка процедуры). Добавить параметр в конец через запятую СписокВРПростои="".
2. Строка 28850. Вставить строки:
Для Ном =1 По СписокВРПростои.РазмерСписка() Цикл
СписокВР.ДобавитьЗначение(СписокВРПростои.ПолучитьЗначение(Ном));
КонецЦикла;
3.Строка 28907. Вставить строки:
ИначеЕсли СписокВРПростои.Принадлежит(ВР) = 1 Тогда
Док = Запрос.ТекущийДокумент;
Если Док.Вид() = "ПриказНаОплатуПоСреднему" Тогда
Если Док.ПричинаОтсутствия = Перечисление.ОснованияОплатыПоСреднему.ВынужденныйПростой Тогда
ТаблицаСотрудниковСОсобымиПериодами.НоваяСтрока();
ТаблицаСотрудниковСОсобымиПериодами.Сотрудник = Запрос.Сотрудник;
ТаблицаСотрудниковСОсобымиПериодами.Простои = 1;
КонецЕсли;
КонецЕсли;
4.Строка 28914. Добавить в конец строки свертки перед кавычкой: ,Простои
Функция глСобратьДанныеДляСЗВ2014()
5. Строка 31785. Вставить строку
СписокВРПростои = СоздатьОбъект("СписокЗначений");
6.Строка 31816 (перед КонецЦикла). Вставить строки
Если (ВР = ВидРасчета.Простой) Тогда
СписокВРПростои.ДобавитьЗначение(ВР);
КонецЕсли;
7. Строка 31829. Вставить строку
ТаблицаСотрудниковСОсобымиПериодами.НоваяКолонка("Простои", "Число", 1, 0);
8. Строка 31832. (вызов процедуры глЗаполнитьТаблицуСотрудниковСОсобымиПериодами). Добавить в конец через запятую параметр
СписокВРПростои.
9. Строка 31959. Добавить строку
ЕстьПростои = 0;
10. Строка 31969. Добавить строку
ЕстьПростои = ТаблицаСотрудниковСОсобымиПериодами.ПолучитьЗначение(НомСтрокиТОС,"Простои");
11. Строка 32419. Вставить строки:
Если ЕстьПростои>0 Тогда
ТаблицаПростои="";
Если глЗаполнитьТаблицуПериодовДействияВР(Сотрудник,ТаблицаПростои,Начало, Окончание, СписокВРПростои)=1 Тогда
//Создадим набор для стажа, которым будем замещать периоды
НаборДляСтажа.УдалитьВсе();
НаборДляСтажа.ДобавитьЗначение("");
НаборДляСтажа.ДобавитьЗначение("");
НаборДляСтажа.ДобавитьЗначение(Перечисление.СЗВПараметр3ИТС2014.ПРОСТОЙ);
НаборДляСтажа.ДобавитьЗначение("");
НаборДляСтажа.ДобавитьЗначение("");
//впишем периоды
ТаблицаПростои.ВыбратьСтроки();
Пока ТаблицаПростои.ПолучитьСтроку()=1 Цикл
НачалоПериода=ТаблицаДниСдачиКрови.НачалоПериода;
ОкончаниеПериода=ТаблицаДниСдачиКрови.ОкончаниеПериода;
//"впишем" во временную таблицу период
глВписатьОсновнуюЗаписьОСтаже2010("Вписать",ВремТаблицаСоСтажем,НомерЗаписи,НачалоПериода,ОкончаниеПериода, НаборДляСтажа);
КонецЦикла;
КонецЕсли;
КонецЕсли;
Показать
(1) Pilot741, При вводе сведений для перс учета (из формы справочника сотрудника) в форме СЗВ - в доп. сведениях можно выбрать из классификатора "простой".
пысы: при сохранении данных о стаже на второй странице формы СЗВ выходит ошибка: "ТекущийСписокСтажа.УстановитьЗначение(НомерВСпискеСтажа,"ТипЗаписи","");
{Обработка.ФормаСЗВ2014.Форма.Модуль(298)}: Номер за пределами значения!"
Кто-нибудь сталкивался с подобным?
пысы: при сохранении данных о стаже на второй странице формы СЗВ выходит ошибка: "ТекущийСписокСтажа.УстановитьЗначение(НомерВСпискеСтажа,"ТипЗаписи","");
{Обработка.ФормаСЗВ2014.Форма.Модуль(298)}: Номер за пределами значения!"
Кто-нибудь сталкивался с подобным?
(3) ronval, У меня такая же ошибка при заполнении или редактировании "Сведений о стаже". Если последняя строка не пустая, а например,"АДМИНИСТР", то все хорошо, а если в строке только даты (строка пустая), то вылетает такая же ошибка, что указали и вы:
ТекущийСписокСтажа.УстановитьЗначение(НомерВСпискеСтажа,"ТипЗаписи","");
{Обработка.ФормаСЗВ2014.Форма.Модуль(298)}: Номер за пределами значения!
Причем, это только на второй странице. Где-то сбивается нумерация строк, а где не вижу. Вы эту проблему решили?
ТекущийСписокСтажа.УстановитьЗначение(НомерВСпискеСтажа,"ТипЗаписи","");
{Обработка.ФормаСЗВ2014.Форма.Модуль(298)}: Номер за пределами значения!
Причем, это только на второй странице. Где-то сбивается нумерация строк, а где не вижу. Вы эту проблему решили?
(1) Pilot741, Здравствуйте. скажите пожалуйста, а у вас Вредники есть? а то у меня вредников вынес в отдельную пачку. И сли раньше программа на 345 релизе разбивала на две пачки (одна с полностью отработанным периодом, другая с отпусками и т.п., то сейчас в 346 релизе бьет на три. Это верно?
(15) Pilot741, Если хотите, пришлите мне md-шник, я проверю. У меня простоев нет, поэтому тексты вставок я писал по аналогии с тем, как я реализовывал другие отклонения. Кстати, аналогичные изменения по отношению к 345 релизу сделаны в 346 в части льготных дней родителей.
(15) Pilot741, Я понял в чем дело. В процедуре глЗаполнитьТаблицуСотрудниковСОсобымиПериодами() проверка условия
ИначеЕсли СписокВРПрочиеИсключаемыеИзСтажа.Принадлежит(ВР) = 1 Тогда
дает положительный результат, т.к. Простой входит в этот список и вставленный вами блок с условием
ИначеЕсли СписокВРПростои.Принадлежит(ВР) = 1 Тогда
не работает.
Можно поместить этот блок перед вышеуказанным условием. А лучше опустить вниз после
КонецЕсли;
ввиде
Если СписокВРПростои.Принадлежит(ВР) = 1 Тогда
.....
КонецЕсли;
Тогда будет работать, как для оплачиваемого, так и для неоплачиваемого простоя.
ИначеЕсли СписокВРПрочиеИсключаемыеИзСтажа.Принадлежит(ВР) = 1 Тогда
дает положительный результат, т.к. Простой входит в этот список и вставленный вами блок с условием
ИначеЕсли СписокВРПростои.Принадлежит(ВР) = 1 Тогда
не работает.
Можно поместить этот блок перед вышеуказанным условием. А лучше опустить вниз после
КонецЕсли;
ввиде
Если СписокВРПростои.Принадлежит(ВР) = 1 Тогда
.....
КонецЕсли;
Тогда будет работать, как для оплачиваемого, так и для неоплачиваемого простоя.
(26) Irina_Su, Если Вы прочли мой комментарий №9 (для простоя), то могли понять принцип, где и что надо вставить и изменить (довольно много вставок). Основное уссловие, чтобы конкретной причине невыхода соответствовал уникальный вид расчета. Для простоя это не так (для оплачиваемого и неоплачиваемого простоя один вид расчета - ПРОСТОЙ), поэтому возникают некоторые трудности.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот