ЗиК: Заполнение данных о заработке у предыдущих работодателей в больничном

04.10.11

Задачи пользователя - Адаптация типовых решений

Доработка ЗиК 314. Заполнение данных в больничном за 2 предыдущих года у другого работодателя. Для работы необходимо добавить в конфигурацию новый справочник.

Для хранения данных о заработках за 2 года у предыдущих работодателей создадим новый справочник. ПрошлыеДоходыДляБЛ. Справочник подчиненный справочнику Сотрудники. Длина кода 4, длина наименования 0, один реквизит Сумма Тип: Число длина 10 точность 2. Тип кода текстовый.ПрошлыеДоходыДляБЛ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Создадим форму списка этого справочник. В заголовке колонки код напишем "год". В форме списка внесем следующий код:

Процедура ПриОткрытии()
    Если ТипЗначения(Форма.Параметр) = 11 Тогда
        ИспользоватьВладельца(Форма.Параметр,0);
        ИерархическийСписок(1,0);
    КонецЕсли;
    глОткрытьВладельца(Контекст)
КонецПроцедуры //ПриОткрытии

В форму элемента справочника сотрудники добавим в процедуру ПриНажатииКнопки():

        СписокВыбора.ДобавитьЗначение("ФормаСЗВ2010","Персонифицированный учет ПФР (ввод сведений о стаже)");
        СписокВыбора.ДобавитьЗначение("ВводДанныхСЗВК","Форма СЗВ-К");
        СписокВыбора.ДобавитьЗначение("СтарыеФормы","Формы прошлых лет");
        //Allexe добавленные строки
        СписокВыбора.ДобавитьЗначение("ДоходыДляБл","Прошлые доходы для больничных");
        //Allexe

а также строки:

                        ОткрытьФорму("Обработка."+ИмяПодМеню+"#"+Код,Параметры);
                    КонецЕсли;
                КонецЕсли;
            //Allexe добавленные строки
            ИначеЕсли Имя = "ДоходыДляБл" Тогда
                ОткрытьФорму("Справочник.ПрошлыеДоходыДляБЛ.ФормаСписка",ТекущийЭлемент());
            //Allexe
            Иначе
                ЖЗ = СоздатьОбъект("ЖурналРасчетов.Зарплата");
                Параметры = СоздатьОбъект("СписокЗначений");
                Параметры.Установить("Сотрудник",ТекущийЭлемент());
                Параметры.Установить("ДатаАктуальности",ЖЗ.КонецТекущегоПериода());
                Параметры.Установить("ТолькоПросмотр",Форма.ТолькоПросмотр());
                ОткрытьФорму("Обработка."+Имя+"#"+Код,Параметры);
            КонецЕсли;
        КонецЕсли;
    // Если нажали кнопку , то

После этих изменений из карточки сотрудника, по кнопке "Ввод данных" в списке выпадающего меню появится последний пункт "Прошлые доходы для больничных". При выборе этого пункта можно внести данные по этому сотрудника о заработке для расчета больничных у предыдущих работодателей за прошлые 2 года.

Ввод данных за 2 года
Теперь внесем изменения в форму документа больничный лист, чтобы эти данные автоматом заполнялись в больничном. Перед процедурой ПолучитьЗаработок(), вставим свою процедуру ДоходыПредыдущиРаботодателей()

Процедура ДоходыПредыдущихРаботодателей()
    ЗаработокЗаПервыйГодДругиеСтрахователи = 0;
    ЗаработокЗаВторойГодДругиеСтрахователи = 0;
    СписокЛет = СоздатьОбъект("СписокЗначений");
    ГодСобытия = ДатаГод(ДатаНачалаСобытия);
    СписокЛет.ДобавитьЗначение(Строка(ГодСобытия-1));
    СписокЛет.ДобавитьЗначение(Строка(ГодСобытия-2));
    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса =
    "//{{ЗАПРОС(Сформироватьыаваыва)
    |Владелец = Справочник.ПрошлыеДоходыДляБЛ.Владелец;
    |Код = Справочник.ПрошлыеДоходыДляБЛ.Код;
    |Сумма = Справочник.ПрошлыеДоходыДляБЛ.Сумма;
    |Функция ИтогСумма = Сумма(Сумма);
    |Группировка Код;
    |Условие(Владелец = Сотрудник);
    |Условие(Код в СписокЛет);
    |"//}}ЗАПРОС
    ;
    Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
        Возврат;
    КонецЕсли;
    Пока Запрос.Группировка(1) = 1 Цикл
        Если Запрос.Код = Строка(ГодСобытия-1) Тогда
            ЗаработокЗаВторойГодДругиеСтрахователи = Запрос.ИтогСумма;
        ИначеЕсли Запрос.Код = Строка(ГодСобытия-2) Тогда
            ЗаработокЗаПервыйГодДругиеСтрахователи = Запрос.ИтогСумма;
        КонецЕсли;
    КонецЦикла;
