Автор Тема: Задачка 3.15  (Прочитано 19907 раз)

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

ut2k5

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Максим
Задачка 3.15
« : Сентябрь 24, 2010, 07:52:13 pm »
Радостно, что я первый ее решил...
 единственное, если больничный предыдущего периода, то компенсация за больничный не считается, но видимо так и не надо
Вложения:
Quest_3_15.dt

User_OKA

  • Новичок
  • *
  • Сообщений: 2
  • ФИО: Валерий
Задачка 3.15
« Ответ #1 : Октябрь 21, 2010, 01:30:41 pm »
Выкладываю свое решение.
 Доплата за вечерние и компенсация за дни болезни сделал доп. начислениями.
Вложения:
3_15.dt


baksha_bni

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Nikita
Задачка 3.15
« Ответ #2 : Январь 04, 2011, 08:59:38 pm »
5 видов расчета для одной задачи, это многовато конечно...
Вложения:
Baksha_bni_1.25.dt

Matcoder

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: алекс
Задачка 3.15
« Ответ #3 : Январь 24, 2011, 12:35:30 pm »
Мое решение. Ровно 2 часа ушло с отладкой.
Вложения:
3_15_Matcoder.dt

AndreiPiter

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Андрей
Задачка 3.15
« Ответ #4 : Апрель 14, 2011, 02:16:03 pm »
моё решение

Matcoder, Процент Премии должен браться из РС (см.условия задачи).


Вложения:
AP_3.15.dt
« Последнее редактирование: Апрель 14, 2011, 02:25:12 pm от Андрей »

mebius

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Алексей
Задачка 3.15
« Ответ #5 : Май 17, 2011, 01:28:15 am »
AndreiPiter, У тебя так:
 
Code


    Если Не СтрокаНабора.Сторно Тогда
     Если  СтрокаНабора.Видрасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда  
      СтрокаНабора.Результат = Выборка.ДнейФакт * 8 * Выборка.Ставка;
     ИначеЕсли СтрокаНабора.Видрасчета = ПланыВидовРасчета.ОсновныеНачисления.Доплата Тогда  
      СтрокаНабора.Результат = Выборка.ВечернихЧасовФакт * Выборка.Ставка / 2;
     КонецЕсли;
    Иначе  
     СтрокаНабора.Результат = - СтрокаНабора.Результат;
    КонецЕсли;
 

 Т.е. перед расчетом результат у тебя Результат = 0, и если это сторно, то он так и остается = 0. Поэтому сначала надо рассчитать результат, а потом делать проверку на сторно:
 
Code

     
    Если  СтрокаНабора.Видрасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда  
     СтрокаНабора.Результат = Выборка.ДнейФакт * 8 * Выборка.Ставка;
    ИначеЕсли СтрокаНабора.Видрасчета = ПланыВидовРасчета.ОсновныеНачисления.Доплата Тогда  
     СтрокаНабора.Результат = Выборка.ВечернихЧасовФакт * Выборка.Ставка / 2;
    КонецЕсли;

    Если СтрокаНабора.Сторно Тогда
     СтрокаНабора.Результат = - СтрокаНабора.Результат;
    КонецЕсли;
 

Так?


AndreiPiter

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Андрей
Задачка 3.15
« Ответ #6 : Май 17, 2011, 09:52:31 am »
mebius, нет, не так!

mebius

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Алексей
Задачка 3.15
« Ответ #7 : Май 17, 2011, 10:23:04 pm »
AndreiPiter, Да, сорри, не увидел это:
 
Code

 ЗаполнитьЗначенияСвойств(Движение, СтрокаСторно);
 

 Все правильно!

Danan

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Данияр
Задачка 3.15
« Ответ #8 : Июнь 30, 2011, 11:36:32 am »
AndreiPiter, User_OKA, или просто добрые люди, пожалуйста объясните как вы настраиваете ПВР, регистр сведений и регистр расчета таким образом что запросе можно открыть
 виртуальную таблицу данные графика и увидеть что например:
 ИмяРесурсаФактическийПериодДействия (ресурс РС, который указан у РР как значение графика);
 ИмяРесурсаФактическийПериодДействия (этот ресурс РС, не указан у РР как значение графика).
« Последнее редактирование: Июнь 30, 2011, 11:43:31 am от Данияр »

Danan

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Данияр
Задачка 3.15
« Ответ #9 : Июль 01, 2011, 09:55:44 pm »
Разобрался с вопросом в предыдущем посте.
 Мое решение.
Вложения:
Task_3_15..dt

mkanaev

  • Пользователь
  • **
  • Сообщений: 27
  • ФИО: Канаев Михаил Сергеевич
Задачка 3.15
« Ответ #10 : Август 05, 2011, 07:24:05 am »
Quote
AndreiPiter, User_OKA, или просто добрые люди, пожалуйста объясните как вы настраиваете ПВР, регистр сведений и регистр расчета таким образом что запросе можно открыть
 виртуальную таблицу данные графика и увидеть что например:
 ИмяРесурсаФактическийПериодДействия (ресурс РС, который указан у РР как значение графика);
 ИмяРесурсаФактическийПериодДействия (этот ресурс РС, не указан у РР как значение графика).


 Указываеш один, подвязываются все остатьные... так плтформа работает...

