Автор Тема: Задача 3.04  (Прочитано 29979 раз)

0 Пользователей и 1 Гость просматривают эту тему.

alex7six

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Александр
Задача 3.04
« Ответ #45 : Январь 12, 2013, 08:49:12 pm »
Данную задачу не решаю, т.к. она очень похожа на предыдущие, но кратко опишу словами основные различия:
 Основные начисления:
 1. Оклад
 2. Командировка
 базовые оба регистра расчета.

 Дополнит. начисления:
 1. надбавка процентом
 2. ДоплатаДоОклада.
 Не использует период действия, базой является регистр Основные начисления.

 Надбавка процентом ничем не отличается от Премии из предыдущих задач.
 Что касается Доплаты до оклада, то ее я бы рассчитывал так:
 при расчете командировки рассчитываю также сумму оклада, который мог быть рассчитан за этот период, и отымаю его от командировки = разницу пишу как ДоплатаДоОклада.
 Тут сложность основная в расчете оклада, т.к. он может меняться в течении месяца

ivanovnm

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Ivanov N.M.
Задача 3.04
« Ответ #46 : Январь 27, 2013, 02:46:34 am »
Цитата (Oliver)
Дополнит. начисления:
 ...
 2. ДоплатаДоОклада.

 Доплата до оклада не может быть в доп начислениях. По условию она сравнивает суммы командировочного и вытесненного (нулевого) оклада, значит вынуждена считать оклад сама.

 Добавлено (27.01.2013, 02:46)
 ---------------------------------------------
 
Цитата (Gyd)
Одно осталось не разрешимым для меня - когда в месяце изменяется оклад, тогда при определении базы для начисления командировки у меня пропадает 1 день!! Когда ввожу даты командировки 20.02.2011 - 20.02.2011, по идеи 1 день командировка, то получают фактический период действия 0! Прошу, Коллеги, помощи, может есть какие - либо мысли по этому поводу!

 Цитата DoctorRozaGyd, может вы будете такие вопросы/ответы обсуждать в топиках форума, а не в личках?) всем же интересно.)

 Скорее всего для ПериодДействияКонец не указано время 23:59:59.
« Последнее редактирование: Январь 27, 2013, 02:48:05 am от Ivanov N.M. »


Oliver

  • Новичок
  • *
  • Сообщений: 5
  • ФИО: Юрий
Задача 3.04
« Ответ #47 : Январь 28, 2013, 07:18:44 am »
Цитата
Доплата до оклада не может быть в доп начислениях. По условию она сравнивает суммы командировочного и вытесненного (нулевого) оклада, значит вынуждена считать оклад сама.
Доплата может считать и оклад и команидровку находясь в любом регистре расчета, но быть в Основных начислениях только если сама имеет перид действия. Вы можете сказать что доплата действовала к примеру с 5-ого по 10-ое, и если да то какой смысл хранить у данного вида расчета период действия. Доплата будет - вытесянться?
 Проблем с базой нет - она может находиться в любом виде расчета.
 Полагаю если Вы поместитье доплату в Основные - с Вас снимут баллы.

alex7six

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Александр
Задача 3.04
« Ответ #48 : Февраль 03, 2013, 01:55:16 pm »
Мой вариант решения. Модуль проведения документа Начисление запрплаты очень компактный
Вложения:
3_4.dt

SerF

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Сергей
Задача 3.04
« Ответ #49 : Февраль 10, 2013, 08:53:14 pm »
Цитата (Oliver)
P.S. решил немного согрешить и выложу добавление записей в Рег (с разбивкой по периодам, изменение оклада произвольное колличество раз)... авторство: П.Чистов.
Хороший запрос, но тоже с ошибкой. Если установить оклад сотруднику на 1-ое число месяца и больше не менять, то запрос возвращает две одинаковые строки с окладом, что приводит к ошибке.
 Следовательно, нужно в запрос добавить дополнительную группировку для учета таких ситуаций.

