Имя: Пароль:
1C
1С v8
ЗУП ввести премию от оклада
0 Paranoid
 
19.12.11
09:35
небходимо ввести премию с оклада, учитывая только отработанные дни (если был в командировке то учитывать просто как работу,  это важно)
а также не учитывая отпуска болезни и проч.
1 guitar_player
 
19.12.11
09:36
Разрешаю, вводите
2 Paranoid
 
19.12.11
09:39
(1) спасибо еще бы знать как
Я не очень хрошо знаю ЗУП.
3 PEPEL_1C
 
19.12.11
09:40
(0) план видов расчета - разовые начисления - месячная премия.
На закладке Прочее проверь расчетную базу (если надо только от оклада считать, то дожно стоять только оклад по дням).
Затем создаешь документ: Премии сотрудников.
Вот вообщем и все...
4 Paranoid
 
19.12.11
09:44
(3)нет
я  все это делал.
но там очень большая загвоздка.
Если включать оплата по среднему (командировки) то он считает с командировками (то есть со всем среднем заработком), а нужно только по окладу. какбы он никуда не ездил.
5 Skylark
 
19.12.11
09:59
(4) А если удалить "оплата по среднему" из базы созаднного начисления?
6 Paranoid
 
19.12.11
10:07
(5) тогда дня командировки не считаются воообще.

те кто был почти месяц в командировке ничего не получат.
7 Skylark
 
19.12.11
10:09
(6) что то ты путаешь
8 Skylark
 
19.12.11
10:10
Вот новое начисление твое - "Месячная премия"; смотрим его базу и убираем оттуда "Оплата по среднему" (т.е. командировки). В результате при расчете премии, командировки не попадают в базу для ее расчета.

Причем здесь расчет командировок и почему они должны перестать рассчитываться?
9 Paranoid
 
19.12.11
10:15
(8) было у меня такое начисение

Если убрать из базы расчет среднего,
не расчитываются они, т.е она считает как будто отпуск.
10 Ant1773
 
19.12.11
13:30
(4) Т.е. премию нужно считать оклад*процент_премии, вне зависимости от того ездил человек в командировку или нет? Или премию нужно считать только по окладу (т.е. если человек ездил в командировку, то премии ему фиг)?
11 Ant1773
 
19.12.11
13:31
(10) Как ни странно звучит - второй вариант более правильный, поскольку премия обязательно должна входить в средний и по факту получается, что сотруднику уже заплатили ее (ну если она была раньше, в том периоде, за который рассчитывался средний :) )
12 Paranoid
 
19.12.11
14:21
(10) именно как раз 1 вариант.

нужно посчитать рабочие дни (так как в командировке человек работал). и процент*оклад.
13 Ant1773
 
19.12.11
14:44
(12) Тот момент, что в составе среднего премия уже учтена не смущает? Ездить в командировку у вас будет все выгоднее и выгоднее :)
14 Ant1773
 
19.12.11
14:48
(12) Пример:
Оклад 10.000, Премия 50%

Первый месяц - работа на месте: 10.000 + 10.000*50% = 15.000
Второй месяц - командировка: 15.000 (средний) + 10.000*50% = 20.000
Третий месяц - командировка: 17.500 (средний) + 10.000*50% = 23.500
Четвертый месяц - командировка: 19.500 (средний) + 10.000*50% = 24.500
...
15 Paranoid
 
19.12.11
14:48
как раз не очень
ведь мы стараемся посчитать что этой командировки как бы не было.
чистый оклад на неё вешаем.
16 Ant1773
 
19.12.11
14:54
(15) Ну раз оплату по среднему сотруднику не рассчитываете - тогда вообще никаких проблем и нет, тем более еще и с учетом отработанного времени.
Новый вид расчета, формула "Результат = <Процент оплаты> * Расчетная база", в базу - необходимые ВР (т.е. оклад). Плановые начисления, назначить. При заполнении начисления з/п - все будет красиво.
17 Paranoid
 
19.12.11
14:55
(14) ну да и начальство согласно.
18 Paranoid
 
19.12.11
14:58
(16) командировки то не попадут !
19 Ant1773
 
19.12.11
14:59
(18) Так вы считаете командировки или не считаете? :)
Командировка - это оплата по СРЕДНЕМУ.
20 Paranoid
 
19.12.11
15:20
считаем как работу !!!