sergey7

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Сергей
Задачка 3.15
« Ответ #11 : Август 05, 2011, 04:46:16 pm »
Мой вариант. ПВР ДопНачисления - расчёт базы по периоду регистрации, чтобы КомпенсацияЛекарств подхватывала дни больничного, а с премией неясно, как ей базу лучше считать - по периоду действия или регистрации.
Вложения:
s7_3-15.dt

Gyd

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #12 : Сентябрь 06, 2011, 10:21:32 am »
Quote (sergey7)
а с премией неясно, как ей базу лучше считать - по периоду действия или регистрации.

 Похоже тут это не принципиально.

Павел

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Павел
Задачка 3.15
« Ответ #13 : Ноябрь 08, 2011, 04:06:20 pm »
Добрый день!
 Я так понимаю условие задачи, что пользователь не должен вводить вид расчета по доплате за вечерние часы, а программа должна делать это сама. Вряд ли, в реале, пользователь будет за этим следить. Он просто вводит оклад, а если были вечерние часы, то они должны сами рассчитаться. Разве нет?

DoctorRoza

  • Новичок
  • *
  • Сообщений: 1
  • ФИО: Алексей
Задачка 3.15
« Ответ #14 : Ноябрь 20, 2011, 12:46:48 pm »
Посмотрел решение только у товарища sergey7 не очень понравилось, лишние запросы есть, РС можно использовать только один. Вопрос по вечерним часам. ИМХО, вечерние часы должны входить в оклад, больничный тогда должен вытеснять 2 этих вида расчета. Ведь логично, человек болеет, поэтому надбавку за вечерние часы он получать за эти дни не должен. И перерасчеты, в перерасчеты должна попасть премия? Заранее благодарю!
Вложения:
DoctorRoza_3_15.dt

Gyd

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #15 : Ноябрь 21, 2011, 01:39:15 pm »
Quote (Павел)
Он просто вводит оклад, а если были вечерние часы, то они должны сами рассчитаться. Разве нет?

 Я с вами согласен.
 
Quote (DoctorRoza)
ИМХО, вечерние часы должны входить в оклад, больничный тогда должен вытеснять 2 этих вида расчета.

 Думаю можно сделать один вид расчета - оклад, и в нём рассчитывать и дневные и вечерние часы.
 
Quote (DoctorRoza)
Ведь логично, человек болеет, поэтому надбавку за вечерние часы он получать за эти дни не должен.

 Логично.

LEOON

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Верютин Сергей
Задачка 3.15
« Ответ #16 : Декабрь 15, 2011, 07:04:02 pm »
С вечерними часами разобрался просто, это отдельный ресурс регистра ГрафикиРаботы.
 З.Ы. Эта первая задача по СПР которую я решал на скорость, так что ошибки очень могут быть.
 Не стесняйтесь мне на них указать! wink
Вложения:
LEOON_3.15.dt

max_osodoev

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: макс
Задачка 3.15
« Ответ #17 : Декабрь 21, 2011, 04:59:43 am »
проверьте пожалуйста
Вложения:
3.15.dt

Альберт

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Альберт
Задачка 3.15
« Ответ #18 : Январь 05, 2012, 10:53:51 pm »
Укажите, пожалуйста, на недочеты в моем решении задачи 3.15:
Вложения:
8660726.dt

sv_mikh

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Михайлов Сергей Валерианович
Задачка 3.15
« Ответ #19 : Январь 10, 2012, 02:52:52 pm »
Мое решение.

Добавлено (10.01.2012, 14:52)
---------------------------------------------
DoctorRoza, больничный должен считаться от рабочих дней предыдущего месяца, а у тебя текущего.


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

max_osodoev

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: макс
Задачка 3.15
« Ответ #20 : Февраль 01, 2012, 12:01:34 pm »
мое решение, кто может посмотрите
Вложения:
3.15_max_osodoe.dt

Hawk

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: hawk
Задачка 3.15
« Ответ #21 : Март 04, 2012, 11:40:18 pm »
Объемная задачка, кому нибудь попадалась на экзамене? интересует условия задачи такие же?

Tommy

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Тома
Задачка 3.15
« Ответ #22 : Март 05, 2012, 02:48:27 pm »
мое решение, посмотрите, пожалуйста.
 Заранее спасибо.
Вложения:
toma_3_15.dt

nodalt

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Копейкин Дмитрий Николаевич
Задачка 3.15
« Ответ #23 : Апрель 12, 2012, 05:33:57 pm »
ещё решение
Вложения:
nodalt_3_15.dt

Toxicoff

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кирилл
Задачка 3.15
« Ответ #24 : Май 04, 2012, 12:13:08 am »
Тяжкая задача wacko

 Сделал формирование компенсации за лекарства в общем модуле, при расчете больничного.

 Перерасчеты пока не делал..