leonid_kirienko

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Леонид
Задача 3.04
« Ответ #50 : Март 25, 2013, 08:00:53 pm »
Добрый день, коллеги.
 Во всех решениях, которые смотрел, разбивку оклада по периодам выполняют на этапе проведения. А не проще это сделать еще при заполнении табличной части, в интерактиве? Там же контроль дат начала/конца?
 При расчете сначала считаю оклады не вытесняя их командировками, затем от полученной базы беру сумму того, "что могло быть начислено".  
 Затем "включаю" командировки, вытесняя часть оклада, рассчитываю надбавку и собственно командировки, параллельно корректируя доплаты.

 Прошу объективной критики...
Вложения:
8458899.dt

fimanich

  • Пользователь
  • **
  • Сообщений: 49
Задача 3.04
« Ответ #51 : Апрель 13, 2013, 04:04:13 pm »
Цитата (leonid_kirienko)
Прошу объективной критики...
Мне кажется, совершенно излишне "в интерактиве" что-то делать, концепция этих задач такое вряд ли предусматривает. В документе аж 3 табличные части по названиям видов расчета Оклады, Вахты, Командировки... Теоретически: а если добавиться еще вид расчета, будем еще одну табличную часть добавлять? wink
 Включение - выключение командировок через Сторно тоже мне кажется, чересчур. В целом проявлен весьма нестандартный подход, не знаю, насколько это понравится тем, кто будет принимать экзамен...

fimanich

  • Пользователь
  • **
  • Сообщений: 49
Задача 3.04
« Ответ #52 : Апрель 13, 2013, 04:17:45 pm »
Прикрепляю свое решение. Командировку (также как и оклад) разбиваю, если значение оклада менялось. Доплату добавляю прямо при расчете основных начислений. Словом, ничего не усложняю, но и все вроде соответствует условию.
 Критика приветствуется.

Добавлено (13.04.2013, 16:17)
---------------------------------------------
чуть добавлю Доплата и Надбавка - в дополнительных начислениях, конечно же.


Вложения:
fimanich_03_04.dt

TuMyP1985

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Тимур
Задача 3.04
« Ответ #53 : Август 19, 2013, 04:28:12 pm »
Цитата (fimanich)
Прикрепления: fimanich_03_04.dt(160Kb)
Мне думается, что у вас не совсем правильно начисляется доплата. В задаче написано, что если 
 сумма начисленных командировочных, оказываетсяменьше, чем сумма оклада, который мог бы быть начислен за дни командировки,тогда сотруднику начисляется доплата 
 т.е. "Возможная стоимость дней командировки по окладу" =  берется сумма оклада за весь месяц, делится на количество рабочих дней и умножается на количество дней командировки, сравнивается с суммой начисленных командировочных, и если сумма начисленных командировочных меньше, то начисляется доплата.
 Я прикрепил вашу базу, там только один документ.
 РР "основной" все так, а РР "дополнительный", я думаю - не хватает доплаты в размере 147,50.

 Вы берете не сумму оклада за весь месяц, в котором оклад может один раз меняться (до 10.02.2013 был оклад 1000, а с 10.02.2013 оклад стал 5000, как я понял вы оклад берете как 1000)
Вложения:
fimanich_03_04_.dt

TuMyP1985

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Тимур
Задача 3.04
« Ответ #54 : Август 19, 2013, 04:28:42 pm »
Цитата (fimanich)
Прикрепления: fimanich_03_04.dt(160Kb)
Мне думается, что у вас не совсем правильно начисляется доплата. В задаче написано, что если 
 сумма начисленных командировочных, оказываетсяменьше, чем сумма оклада, который мог бы быть начислен за дни командировки,тогда сотруднику начисляется доплата 
 т.е. "Возможная стоимость дней командировки по окладу" =  берется сумма оклада за весь месяц, делится на количество рабочих дней и умножается на количество дней командировки, сравнивается с суммой начисленных командировочных, и если сумма начисленных командировочных меньше, то начисляется доплата.
 Я прикрепил вашу базу, там только один документ.
 РР "основной" все так, а РР "дополнительный", я думаю - не хватает доплаты в размере 147,50.

 Вы берете не сумму оклада за весь месяц, в котором оклад может один раз меняться (до 10.02.2013 был оклад 1000, а с 10.02.2013 оклад стал 5000, как я понял вы оклад берете как 1000)
Вложения:
8017609.dt