КонецПроцедуры //ДоходыПредыдущихРаботодателей

В саму процедуру ПолучитьЗаработок() внесем изменения

Процедура ПолучитьЗаработок()
    Если Сотрудник.Выбран()=0 Тогда
        Возврат;
    КонецЕсли;
    Если ПервичныйБольничный.Выбран()=0 Тогда
        СписокЗаработка = глПолучитьЗаработокДляБЛ(Сотрудник,ДатаНачалаСобытия);
        ЗаработокЗаПервыйГод = СписокЗаработка.ПолучитьЗначение(1);
        ЗаработокЗаВторойГод = СписокЗаработка.ПолучитьЗначение(2);
        //Allexe добавленные строки
        Если УчитыватьЗаработокПредыдущихСтрахователей=1 Тогда
            ДоходыПредыдущихРаботодателей()
        КонецЕсли;
        //Allexe
    Иначе
        Если ТипРасчетаБольничного = Перечисление.ТипРасчетаБольничного.С2011года Тогда
            ПредыдущийПервичный = ПервичныйБольничный;
            Пока ПредыдущийПервичный.ПервичныйБольничный.Выбран() = 1  Цикл
                ПредыдущийПервичный = ПредыдущийПервичный.ПервичныйБольничный;
            КонецЦикла;
            ПервичныйДокумент = ПредыдущийПервичный;
            Док = СоздатьОбъект("Документ.БольничныйЛист");
            Док.НайтиДокумент(ПервичныйДокумент);
            Если глЕстьОткрытыеДокументы(Док.ТекущийДокумент())=1 Тогда
                Предупреждение("Закройте форму первичного больничного");
                Возврат;
            КонецЕсли;
            Если (Док.ЗаработокЗаПервыйГод+Док.ЗаработокЗаВторойГод+Док.ЗаработокЗаПервыйГодДругиеСтрахователи+Док.ЗаработокЗаВторойГодДругиеСтрахователи <> 0)Тогда
                Предупреждение("Данные о среднем заработке уже имеются в первчном больничном, не требуется заполнение данных");
            Иначе
                СписокЗаработка = глПолучитьЗаработокДляБЛ(Сотрудник,ДатаНачалаСобытия);
                ЗаработокЗаПервыйГод = СписокЗаработка.ПолучитьЗначение(1);
                ЗаработокЗаВторойГод = СписокЗаработка.ПолучитьЗначение(2);
                //Allexe добавленные строки
                Если УчитыватьЗаработокПредыдущихСтрахователей=1 Тогда
                    ДоходыПредыдущихРаботодателей()
                КонецЕсли;
                //Allexe
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;

КонецПроцедуры //ПолучитьЗаработок

 Теперь возможно вносить через карточку сотрудника данные о прошлых заработках и эти данные автоматом заполнятся в больничном листе.

См. также

Улучшенная обработка "Внешние печатные формы" для типовых конфигураций на базе 1С 7.7

Печатные формы Адаптация типовых решений Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

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

1 стартмани

04.02.2022    3200    1    igor7777    0    

3

Расчет страховых взносов в 1С 7.7 "Учет и отчетность предпринимателя, ред. 1.2" с апреля 2020

Адаптация типовых решений Платформа 1С v7.7 Конфигурации 1cv7 Россия Бухгалтерский учет ФОМС, ЕФС Бесплатно (free)

В этой статье описано, какие небольшие изменения можно внести в модуль документа Начисление налогов с ФОТ, чтобы правильно рассчитывались страховые взносы с 1 апреля 2020 г.

09.04.2020    19676    Юджин58    39    

5

Дистрибьюция 7.7. Часть 1. Жизненный цикл заявки покупателя. Одна заявка покупателя, много адресов доставки.

Адаптация типовых решений Платформа 1С v7.7 1С:Комплексная 7.7 1С:Торговля и склад 7.7 Управленческий учет Бесплатно (free)

Описан способ работы с учетом расписания с приоритетными покупателями - торговыми сетями (основными покупателями) в торговой или комплексной учетной системе на 1С 7.7. Множественная заявка покупателя на несколько торговых точек.

14.10.2019    6009    ksnik    14    

3

Как в торговле 7.7 печатать код ТНВЭД в счет-фактуре

Операции по ВЭД Адаптация типовых решений Оперативный учет 7.7 1С:Торговля и склад 7.7 Россия Бухгалтерский учет НДС Бесплатно (free)

В данной статье хотел поделиться опытом, как в Торговле 7.7 ( релиз 994) сделать возможность выводить код ТНВЭД в печатную форму счета-фактуры. Сразу скажу, что нужно это только тем, кто осуществляет экспорт в страны таможенного союза. Остальные могут не волноваться.

15.11.2017    11816    AndKovalchuk    0    

1

Предельные базы взносов в ПФР, ФСС, ФФОМС 2015 в 1С: Бухгалтерия 7.7

Зарплата Адаптация типовых решений Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Россия Бухгалтерский учет Абонемент ($m)