Вложения:
toxicoff_3.15.dt

Кенгуру

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кенгуру
Задачка 3.15
« Ответ #25 : Май 04, 2012, 10:48:11 am »
Toxicoff
 Глянул мельком

 1) в модуле используешь
 Если ОсновныеВР.Найти(ПланыВидовРасчета.ОсновныеНачисления.Оклад) <> Неопределено Тогда
 значит, указывай в запросе в параметрах виртуальной таблицы значение Оклада
 т.е. ДанныеГрафика(Регистратор=&Регистратор И ВидОклада=&Оклад), и т д.

 2) Параметры вирт таблицы ИзмеренияОсновногоРегистра, ИзмеренияБазовогоРегистра
 У них по два измерения.
 Основной.Сотрудник ->Базовый.Сотрудник
 Основной.Подразделение->Базовый.Подразделение
 они одинаково называются, следует указываем и там и там один и тот же массив с 2! элементами - "Сотрудник" и "Подразделение"
« Последнее редактирование: Май 04, 2012, 10:57:46 am от Кенгуру »

Toxicoff

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кирилл
Задачка 3.15
« Ответ #26 : Май 04, 2012, 11:08:06 am »
Кенгуру,

 у меня нету подразделений)

 откуда вообще во всех решениях людей есть измерения "подразделение"? в задании не слова... )

Кенгуру

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кенгуру
Задачка 3.15
« Ответ #27 : Май 04, 2012, 11:15:49 am »
Toxicoff, круто, я даже не ожидал, что можно без них.. Полопачу задачник, может они реально нужны только в 1-2 задачах)))

LEOON

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Верютин Сергей
Задачка 3.15
« Ответ #28 : Май 04, 2012, 12:39:26 pm »
Quote (Кенгуру)
Toxicoff, круто, я даже не ожидал, что можно без них.. Полопачу задачник, может они реально нужны только в 1-2 задачах)))

 На самом деле, намного чаще, в первую очередь смотрите отчет. Еще иногда есть условие по графикам(к примеру график устанавливается для каждого подразделения). Или же используется шкала ставок с подразделением.

Добавлено (04.05.2012, 12:39)
---------------------------------------------
Только, не забывайте, что иногда подразделения помещаются в измерения(для получения базы с разбивкой по ним или же для вытеснения), а если не нужно то в реквизит.


Toxicoff

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кирилл
Задачка 3.15
« Ответ #29 : Май 04, 2012, 01:03:54 pm »
LEOON,

 Да.. на отчет я и не глянул.... ))))))

 Кенгуру СОррии!)

Кенгуру

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кенгуру
Задачка 3.15
« Ответ #30 : Май 04, 2012, 01:11:16 pm »
Quote (LEOON)
Только, не забывайте, что иногда подразделения помещаются в измерения(для получения базы с разбивкой по ним или же для вытеснения), а если не нужно то в реквизит.

 Спасибо за нюанс biggrin
« Последнее редактирование: Май 04, 2012, 01:11:39 pm от Кенгуру »

Toxicoff

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кирилл
Задачка 3.15
« Ответ #31 : Май 04, 2012, 02:48:01 pm »
Получается его тут в реквизит надо запихать... )

Кенгуру

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Кенгуру
Задачка 3.15
« Ответ #32 : Май 05, 2012, 07:58:51 am »
готово. взял за измерение.. надо было за реквизит.
Вложения:
3_15keng.dt
« Последнее редактирование: Май 05, 2012, 07:59:55 am от Кенгуру »

ingprom

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Алексей
Задачка 3.15
« Ответ #33 : Май 05, 2012, 01:20:17 pm »
выслушаю критику поп поводу своего решения, отличается тем, что у ВР Компенсация указан базовый ВР Больничный (по ресурсу- Дни РР.ОсновныеНачисления)
Вложения:
1Cv8_ingprom.dt

kow1976

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #34 : Июнь 02, 2012, 05:07:02 am »
Такой вариант решения задачи.
 Спасибо за комментарии и замечания.
Вложения:
kow1976_3.15.dt

Teriban

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Юрий
Задачка 3.15
« Ответ #35 : Июнь 06, 2012, 11:46:04 am »
kow1976, у Вас не считается оклад: фактические часы * ставку...

 Если Вам не трудно напишите почему Вы настроили РС графиков: И(Дата,ВидГрафика,ТипГрафика) Р(Значение). Больше всего интересуют измерения ВидГрафика,ТипГрафика

Teriban

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Юрий
Задачка 3.15
« Ответ #36 : Июнь 06, 2012, 04:56:00 pm »
Мое решение, спасибо за критику и замечания.
Вложения:
315_v1.dt

kow1976

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #37 : Июнь 06, 2012, 06:38:01 pm »
Teriban,
 Идея такая:
 Можно создать несколько предопределенных типов графиков и назначить их различным видам расчет.
 А можно создать один ТипГрафика у которого несколько Видов и каждый вид расчета привязывать к ВидуГрафика.

 Если можно подробнее о найденной ошибке.