просто!
а премию надо посчитать как обычную работу
оклад на количество дней.
21 Paranoid
 
19.12.11
16:10
скажите как запрос  с командировками то сделать лучше :(

по какому регистру
22 Ant1773
 
19.12.11
16:18
(20) Раз вы считаете командировку просто как работу! То и считайте премию просто как по работе!
Каким ВР считается командировка? Какой вид времени у этого ВРа? Если "Явка" - ну так и не мудрите, считайте как работу!
(21) Так нужен вид расчета "премия" или запрос по командировкам? :)
Регистров два - ОсновныеНачисления и ДополнительныеНачисления.
23 Paranoid
 
19.12.11
16:24
(22) нет я просто хочу все дни собрать, а потом выставить это в премии.
написал запрос по начислению зарплаты и начислению среднего

Командировка считается оплатой по среднему. то то и оно.
как там только дни выделить вообще не понятно.
24 Ant1773
 
19.12.11
17:34
(23) Командировка - оплатой по среднему. В средний входит премия?
25 Paranoid
 
19.12.11
17:46
(24) входит
26 Paranoid
 
19.12.11
17:46
только дни нужны а не сумма
27 Ant1773
 
19.12.11
18:51
(26) Чудны дела твои работодатель... Ну раз не возражает (17) (главное чтобы еще понимали, а то через полгода опомнятся, скажут пересчитать)...

Предлагаю не корежить конфигу, а завести два ВРа
"Премия" и "Премия за командировку", с разными видами времени и назначить их плановыми начислениями.
Формула - "ОкладПоДням *  ОтработаноВремениВДнях / НормаВремениВДнях", корректнее конечно использовать часы, а не дни.
28 Paranoid
 
19.12.11
19:11
(27) с первым понятно как заполнять а второй??

там саое главное это сумму дней получить с командировкой!!

они 2мя доками заполняются
29 Ant1773
 