Реализация Постановления Правительства РФ 1316 от 04.12.14 для типовой конфигурации "Бухгалтерский учет 7.7" рел. 7.70.590

1 стартмани

31.12.2014    23928    9    Sergey1CSpb    2    

0
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
0. allexe 24 04.10.11 13:39 Сейчас в теме
Доработка ЗиК 314. Заполнение данных в больничном за 2 предыдущих года у другого работодателя. Для работы необходимо добавить в конфигурацию новый справочник.


Перейти к публикации

1. UV2 260 04.10.11 13:39 Сейчас в теме
Справка с предыдущего места работы используется для расчета ндфл и в общем случае может включать в себя те же начисления по больничному листу - что не позволяет даже теоретически использовать данные справки для начисления больничного на новом месте работы...
6. allexe 24 04.10.11 21:53 Сейчас в теме
(1)(5) Согласен с вами первоначальный вариант хранения данных о заработке в справке о доходах был некорректен. Исправил. Сделал с использованием нового справочника.
2. allexe 24 04.10.11 14:03 Сейчас в теме
"Справка с предыдущего места работы используется для расчета ндфл" - для расчета НДФЛ в пределах текущего года? Но я предлагаю вводить в эту справку данные о заработке за предыдущие года. Насколько я понимаю смысл этой справки в том чтобы при приеме на работу нового сотрудника учесть в ней заработок в пределах этого года для расчета НДФЛ. Соответственно чем могут помешать данные за 2 предыдущих года?
3. UV2 260 04.10.11 15:06 Сейчас в теме
(2) а, это было предложение хранить данные из справок для больничных в справках о доходах с предыдущего места работы?! - тогда придется затирать уже существующие для некоторых сотрудников реальные данные использовавшиеся для расчета ндфл за прошлые годы - что также не гуд...
- не, я для зик уже создал конструкцию по хранению этих данных, просто уже столкнулся с вариантами наличия двух и более справок за разные периоды работы по одному сотруднику и прочей фигней... - у меня холдинг с постоянно мечущимися по организациям холдинга толпой сотрудников и посему пришлось для зик-овцев сделать исчо пару обработкок по автообмену кучей справок.
4. allexe 24 04.10.11 15:23 Сейчас в теме
(3) Я понимаю что лучше сделать отдельный объект для хранения данных о предыдущих заработках, просто цель была сделать без доработки конфигурации.
тогда придется затирать уже существующие для некоторых сотрудников реальные данные использовавшиеся для расчета ндфл за прошлые годы
не совсем понимаю откуда там возьмутся данные за прошлые годы? Насколько я понял эти данные вводятся только для вновь принятых сотрудников и в период с начала года до даты принятия?
просто уже столкнулся с вариантами наличия двух и более справок за разные периоды работы по одному сотруднику
- ну можно сложить эти данные и внести в эту справку за 2 года.
5. ixijixi 1775 04.10.11 16:20 Сейчас в теме
Не не не, так делать категорически нельзя. Лучше написать отдельную обработку и использовать нужно другой справочник для хранения данных, т.к. суммы для НДФЛ и больничных будут разные.
7. ivanes 06.10.11 12:25 Сейчас в теме
При создании справочника нужно внимательно смотреть на Тип реквизита Код.
У меня создался справочник код(N,4,0). Отсюда, запрос не дает результата.
Считаю, что решение хорошее.
Нужно, создать отчет "Список сотрудников имеющие зарплату прошлых лет".
8. allexe 24 06.10.11 14:10 Сейчас в теме
(8) Да все верно. Я указал что тип кода должен быть текстовый. Спасибо за предложение отчет сделаю + в планах добавить обработку по заполнению уже внесенных данных из больничных в справочник зп прошлых лет (чтобы не забивать повторно по тем сотрудникам у кого уже есть эти данные в больничном)
9. Программулькин 301 08.10.11 06:13 Сейчас в теме
очень актуально, молодец, хорошая идея, немного запоздало правда, но всё же *ушёл внедрять*. Ждём отчёта.
10. berta 2 21.05.12 11:21 Сейчас в теме
В связи с новыми правилами расчета среднего заработка для расчета больничного по беременности и родам необходимо сделать обработку для выбора среднего заработка за период который можно установить вручную,(есть женщины уходящие из декрета в декрет для них нужен средний за 2008-2009 годы для расчета больничного листа по правилам до 2010 года какие у кого есть мысли
11. UV2 260 31.05.12 08:36 Сейчас в теме
(10) в документе попробуйте перед собиранием данных для среднего установить нужную Вам дату декретного(отп.по уходу и т.д. и т.п.) - допустим 01.01.2010 (для сбора данных для среднего за 2009 год, если в первый декретный он уходил 01.01.2010), заполняете вкладку для среднего заработка - а затем ставите реальную дату события и далее обрабатываете документ как обычно - расчет будет вестись на основе уже заполненных данных за 2009 год... как-то так было...
Оставьте свое сообщение