Добавлено (06.06.2012, 18:38)
---------------------------------------------
Посмотрел Ваше решение.
 Думаю дни вот так находить нельзя

 Запись.ДнейБольничного = Выборка.ЗначениеФактическийПериодДействия/8;

 Так как фактические часы работы может и должен задавать пользователь, и их не всегда 8 в дне.

 Все расчеты у вас сделаны одним запросом. Это может быть плохо потому что Расчетов может не быть а запрос будет искать избыточные данные. По этому вопросу Gyd спрашивал у Белоусова http://forum.chistov.pro/index.php?topic=2005.msg1#msg1.


Вложения:
s2469222.jpg
« Последнее редактирование: Июнь 06, 2012, 06:13:21 pm от Олег »

Teriban

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Юрий
Задачка 3.15
« Ответ #38 : Июнь 06, 2012, 07:03:13 pm »
kow1976, ошибка проявилась так, см. скриншот.

 Спасибо за объяснения, познавательно smile Я, правда, делал через несколько графиков...

Добавлено (06.06.2012, 19:03)
---------------------------------------------

Quote (kow1976)
Запись.ДнейБольничного = Выборка.ЗначениеФактическийПериодДействия/8;

 Так как фактические часы работы может и должен задавать пользователь, и их не всегда 8 в дне.


 Ну можно сослаться на то, что больничный всегда считаеться по "Пятидневке 40"... Хотя наверное не прокатит.
Вложения:
s4151431.png

kow1976

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #39 : Июнь 06, 2012, 07:12:54 pm »
В принципе так задумано 3000 часовая ставка на количество часов в апреле 168 должно 504000.

Teriban

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Юрий
Задачка 3.15
« Ответ #40 : Июнь 07, 2012, 12:41:42 pm »
kow1976, точно! Это я не досмотрел, задается не значение оклада, часовая ставка.

Adaviya

  • Новичок
  • *
  • Сообщений: 1
  • ФИО: Елена
Задачка 3.15
« Ответ #41 : Июнь 07, 2012, 06:39:26 pm »
Объемная задачка, кому нибудь попадалась на экзамене? интересует условия задачи такие же?

 Сегодня ходила сдавать, попалась эта задачка.
 На экзамене она очень упрощена:
 вырезан текст задачи начиная со слов "За каждый день болезни сотрудникам предприятия дополнительно начисляется..." до слов "Ввод всех начислений происходит документом ... ".
 И Не надо делать отчет.
« Последнее редактирование: Июнь 07, 2012, 06:50:15 pm от Елена »

Teriban

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Юрий
Задачка 3.15
« Ответ #42 : Июнь 07, 2012, 09:44:22 pm »
Adaviya, а экзамен то сдали?

 Очередной вариант решения. Наверное золотое правило очень внимательно читать условие задач

 kow1976, как Вы считаете, ведь с другой стороны можно обойтись доп. ресурсом РС графиков ЗначениеДней, без измерения с типом графика (аналог Вашего решения 3.16). И вообще странная вещь: в настройках РР с периодом действия указывается один ресурс РС графиков, а ДанныеГрафика, оказывается, может вернуть значения для нескольких его ресурсов, как с этим жить?! surprised wacko dry
Вложения:
315_v3.dt
« Последнее редактирование: Июнь 07, 2012, 11:02:33 pm от Юрий »

Gyd

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #43 : Июнь 08, 2012, 08:40:12 am »
Quote (Teriban)
И вообще странная вещь: в настройках РР с периодом действия указывается один ресурс РС графиков, а ДанныеГрафика, оказывается, может вернуть значения для нескольких его ресурсов, как с этим жить?!

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

Teriban

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Юрий
Задачка 3.15
« Ответ #44 : Июнь 08, 2012, 02:26:30 pm »
Gyd, то что хорошо - это хорошо smile

 
Quote (Gyd)
просто один ресурс по умолчанию цепляется, а за ним и все остальные.


 Пока у других не увидел, даже и не догадывался про такое.

Gyd

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #45 : Июнь 08, 2012, 03:20:31 pm »
Quote (Teriban)
Пока у других не увидел, даже и не догадывался про такое.

 В свое время, для меня это тоже было "откровением" smile

kow1976

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #46 : Июнь 12, 2012, 04:07:06 am »
Teriban,
 
Quote (Teriban)
kow1976, как Вы считаете, ведь с другой стороны можно обойтись доп. ресурсом РС графиков ЗначениеДней,

 На мой взгляд второй ресурс нужно создавать только в крайнем случае(если по нему не получается база). Так как база формируется только по основному ресурсу. И если он нулевой то дополнительный ресурс будет не учтен при построении базы.