19.12.11
21:46
(28) Без небольшого перепиливания не получилось сделать :(
http://s001.radikal.ru/i196/1112/6f/7949305503a2.jpg

ПроведениеРасчетовПереопределяемый


Показатель1Текст = Показатель1Текст +        
               ?(НеобходимыеДанные.ОтработаноВремени, "
               |    КОГДА Показатели.Показатель1 = ЗНАЧЕНИЕ(Справочник.ПоказателиСхемМотивации.ВремяВДнях)  
               |        ТОГДА ВЫБОР
               //Изменение определения показателя
               //|            КОГДА Основной.ВидРасчета.ВидВремени В (ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ЧасовоеНеотработанное), ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ЧасовоеОтработанноеВПределахНормы))
               |            КОГДА Основной.ВидРасчета.ВидВремени В (ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ЧасовоеОтработанноеВПределахНормы))
               //конец изменения
               |                ТОГДА 0
               |            КОГДА ЕСТЬNULL(ВремяВведенноеВЦеломЗаПериод.ОшибкаВводаОтработанногоВремени, ЛОЖЬ)
               |                ТОГДА 0
               |            КОГДА НЕ ВремяВведенноеВЦеломЗаПериод.ДнейПоТабелю ЕСТЬ NULL
               |                ТОГДА ВремяВведенноеВЦеломЗаПериод.ДнейПоТабелю
               //Изменение определения показателя
               //|        КОГДА Основной.ВидРасчета.ОбозначениеВТабелеУчетаРабочегоВремени.РабочееВремя
               |        КОГДА ИСТИНА
               //конец изменения
               |             И НЕ ОтработаноПоВидуВремениНачисления.Дней ЕСТЬ NULL
               |            ТОГДА ВЫБОР КОГДА Основной.ВидРасчета.ВидВремени = ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ДополнительноОплачиваемоеВПределахНормы)
               |                    ТОГДА ЕСТЬNULL(ОтработаноПоВидуВремениНачисления.Дней, 0)
               |                ИНАЧЕ ЕСТЬNULL(ВЫБОР
               |                        КОГДА Основной.ВидУчетаВремени = &ПоДням
               |                            ТОГДА ДанныеГрафика.ОсновноеЗначениеФактическийПериодДействия
               |                        ИНАЧЕ ДанныеГрафика.ДополнительноеЗначениеФактическийПериодДействия
               |                        КОНЕЦ, 0) - ЕСТЬNULL(ОтработаноНЕПоВидуВремениНачисления.Дней, 0)
               |                КОНЕЦ
               |        КОГДА НЕ (Основной.ГрафикРаботы ССЫЛКА Справочник.ГрафикиРаботы)
               |            ТОГДА ЕСТЬNULL(ВЫБОР
               |                    КОГДА Основной.ВидУчетаВремени = &ПоДням
               |                        ТОГДА ДанныеГрафика.ОсновноеЗначениеФактическийПериодДействия
               |                    ИНАЧЕ ДанныеГрафика.ДополнительноеЗначениеФактическийПериодДействия
               |                    КОНЕЦ, 0)
               |        КОГДА ЕСТЬNULL(СводныеИндивидуальныеГрафики.ОшибкаВводаИндивидуальногоГрафикаРаботы, ЛОЖЬ)
               |            ТОГДА 0
               |        ИНАЧЕ ЕСТЬNULL(СводныеИндивидуальныеГрафики.ДнейПоГрафику, ЕСТЬNULL(ВЫБОР
               |                КОГДА Основной.ВидУчетаВремени = &ПоДням
               |                    ТОГДА ДанныеГрафика.ОсновноеЗначениеФактическийПериодДействия
               |                ИНАЧЕ ДанныеГрафика.ДополнительноеЗначениеФактическийПериодДействия
               |                КОНЕЦ, 0))
               |        КОНЕЦ
               |    КОГДА Показатели.Показатель1 = ЗНАЧЕНИЕ(Справочник.ПоказателиСхемМотивации.ВремяВЧасах)
               |        ТОГДА ВЫБОР
               //Изменение определения показателя
               //|            КОГДА Основной.ВидРасчета.ВидВремени В (ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ЧасовоеНеотработанное), ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ЧасовоеОтработанноеВПределахНормы))
               |            КОГДА Основной.ВидРасчета.ВидВремени В (ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ЧасовоеОтработанноеВПределахНормы))                
               //конец изменения
               |                ТОГДА ЕСТЬNULL(ВремяПоТабелю.ВнутрисменныеЧасыОтклонение, 0)
               |            КОГДА ЕСТЬNULL(ВремяВведенноеВЦеломЗаПериод.ОшибкаВводаОтработанногоВремени, ЛОЖЬ)
               |                ТОГДА 0
               |        КОГДА НЕ ВремяВведенноеВЦеломЗаПериод.ЧасовПоТабелю ЕСТЬ NULL
               |            ТОГДА ВремяВведенноеВЦеломЗаПериод.ЧасовПоТабелю
               //Изменение определения показателя
               //|        КОГДА Основной.ВидРасчета.ОбозначениеВТабелеУчетаРабочегоВремени.РабочееВремя
               |        КОГДА ИСТИНА
               //конец изменения

               |             И ОтработаноПоВидуВремениНачисления.Часов ЕСТЬ НЕ NULL
               |            ТОГДА ВЫБОР КОГДА Основной.ВидРасчета.ВидВремени = ЗНАЧЕНИЕ(Перечисление.ВидыВремени.ДополнительноОплачиваемоеВПределахНормы)
               |                    ТОГДА ОтработаноПоВидуВремениНачисления.Часов
               |                    ИНАЧЕ ЕСТЬNULL(ВЫБОР
               |                            КОГДА Основной.ВидУчетаВремени = &ПоДням
               |                                ТОГДА ДанныеГрафика.ДополнительноеЗначениеФактическийПериодДействия
               |                            ИНАЧЕ ДанныеГрафика.ОсновноеЗначениеФактическийПериодДействия
               |                            КОНЕЦ, 0) - ЕСТЬNULL(ОтработаноНЕПоВидуВремениНачисления.Часов, 0)
               |                    КОНЕЦ
               |        КОГДА НЕ (Основной.ГрафикРаботы ССЫЛКА Справочник.ГрафикиРаботы)
               |            ТОГДА ЕСТЬNULL(ВЫБОР
               |                    КОГДА Основной.ВидУчетаВремени = &ПоДням
               |                        ТОГДА ДанныеГрафика.ДополнительноеЗначениеФактическийПериодДействия
               |                        ИНАЧЕ ДанныеГрафика.ОсновноеЗначениеФактическийПериодДействия
               |                    КОНЕЦ, 0) - ВЫБОР
               |                                КОГДА ВремяВведеноТабелем.НомерСтроки ЕСТЬ НЕ NULL
               |                                    ТОГДА 0
               |                                    ИНАЧЕ ЕСТЬNULL(ВремяПоТабелю.ОтработаноЧасовПоТабелюОтклонение,0)
               |                                КОНЕЦ
               |        КОГДА ЕСТЬNULL(СводныеИндивидуальныеГрафики.ОшибкаВводаИндивидуальногоГрафикаРаботы, ЛОЖЬ)
               |            ТОГДА 0
               |        ИНАЧЕ ЕСТЬNULL(СводныеИндивидуальныеГрафики.ЧасовПоГрафику, ЕСТЬNULL(ВЫБОР
               |                КОГДА Основной.ВидУчетаВремени = &ПоДням
               |                    ТОГДА ДанныеГрафика.ДополнительноеЗначениеФактическийПериодДействия
               |                    ИНАЧЕ ДанныеГрафика.ОсновноеЗначениеФактическийПериодДействия
               |                КОНЕЦ, 0)) - ЕСТЬNULL(ВремяПоТабелю.ОтработаноЧасовПоТабелюОтклонение,0)
               |    КОНЕЦ", "") +
               ?(НеобходимыеДанные.НормаВремениЗаМесяц, "
               |    КОГДА Показатели.Показатель1 = ЗНАЧЕНИЕ(Справочник.ПоказателиСхемМотивации.НормаВремениВДнях)
               |        ТОГДА ЕСТЬNULL(СводныеИндивидуальныеГрафики.НормаДнейПоГрафику, ВЫБОР
               |                                                                            КОГДА Основной.ВидУчетаВремени = ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоДням)
               |                                                                                ТОГДА ДанныеГрафика.ОсновноеЗначениеНормаПериодДействия
               |                                                                            КОГДА Основной.ВидУчетаВремени В (ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоВечернимЧасам), ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоНочнымЧасам))
               |                                                                                ТОГДА ЕСТЬNULL(НормаВремениПоОбщемуГрафику.НормаДней, 0)
               |                                                                            ИНАЧЕ ДанныеГрафика.ДополнительноеЗначениеНормаПериодДействия
               |                                                                        КОНЕЦ)
               |    КОГДА Показатели.Показатель1 = ЗНАЧЕНИЕ(Справочник.ПоказателиСхемМотивации.НормаВремениВЧасах)
               |        ТОГДА ЕСТЬNULL(СводныеИндивидуальныеГрафики.НормаЧасовПоГрафику, ВЫБОР
               |                                                                            КОГДА Основной.ВидУчетаВремени = ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоДням)
               |                                                                                ТОГДА ДанныеГрафика.ДополнительноеЗначениеНормаПериодДействия
               |                                                                            КОГДА Основной.ВидУчетаВремени В (ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоВечернимЧасам), ЗНАЧЕНИЕ(Перечисление.ВидыУчетаВремени.ПоНочнымЧасам))
               |                                                                                ТОГДА ЕСТЬNULL(НормаВремениПоОбщемуГрафику.НормаЧасов, 0)
               |                                                                            ИНАЧЕ ДанныеГрафика.ОсновноеЗначениеНормаПериодДействия
               |                                                                        КОНЕЦ)", "");
               
           КонецЕсли;
30 Paranoid
 
20.12.11
10:12
Спасибо огромное!!! буду изучать
сам сделал подругому.

такой труд конечно спасибо. еще раз !
31 Ant1773
 
20.12.11
11:07
(30) Да труд не большой. Минут 15 заняло, когда решил все таки искорежить конфигу.
Но Я был уверен, что получится сделать это стандартными средствами. :( Если бы оба вида использования рабочего времени были бы "рабочим временем" (тавтология, но термины 1С...) - тогда бы все получилось.
32 Paranoid
 
20.12.11
11:10
Единственное я думаю что второе начисленние будет на отпуска тоже начислять.
33 Ant1773
 
20.12.11
11:13
(32) Нет. Там задан вид времени и определяется показатель с учетом вида времени.
34 Paranoid
 
20.12.11
12:18
да и еще менять начисление зарплаты не очень бы хотелось.
35 Ant1773
 
20.12.11
13:43
(34) А его в любом случае насколько Я понимаю придется менять.
Я не хочу быть самым богатым человеком на кладбище. Засыпать с чувством, что за день я сделал какую-нибудь потрясающую вещь — вот что меня интересует. Стив Джобс