ЗиК 305 ЗиК 306 Больничный лист.
//ОкончаниеДнейРаботодателя = Мин(НачалоБолезниТекМесяца+2-(НачалоБолезниТекМесяца-ДатаНачалаБолезни),ОкончаниеБолезниТекМесяца); ОкончаниеДнейРаботодателя = Мин ( НачалоБолезниТекМесяца + 2 - 1 -( НачалоБолезниТекМесяца - ДатаНачалаБолезни ), ОкончаниеБолезниТекМесяца );
2. БольничныйЛист модуль документа строка 345
ИначеЕсли ТипБольничного = 4 Тогда //Заболевание работника, бытовая травма
Если НачалоБолезни < '01.01.2011' Тогда Дней = 2 ; Иначе Дней = 3 ; КонецЕсли ;
ЕстьДниЗаСчетРаботодателя = 0 ; //Если (Начало < НачалоБолезни + 3) Тогда Если ( Начало < НачалоБолезни + Дней ) Тогда ЕстьДниЗаСчетРаботодателя = 1 ; КонецЕсли ;
Если ЕстьДниЗаСчетРаботодателя = 1 Тогда //НачалоЗаСчетФСС = Макс(Начало,НачалоБолезни + 3) НачалоЗаСчетФСС = Макс ( Начало , НачалоБолезни + Дней ) Иначе НачалоЗаСчетФСС = Начало ; КонецЕсли ; //ОкончаниеДнейРаботодателя = Мин(НачалоБолезни + 2,Окончание); ОкончаниеДнейРаботодателя = Мин ( НачалоБолезни + Дней - 1 , Окончание );
ВвестиРасчет ( ЖрнЗарплата , ЭлСотрудника , ВидРасчета . ОплатаБЛЗаСчетРаботодателяс2011 , Начало , Мин ( ОкончаниеДнейРаботодателя , ОкончаниеПериодаОплаты ), ДатаНарушенияРежима ); Если ( Окончание > НачалоБолезни + 1 ) Тогда ВвестиРасчет ( ЖрнЗарплата , ЭлСотрудника , ВидРасчета . ОплатаБЛс2011 , НачалоЗаСчетФСС , ОкончаниеПериодаОплаты , ДатаНарушенияРежима ); КонецЕсли ;
3. Отчет.РасходыПредприятияЗаСчетФСС в процедуре Сформировать2011() меняем строку
//ДниРаботодателя = ?(ДнейОплатыПервичныйБЛ > 3, 0, 3 - ДнейОплатыПервичныйБЛ); на
Если ДокументЗаписи . Начало < '01.01.11' тогда ДниРаботодателя = ?( ДнейОплатыПервичныйБЛ > 2 , 0 , 2 - ДнейОплатыПервичныйБЛ ); Иначе ДниРаботодателя = ?( ДнейОплатыПервичныйБЛ > 3 , 0 , 3 - ДнейОплатыПервичныйБЛ ); КонецЕсли ;
//ДниРаботодателя = Мин(3,ДнейОплаты); на
Если ДокументЗаписи . Начало < '01.01.11' тогда ДниРаботодателя = Мин ( 2 , ДнейОплаты ); Иначе ДниРаботодателя = Мин ( 3 , ДнейОплаты ); КонецЕсли ;
Специальные предложения- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
Почему это в разделе исправление ошибок 1С? По закону правильно именно 3 дня, по крайней мере дополнительных комментариев на этот счет не было.
Не советую вносить такие изменения без консультации с местным ФСС :)
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
- Скопировать ссылку
- Перейти
Еще вариант: Поскольку страховой случай наступил в 2010 году, то оплачивать следует по правилам 2010: за счет работодателя 2 дня и расчет БЛ по правилам 2010 (ВР-..с2010, а не с2011). Кому подходит этот вариант, надо сделать следующие изменения:
Документ.БольничныйЛист, модуль формы ============================================================ = Функция ПередЗаписью() Если ПустоеЗначение(ТипРасчетаБольничного) = 1 Тогда Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; ИначеЕсли ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаПереходаНаСтраховыеВзносы Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; ИначеЕсли ДатаНачалаСобытия <'01.01.2004' Тогда ТипРасчетаБольничного = ?(ФТипРасчетаБольничного1 = 1,Перечисление.ТипРасчетаБольничного.ПоТекущемуМесяцу,Перечисление.ТипРасчетаБольничного.ПоДвумМесяцам); ИначеЕсли ДатаНачалаСобытия <'01.01.2005' Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2004года; ИначеЕсли ДатаНачалаСобытия <'01.01.2007' Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2005года; Иначе ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2007года; КонецЕсли; КонецЕсли; //вставить (это если сменили дату начала бл с 2011 на 2010) Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда Если ДатаНачалаСобытия < ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; КонецЕсли; КонецЕсли; //до
------------------------------------------------------------------ Процедура ПриОткрытии() . Если ДатаНачалаСобытия >='01.01.2004' Тогда Если (ДатаПервойЗаписи < '01.01.2005') И (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2004года) Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2004года; ИначеЕсли (ДатаПервойЗаписи < '01.01.2007') Тогда Если (ПроведенВПрошлом = 0) и (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2005года) Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2005года; КонецЕсли; ИначеЕсли (ПроведенВПрошлом = 0) Тогда Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда //было Если (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2011года) Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; КонецЕсли; //заменить на Если ДатаПервойЗаписи < ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; Иначе Если (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2011года) Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; КонецЕсли; КонецЕсли; //до
------------------------------------------------------------------ Процедура УстановитьТипРасчетаБЛ() Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда //было ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; //заменить на Если Начало >= ДатаПереходаНаСтраховыеВзносы Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; Иначе ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; КонецЕсли; //до
Документ.БольничныйЛист, модуль документа ============================================================ = Процедура ОбработкаПроведения(ОбработчикСообщений) . Пока СпрСотрудники.ПолучитьЭлемент() = 1 Цикл ЭлСотрудника = СпрСотрудники.ТекущийЭлемент(); Если СпрСотрудники.ОсновнойЭлемент = ЭлСотрудника Тогда // по основному месту работы введем оплату больничного //было Если ПериодРегистрации >= глДатаНачалаРеформыСоцСтрахования() Тогда //заменить на Если НачалоБолезни >= глДатаНачалаРеформыСоцСтрахования() Тогда //до
- Скопировать ссылку
- Перейти
(11) при смене даты начала периода бл с 2010 на 2011 и обратно не меняется форма здесь представлен код с учетом этих изменений:
Документ.БольничныйЛист, модуль формы ============================================================ = Функция ПередЗаписью() Если ПустоеЗначение(ТипРасчетаБольничного) = 1 Тогда Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; ИначеЕсли ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаПереходаНаСтраховыеВзносы Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; ИначеЕсли ДатаНачалаСобытия <'01.01.2004' Тогда ТипРасчетаБольничного = ?(ФТипРасчетаБольничного1 = 1,Перечисление.ТипРасчетаБольничного.ПоТекущемуМесяцу,Перечисление.ТипРасчетаБольничного.ПоДвумМесяцам); ИначеЕсли ДатаНачалаСобытия <'01.01.2005' Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2004года; ИначеЕсли ДатаНачалаСобытия <'01.01.2007' Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2005года; Иначе ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2007года; КонецЕсли; КонецЕсли; //вставить (это если сменили дату начала бл с 2011 на 2010) Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда Если ДатаНачалаСобытия < ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; КонецЕсли; КонецЕсли; //до
------------------------------------------------------------------ Процедура ПриОткрытии() . // сформируем заголовок в зависимости от наличия первичного БЛ СформироватьЗаголовокДокумента();
// установим закладки и заголовок Форма.ИспользоватьЗакладки(1); //было СформироватьСлои(); //закомментировать //СформироватьСлои(); //до . Если ДатаНачалаСобытия >='01.01.2004' Тогда Если (ДатаПервойЗаписи < '01.01.2005') И (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2004года) Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2004года; ИначеЕсли (ДатаПервойЗаписи < '01.01.2007') Тогда Если (ПроведенВПрошлом = 0) и (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2005года) Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2005года; КонецЕсли; ИначеЕсли (ПроведенВПрошлом = 0) Тогда Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда //было Если (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2011года) Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; КонецЕсли; //заменить на Если ДатаПервойЗаписи < ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; Иначе Если (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2011года) Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; КонецЕсли; КонецЕсли; //до ИначеЕсли ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаПереходаНаСтраховыеВзносы Тогда Если (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2010года) Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; КонецЕсли; ИначеЕсли (ТипРасчетаБольничного <> Перечисление.ТипРасчетаБольничного.С2007года) Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2007года; КонецЕсли; КонецЕсли; ИначеЕсли ДатаНачалаСобытия < '01.01.2004' Тогда Если (ПервичныйБольничный.Выбран() = 1) и (ТипРасчетаБольничного <> ПервичныйБольничный.ТипРасчетаБольничного) Тогда ТипРасчетаБольничного = ПервичныйБольничный.ТипРасчетаБольничного; ИначеЕсли (ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2004года) или (ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2005года) Тогда ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.ПоДвумМесяцам; КонецЕсли; КонецЕсли; //добавить СформироватьСлои(); //до
------------------------------------------------------------------ Процедура УстановитьТипРасчетаБЛ() Если ЖрнЗарплата.НачалоТекущегоПериода() >= ДатаНачалаРеформыСоцСтрахования Тогда //было ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; //заменить на Если Начало >= ДатаНачалаРеформыСоцСтрахования Тогда ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2011года; Иначе ТипРасчетаБольничного=Перечисление.ТипРасчетаБольничного.С2010года; КонецЕсли; //до
Документ.БольничныйЛист, модуль документа ============================================================ = Процедура ОбработкаПроведения(ОбработчикСообщений) . Пока СпрСотрудники.ПолучитьЭлемент() = 1 Цикл ЭлСотрудника = СпрСотрудники.ТекущийЭлемент(); Если СпрСотрудники.ОсновнойЭлемент = ЭлСотрудника Тогда // по основному месту работы введем оплату больничного //было Если ПериодРегистрации >= глДатаНачалаРеформыСоцСтрахования() Тогда //заменить на Если НачалоБолезни >= глДатаНачалаРеформыСоцСтрахования() Тогда //до