SAV_tlt

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Антон
Задачка 3.15
« Ответ #47 : Июнь 13, 2012, 01:29:05 am »
Если кого интересует вопрос почему задается одно значение графика в РР тогда читаем тут http://forum.chistov.pro/index.php?topic=1476.msg1#msg1
 Сам пока не пробовал проверять, вытесняет только ли по значению Графика указанному в РР...

 Добавлено (13.06.2012, 01:29)
 ---------------------------------------------
 В конце решения задачи, возник такой вопросик, а какую базу всё таки правильнее будет поставить, ну в частности для ПВР ДопНачисления? Либо по ПериодуРегистрации, либо по ПериодуДействия?
 Если по ПериодуДействия, то придется Премию считать отдельным запросом, а если по ПериодуРегистрации то все начисления можно рассчитать в одном запросе, как у меня в базе, а потому что записи, которые вводятся задним числом, это больничные и образующие сторно тарифа не попадут в базу если стоит у ПВР зависимость по базе - ПериодРегистрации

 И вообще, буду признателен, если кто-нибудь поделится своими доводами или выводами, как правильнее и проще определять какой вид зависимости по базе в ПВР нужен для той или иной задачи?)
 Или всё-таки тут принцип таков, будь добр реализовать механизм с учетом особенностей и возможностей выбранной тобой структуры, в частности зависимости по базе?
« Последнее редактирование: Июнь 13, 2012, 01:45:52 am от Антон »

SAV_tlt

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Антон
Задачка 3.15
« Ответ #48 : Июнь 13, 2012, 02:38:02 am »
Вот моя база, я на трёх ВР сделал надеюсь не будет ошибкой, т.к. по идее, согласно условия, нет нужды отделять надбавку от оклада и аналогично компенсацию от больничных, хотя я вначале пять ВР делал...
Вложения:
3_15_SAV.dt

Gyd

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #49 : Июнь 13, 2012, 09:41:36 am »
Quote (SAV_tlt)
И вообще, буду признателен, если кто-нибудь поделится своими доводами или выводами, как правильнее и проще определять какой вид зависимости по базе в ПВР нужен для той или иной задачи?)

 Посмотрите вот здесь пожалуйста: http://forum.chistov.pro/index.php?topic=1108.msg18754#msg18754 Мой взгляд на проблему.
« Последнее редактирование: Июнь 13, 2012, 09:41:55 am от Олег »

SAV_tlt

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Антон
Задачка 3.15
« Ответ #50 : Июнь 13, 2012, 12:18:43 pm »
Quote (Gyd)
Посмотрите вот здесь пожалуйста: http://forum.chistov.pro/index.php?topic=1108.msg18754#msg18754 Мой взгляд на проблему.

 Немножко пример не понял с периодом регистрации 15.10 и 01.11

 На данный момент как это понимаю я: зависимость по периоду регистрации означает, что в базу попадут только те записи у которых ПериодРегистрации попадает между БазовыйПериодНачало и БазовыйПериодКонец, а зависимость по периоду действия - попадут все записи у которых ПериодДействия попадает между БазовыйПериодНачало и БазовыйПериодКонец.
 Думаю эта задача - прекрасный пример, увидеть в чем отличие, как я и описывал выше

Gyd

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Олег
Задачка 3.15
« Ответ #51 : Июнь 13, 2012, 02:31:26 pm »
Quote (SAV_tlt)
Немножко пример не понял с периодом регистрации 15.10 и 01.11

 Да, немного некорректно описал, имеется ввиду дата ввода начисления.

 
Quote (SAV_tlt)
На данный момент как это понимаю я: зависимость по периоду регистрации означает, что в базу попадут только те записи у которых ПериодРегистрации попадает между БазовыйПериодНачало и БазовыйПериодКонец, а зависимость по периоду действия - попадут все записи у которых ПериодДействия попадает между БазовыйПериодНачало и БазовыйПериодКонец.

 Да, всё правильно.

Adaviya

  • Новичок
  • *
  • Сообщений: 1
  • ФИО: Елена
Задачка 3.15
« Ответ #52 : Июнь 22, 2012, 04:09:20 pm »
Teriban, Да, сдала!
 на 4.
 я на седьмом небе...

darkxxx

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: dark
Задачка 3.15
« Ответ #53 : Июль 03, 2012, 11:45:38 am »
kow1976, У вас хорошее решение но на мой взгляд единственное что вы неправильно сделали:
 На мой взгляд в условии задачи не сказано что вечерние часы выпадают как доп время. то есть там сказано что в понедельник среду и пятницу 2 часа сотрудник работает вечером то есть, как мне кажется неверно заполнен график РС, ведь сказано что у него 40 часов в неделю а у вас при сложении выходит что он больше отрабатывает. надо так 6 часов дневного и + 2 часа вечернего в понедельник среду и пятницу а не 8+2, ну это конечно же мелочи.

kolduev

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Евгений
Задачка 3.15
« Ответ #54 : Июль 25, 2012, 02:04:10 pm »
так все же каким образом начислять компенсацию? каким видом начислений, и каков будет базовый период?

