powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Расчет стажа ? отзовитесь кто делал ? плиз
9 сообщений из 9, страница 1 из 1
Расчет стажа ? отзовитесь кто делал ? плиз
    #34000320
LelikBolek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
прошу помочь с алгоритмом:

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

Рразница получается за счет того, что после расчета стажа по каждому периоду и их сложенни получаем, например, 107 дней 32 мес, 7 лет
это надо перевести в нормальное кол-во дней, мес, лет.. для этого используем допущение что в месяце 30 дней и в году 12 мес. при этом и получаем разницу с расчетом когда берется один большоооой период и никаких допущений не используется, а для каждого месяца используется свое кол-во дней ..

как выйти из положения? кто как подсчитает стаж ? подскажите
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34000439
amike34
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, была точно такая же проблема и у меня. Можно считать по разному:
1. например (конечная дата - начальная дата ) - сумма промежутков в днях
2. или как Вы считаете : сумма полных лет, сумма полных месяцев, сумма дней

в любом случае сумму в днях придется перевести в гг.мм.дд по каким-то допущениям (возможно, пожалуй, и по вашим допущениям: в году 365 дней, в месяце 30 днй ).
Может поспрошать у разработчиков программ Пенсионного фонда (есть ли какая либо законодательная база по расчету стажа работы), хотя и у них у разных разработчиков, насколько помню, из-за этой проблемы стаж работы мог разниться на 2-3 дня.

С уважением, М.Александров
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34000442
KGP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelikBolek
как выйти из положения? кто как подсчитает стаж ? подскажите
задайте этот вопрос постановщику задачи:
опишите алгоритм и уточните сколько будет в случаях:
№1
№2
№3
По какому алгоритму ваши кадровики считают стаж?
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34000474
LelikBolek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KGP LelikBolek
как выйти из положения? кто как подсчитает стаж ? подскажите
задайте этот вопрос постановщику задачи:
опишите алгоритм и уточните сколько будет в случаях:
№1
№2
№3
По какому алгоритму ваши кадровики считают стаж?

Кадровики при расчете стажа объединяют периоды работы на в одной организации в единый период. Объединяют, понимая по смыслу что работа человека в цехе 1 , затем в админстрации завода - это работа на одном предприятии. Я же считаю каждый период в отдельности и затем складываю.

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

Нужно доработать алгорит расчета ...
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34000916
KGP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LelikBolek
... посему ввести отдельный признак для обединения периодов в переделах одной орагнизации невозможно.

Нужно доработать алгорит расчета ...

Доработайте

Понять, что организация одна и та же можно? может получиться на уровне изменения выборки (интрументарий, степень свободы, структура - важно)
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34001209
LelikBolek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
KGP
Понять, что организация одна и та же можно?

признака в базе для объединения нет.. вводить новый уже поздно

возможно все полчится если пойти с другой стороны :)
не счиать отдельные периоды и складывать результат с округлением кол-ва дней в месяце = 30, а считать максимальный период и вычистать пропуски, тут как мне видится все определяется достаточно точно. вопрос как определить пропуски?

есть записи:
01.01.2006 - 12.02.2006
14.02.2006 - 15.06.2006
17.06.2006 - 20.09.2006
как определить средствами sql что пропущены 13.02.2006 и 16.06.2006 ?
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34001772
RENaissance
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Получить периоды, между которыми есть пропуски, можно так (для MSSQL 2000)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
declare @tbl table (begin_date datetime, end_date datetime, unique(begin_date, end_date))
insert @tbl values ('2006/01/01', '2006/02/12')
insert @tbl values ('2006/02/14', '2006/06/15')
insert @tbl values ('2006/06/17', '2006/09/20')

select tbl.end_date, min(tbl1.begin_date)
from @tbl tbl
left join @tbl tbl1 on
  tbl.begin_date < tbl1.begin_date
group by tbl.end_date
having datediff(dd, tbl.end_date, min(tbl1.begin_date)) >  1 
З.Ы Чтобы получить конкретные пропущенные даты, необходимо завести таблицу с датами и с ней джойнить вышеприведенный запрос.
З.З.Ы Сам реализовывал процедуру расчета на TSQL и через курсоры, т.к. помимо проверки на разрывность периодов осуществлялась
проверка на пересечение периодов и много других проверок. Процедура работает много лет и ошибок не было замечено.


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34001781
LelikBolek
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
путем экспериментов и раздумий пришел к выводу что все же нужно считать стаж по периодам, но складывать результат не как дни с днями, мес с месяцами и год с годами и в конце приводить к нормальному виду примая кол-во дне в месяце = 30, а складывать каждый результат расчета периода с предыдущим результатом, определя кол-во дней в месяце для перевода в нормльный вид от месяца конечной даты в предыдущем периоде ...
при таком подходе нет принятого допущения в 30 день в мес, учитыывается високосный год. Теперь разница с кадрами составляет один день, но думают еще немного обещения с красивой девушкой из кадров и консенсус будет найден ? :) тут явно осталась проблемка в учете даты расчета в самом стаже :-)
...
Рейтинг: 0 / 0
Расчет стажа ? отзовитесь кто делал ? плиз
    #34002172
Фотография adv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут этим msdatabase занимался.
Помню, тоже с алгоритмом мучался. Результат выложил.

Отзывов, правда, немного.

Сам не смотрел тоже, за ненадобностью.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Расчет стажа ? отзовитесь кто делал ? плиз
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]