TuMyP1985

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Тимур
Задача 3.04
« Ответ #55 : Август 19, 2013, 04:40:24 pm »
Мой вариант
Вложения:
KTT_3_4.dt

fimanich

  • Пользователь
  • **
  • Сообщений: 49
Задача 3.04
« Ответ #56 : Август 21, 2013, 11:18:05 pm »
Цитата (TuMyP1985)
Вы берете не сумму оклада за весь месяц, в котором оклад может один раз меняться (до 10.02.2013 был оклад 1000, а с 10.02.2013 оклад стал 5000, как я понял вы оклад берете как 1000)
Мне кажется, Вы не совсем правильно поняли. Командировку я разбиваю по тому же принципу, что и оклад. Пример: оклад поменялся 10.01.2013. Сотрудник был в командировке 08.01.2013-11.01.2013. В регистре будет 2 записи командировки 08.01.2013-09.01.2013 и 10.01.2013-11.01.2013. Для каждой из этих записей будет рассчитана сумма, которая могла быть оплачена по окладу (по действующей ставке до 10 или начиная с 10-го).

nskripka

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Николай
Задача 3.04
« Ответ #57 : Август 22, 2013, 12:06:19 am »
fimanich, подход правильный.
 Но всё же считаю, что командировка - это сложное начисление и его нужно разбивать на несколько строк, потом группировать. Как сделано в ЗУПе.
 Первый подход - можно считать, данные оклада (какой бы он был) для записей командировок в начале проведения, затем очищать. 
 Можно сделать отдельное временное начисление оклада, которое не будет вытесняться. А строку с начислением командировки разделять на несколько, можно ввести отдельный реквизит для запроса, вычислять оклад, группировать данные для таких строк. Будет время, сделаю решение.
 Первая причина - командировка считается строго по пятидневке (по условию), а вот оклад в общем случае может быть не пятидневке (из первого абзаца, где говорится, что сотрудники работают по пятидневке, но нужно учесть, что могут работать по другому графику). Согласен, слабый аргумент, но всё же.
 Вторая главная причина, что сказано, что не интервал, а полностью вся сумма командировки сравнивается со всей суммой оклада. По Вашему решению Вы сравниваете сумму оклада, точне вычисляете сумму оклада в этой же строки и сравниваете эту сумму с суммой командировки по каждому интервалу. Но смотрите, может быть такая ситуация, когда значение оклада превысит сумму командировки на одном интервале незначительно, но на другом будет меньше. Итоговая сумма оклада за период командировки будет меньше, чем командировка. Оплаты не должно быть. А по вашему алгоритму она будет. А это противоречит условию.
 ....
 А вообще бы не мучался с этой задачей .Всё равно её не будет на экзамене.

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Задача 3.04
« Ответ #58 : Август 30, 2013, 12:41:56 am »
Цитата (fimanich)
чуть добавлю Доплата и Надбавка - в дополнительных начислениях, конечно же.

 я не стал выделять доплату в отдельный вид расчета, так как в задаче об этом специально не говорится, а просто начисляю большее из СуммыПоБазе и СуммыПоОкладу за тот же период, в условии задачи сказано что Если сумма наисленных командировочных оказывается (не оказалась) ..., т.е. глаголом оказывается в настоящем времени, авторы задачника как бы намекают что не нужно делать отдельное движение по доплате, а брать СуммуПоОкладу, т.к. в обоих случаях результат будет один, интересно кто об этом что думает?
 так же, у меня вахта в основных начислениях, доп.начислений у меня вообще нет, вахта использует период действия, поэтому выносить ее в отдельный план видов расчета смысла не вижу...

Добавлено (30.08.2013, 00:41)
---------------------------------------------

Цитата (nskripka)
Но смотрите, может быть такая ситуация, когда значение оклада превысит сумму командировки на одном интервале незначительно, но на другом будет меньше. Итоговая сумма оклада за период командировки будет меньше, чем командировка. Оплаты не должно быть. А по вашему алгоритму она будет. А это противоречит условию.

 эта проблема у меня решена
Вложения:
3.4.dt

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Задача 3.04
« Ответ #59 : Октябрь 09, 2013, 05:57:06 pm »
переделал
Вложения:
8473248.dt