Rosi4

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Aleksey
Задачка 3.15
« Ответ #55 : Июль 27, 2012, 05:47:34 pm »
Ребят, вопрос такой. В запросе, допустим документа расходной, у документа есть ТЧ и реквизит Партия. Вытаскивать нужно Партию и Номенкл, Кол-Во, Суума из ТЧ. Правильно сделать обращение к двум таблицам РасхНакладная и СписокНоменкл(ТЧ), откуда мы получим нужные данные. А можно ли получить партию таким образом: из таблицы СписокНоменклатуры выбрать Ссылка.Партия?

LEOON

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Верютин Сергей
Задачка 3.15
« Ответ #56 : Июль 27, 2012, 08:44:30 pm »
Rosi4,
 Думаю разницы нет, будет так же использоваться 2 таблицы(да и любое обращение через точку это не явный запрос). Только обычно реквизиты документа вытягивают из ТЧ. Можно так же передавать реквизиты через параметр(если нужен 1-2).

nontrade

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Александр
Задачка 3.15
« Ответ #57 : Август 07, 2012, 02:38:26 am »
Teriban, Блин, ну как же у тебя получается запустить в управляемом приложении консоль запросов???

Pavlyk

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: pavel
Задачка 3.15
« Ответ #58 : Сентябрь 08, 2012, 12:10:43 am »
Quote (nontrade)
Teriban, Блин, ну как же у тебя получается запустить в управляемом приложении консоль запросов???
В свойствах конфигурации (в дереве метаданных на саму конфигурацию правой кнопкой) и там разрешать запуск обычных приложений в управляемом , и пот толстым клиентом заходишь.

 Вопрос. Фраза "За каждый день болезни сотрудникам предприятия дополнительно начисляется фикс сумма как компенсация" нам нужно как то находить количество дней болезни или все таки пользователь вводит две записи Больничный с 5 по 10 ,и компенсация с 5 по 10 (подразумевается что пользователь сам указывает такой же период?) ?
« Последнее редактирование: Сентябрь 08, 2012, 12:10:51 am от pavel »

sashapere

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Александр
Задачка 3.15
« Ответ #59 : Ноябрь 13, 2012, 04:29:31 pm »
Народ подскажите как правильно рассчитать количество рабочих дней в пошлем месяце и Начисленную сумму по окладу, кто как делал? cool

Dimonych

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Димон
Задачка 3.15
« Ответ #60 : Декабрь 06, 2012, 01:49:31 pm »
Выкладываю решение.
 РС: Изм: Дата, График Ресурс: Значение
 График: Пятидневка и вечерка.
 В условии сказано: вечерние часы оплачиваются по 1.5 ставке, т.е. в период попадают все значения пятидневки: 8ч за Пн, 8ч за Вт, 8ч за Ср и т.д, а также вечерка 2ч за Пн, 2ч за Ср, 2ч за Пт. Может показаться что в Пн, Ср, Пт набирается 10 раб часов), однако это не так. В алгоритме делается отбор по вечерним часам, т.е. сколько попадает вечерних часов за расчетный период. Вечерние часы оплата = по 1.5 ставке: 1 ставка уже учтена, когда был сделан отбор по пятидневке, оставшиеся 0.5 ставки добавляются в регистр по каждому вечернему часу.

 По одному запросу на основные и доп. начисления.

 По-моему очень даже неплохое решение )
Вложения:
2280930.dt

alex7six

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Александр
Задачка 3.15
« Ответ #61 : Февраль 04, 2013, 09:06:24 pm »
Мой вариант решения.
 В графике 3 ресурса: Дни, Часы, Вечерние Часы.
 Весь расчет получается простым
Вложения:
3-15.dt

patchwork

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: KJK
Задачка 3.15
« Ответ #62 : Июль 13, 2013, 06:48:21 pm »
шожж у вас все задачи кривые ? вы уж сначала  доделайте.а уж потом выкладывайте    .почем зря помойку такую устраивать )))

Добавлено (13.07.2013, 18:46)
---------------------------------------------

Цитата (Dimonych)
В условии сказано: вечерние часы оплачиваются по 1.5 ставке, т.е. в период попадают все значения пятидневки

Добавлено (13.07.2013, 18:48)
---------------------------------------------

Цитата (Dimonych)
В условии сказано: вечерние часы оплачиваются по 1.5 ставке,  ошибаешься

fimanich

  • Пользователь
  • **
  • Сообщений: 49
Задачка 3.15
« Ответ #63 : Август 11, 2013, 09:12:53 am »
Мое решение. РСГрафикиРаботы: Измерения: Дата, График;
 Ресурсы: ЗначениеЧасов, ЗначениеДней,

 ЗначениеВечернихЧасов.
 Основные начисления: Тариф, Пособие. Доп. начисления: Доплата, Компенсация, Премия.
 ОН:Пособие вытесняет Тариф. Пособие берет Тариф
 за базу. ДН: Доплата берет Тариф за базу
 - в ОН ресурс РезультатВечернихЧасов.
 Компенсация берет Пособие за базу - в
 ОН ресурс РезультатДней. Премия берет
 все ВР за базу - Ресурс ОН и ДН Результат

 Во многих здесь решениях Доплата находится в ОН. Почему нельзя сделать ее просто зависимой по базе от КоличестваВечернихЧасов?
 И еще вопрос по перерасчету Основных начислений. Тариф вытесняется Пособием, значит при изменении Пособия Тариф попадет в таблицу перерасчета. Однако Пособие зависит по базе от Тарифа, но если указать для Пособия ведущим Тариф, то система выдает предупреждение "Неверныйсписок ведущих видов расчета". Если это предупреждение проигнорировать, то работает нормально. У кого какое мнение: 1.стоит проигнорировать предупреждение системы, или 2. проигнорировать ситуацию когда Тариф предыдущего месяца изменился, и Пособие надо перерассчитать? Я пока выбрал ответ 2.


Вложения:
fimanich_03_15.dt
« Последнее редактирование: Август 11, 2013, 09:14:51 am от Смирнов Валерий »

TuMyP1985

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Тимур
Задачка 3.15
« Ответ #64 : Август 28, 2013, 03:27:01 pm »
Цитата (fimanich)
У кого какое мнение
У меня тоже реализован вариант 2.
 Вы забыли указать, что для "Пособия" ведущим является "Тариф". (Перепроведение документа "000000001" не создает никаких записей, хотя должно было создать записи о пересчете пособий за февраль).

 Мой вариант:
Вложения:
KTT_3_15.dt

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Задачка 3.15
« Ответ #65 : Сентябрь 12, 2013, 06:07:29 pm »
fimanich и TuMyP1985 не делаете сторнирование Премии и Доплаты за вечерние часы, у вас зацикливается таблица ПерерасчетЗарплаты, и как мне кажется, вся собака этой задачи и зарыта в этом зацикливании...

 В решении:
 - сторнирую Доплату за вечерние часы, Премию,
 - чтобы незацикливалась таблица ПерерасчетЗарплаты удаляю запись из набора записей ПерерасчетЗарплаты по премии,
 - РР ДополнительныеНачисления использует период действия (так удобнее делать расчет, а также сторнировать),
 - Доплата за вечерние часы и Компенсация на лекарства добавляются не интерактивно, т.е. независимо от пользователя в случае введения соответствующих (Тариф, Пособие) начислений.
Вложения:
5073262.dt

fimanich

  • Пользователь
  • **
  • Сообщений: 49
Задачка 3.15
« Ответ #66 : Сентябрь 12, 2013, 10:50:29 pm »
Цитата (artfa)
fimanich и TuMyP1985 не делаете сторнирование Премии и Доплаты за вечерние часы
Имхо, сторнирование не нужно, эти ВР должны попасть в перерасчет, и затем быть перерасчитаны
Цитата (artfa)
у вас зацикливается таблица ПерерасчетЗарплаты
Если последовательно перепровести документы, зацикливания вроде бы нет. Даже если возникнет, то для решения необходима была бы обработка ПерерасчетЗП, которая в данной задаче не нужна (по условию задачи).

Добавлено (12.09.2013, 22:50)
---------------------------------------------

Цитата (artfa)
- сторнирую Доплату за вечерние часы, Премию,- чтобы незацикливалась таблица ПерерасчетЗарплаты удаляю запись из набора записей ПерерасчетЗарплаты по премии
имхо перестарался со сторнированием, оно нужно только при срабатывании механизма вытеснения (в данной задаче пособия) задним числом. В других случаях сторнирование мне кажется лишним.

artfa

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Артур
Задачка 3.15
« Ответ #67 : Сентябрь 13, 2013, 11:24:50 am »
Цитата (fimanich)
Даже если возникнет
возникает, попробуйте перепровести разом все документы.

 
Цитата (fimanich)
В других случаях сторнирование мне кажется лишним.
ну, если так рассуждать, то и сторнирование тарифа то же не нужно.

 
Цитата (fimanich)
имхо перестарался
уж лучше перестараться, чем не...

msergei

  • Новичок
  • *
  • Сообщений: 1
  • ФИО: Сергей
Задачка 3.15
« Ответ #68 : Декабрь 26, 2013, 10:28:29 am »
Мой вариант
Вложения:
7762489.dt

IT_PROGRAMMIST

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Дмитрий
Задачка 3.15
« Ответ #69 : Февраль 12, 2014, 01:50:06 pm »
постарался учесть все моменты. Благодарен за критику.
Вложения:
15ITPRG.dt
« Последнее редактирование: Февраль 12, 2014, 01:50:21 pm от Дмитрий »

non1ka

  • Новичок
  • *
  • Сообщений: 5
  • ФИО: Тюрин Илья Александрович
Задачка 3.15
« Ответ #70 : Февраль 22, 2014, 02:34:33 pm »
IT_PROGRAMMIST
 1. В задаче не сказано про вытеснение вечерних часов "Больничным".
 2. + за использование базы Больничного для получения количества дней болезни, я такое не сделал, а это реально здоровское решение.
 3. Я ввел предопределенный справочник график "Вечерние дни", хотя использование ресурса ВечерниеЧасы в регистре Графики тоже имеет место быть. 
 4. Я храню значнеие часового тарифа в регистре и получаю эти значения для расчета вечерних часов и оклада, но не считаю это существенным замечанием.

 Выкладываю собственное решение.
Вложения:
3.15_non.dt

Leo705

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Андрей
Задачка 3.15
« Ответ #71 : Апрель 22, 2014, 03:10:43 pm »
Мое решение smile

 в РС: Измерения: ГрафикРаботы, ВидВремени, Дата; Ресурс: Значение.
 в РР: Измерения: Сотрудник, Подразделение; Ресурсы: "Значение", "ЗначениеДни"; Реквизиты: Размер, ГрафикРаботы(Связь с графиком, только РР ОН), ВидВремени(Связь с графиком, только РР ОН)
 Добавил компенсацию в ДН (ПВР зависимость от базы по периоду действия) и по базе от пособия получал ресурс "ЗначениеДни". 
 Как вариант можно было не добавлять ресурс РР "ЗначениеДни", а добавить компенсацию в ОН (ДН сделать зависимость базы по периоду регистрации) и как обычно получать данные для расчета компенсации из виртуальной таблицы "ДанныеГрафика..."
Вложения:
Leo705_3.15.dt

Igor-pn

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Игорь
Задачка 3.15
« Ответ #72 : Май 12, 2014, 10:58:24 pm »
Доброго Дня!
 Вечерние часы добавил в график.
Вложения:
3979535.dt

maksonman

  • Новичок
  • *
  • Сообщений: 1
  • ФИО: Галимов Максим Николаевич
Задачка 3.15
« Ответ #73 : Май 14, 2014, 02:41:05 pm »
Друзья, прокомментируйте пожалуйста решение
Вложения:
1682171.dt

Leo705

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Андрей
Задачка 3.15
« Ответ #74 : Май 15, 2014, 02:49:26 pm »
Цитата maksonman ()
Друзья, прокомментируйте пожалуйста решение
Добрый день, могу высказать свои мысли, но должен предупредить, сам я еще не сдавал. Итак:
 1. В отчете отсутствует колонка "Подразделение" (я в своем варианте именно из за этого добавил подразделение как измерение РР и их перерасчетов, для вывода в отчет, но можно было подразделение вытащить из другой таблицы, например РС или того же РР);
 2. Дни болезни рассчитываются по пятидневному графику, а у Вас график всегда берется из ТЧ;
 Ну а остальное думаю решение каждого индивидуально, например где выполнять расчет в общем модуле или модуле документа, добавление доп.реквизита типа "ВидВремени" (как у меня в решении) для получения значений по дням, часам и вечерним часам и т.д.

MKIV

  • Новичок
  • *
  • Сообщений: 6
  • ФИО: Кирилл
Задачка 3.15
« Ответ #75 : Август 27, 2014, 10:17:27 am »
глянул на решение другиих и увидел, что в основном у дополнительных начислений используется зависимость по базе от периода действия. мне кажется, это несколько противоречит условию задачи:
 представим случай когда у нас в документе есть пособие, которое сторнирует. период регистрации (начисления) у него совпадает с премией в этом же документе, и по условию задачи оно не должен попасть в базу премии (начислено не в прошлом месяце), однако при такой зависимости оно попадет. также попадут и сторнирующие записи, хотя опять же начислены они в текущем месяце.
« Последнее редактирование: Август 27, 2014, 10:18:22 am от Кирилл »

Leo705

  • Новичок
  • *
  • Сообщений: 0
  • ФИО: Андрей
Задачка 3.15
« Ответ #76 : Август 27, 2014, 01:08:38 pm »
Цитата MKIV ()
мне кажется, это несколько противоречит условию задачи:

 Моё мнение, если Вы укажите в пояснениях на экзамене (если условия будут подобными), почему Вы выбрали ту или иную зависимость от базы, то проблем у Вас не возникнет. Я посчитал, что раз премия начисляется за предыдущий месяц и она зависит от ВСЕХ начислений, то пусть учитывает и пособие, и сторно записи.

rusmosav

  • Проверенный
  • ***
  • Сообщений: 137
Re: Задачка 3.15
« Ответ #77 : Август 25, 2015, 07:30:54 am »
Прощу оценить.

venvlad

  • Пользователь
  • **
  • Сообщений: 83
Re: Задачка 3.15
« Ответ #78 : Октябрь 09, 2015, 04:26:43 pm »
В условии написано: Сотрудники работают по пятидневному графику, 40 часовая рабочая неделя. Добавил в РС ГрафикиРаботы измерения часы. Пятидневка по 40 часов - значит в день 8 часов, поэтому в коде при движении по окладу жестко ставлю 8 часов. Можно конечно заморочиться, в реквизит поудобнее куда-нибудь забабахать.

Запихал в константы.  Объемная задача, запарился, а может потому что пятница) Конструктивная критика строго требуется.