Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / алгоритмы подсчета времени (стаж, возраст итд) / 23 сообщений из 23, страница 1 из 1
16.01.2006, 10:48
    #33484292
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Всем привет!

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

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

если периодов несколько то от конкретной даты не оттолкнешься (стаж)
посчитать можно вычислив количество дней во всех периодах и перобразовав полученные дни в дни-месяцы-годы по одной из методик:
дни - 31 д/мес - 365д/год
или
дни - 30,4375 д/мес 365,25 д/год

разумеется с отсечением до целого.

хотел бы выслушать мнения по теме.
...
Рейтинг: 0 / 0
16.01.2006, 12:45
    #33484653
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Ну сдесь тебе нужно точна вычеслять скока дней в месяце к примеру февраль 28 или 29 дней смотря какой год ну и так далее в какомта месяце 30 или 31 день тоже надо учесть тоесть к примеру две даты 1: 31.11.05 2: 27.02.06 сдесь как я понимаю сташ считается включительно 1 и 2 дат и выходит что 4 месяца
...
Рейтинг: 0 / 0
16.01.2006, 13:15
    #33484787
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
точным календарным способом можно посчитать только один интервал.
но если интевала два то так не получится

к примеру период
с 30.11.05 по 27.02.06 = 89 дней с учетом календаря
( если не считать последний день т.е. с 30.11.05 00:00:0000 по 27.02.06 00:00:0000)

и второй период
с 03.12.2003 31.03.2005 484 дня тоже с учетом календаря

сумму календарно не получить, можно только нормативно: сложить дни и посчитать сколько лет месяцев и остаток дней исходя из некоторого норматива
...
Рейтинг: 0 / 0
16.01.2006, 13:44
    #33484911
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
с 03.12.2003 по 31.03.2005 ты получаеш 1 год 3 месяца и 29 дней
с 30.11.2005 по 27.02.2006 ты получаеш 3 месяца

А теперь если прибавить то ты получиш общий стаж 1 год 6 месяца 29 дней
А непрерывный стаж 3 месяца
...
Рейтинг: 0 / 0
16.01.2006, 13:49
    #33484922
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Ну а к примеру если так
с 03.12.2003 по 31.03.2005 ты получаеш 1 год 3 месяца и 29 дней
с 30.11.2005 по 28.02.2006 ты получаеш 3 месяца и 2 дня

И в конце получиш общий стаж 1 год и 7 месяцев тоесть количество дней в месяце определять по последнему месяцу

А непрерывный 3 месяца и 2 дня

В предыдущем чутока обшибся
...
Рейтинг: 0 / 0
16.01.2006, 13:55
    #33484954
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
с непрерывным там вообще отдельная песня лучше пока не трогать!

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

Это какая то общепринятая методика?
может быть ссылочку почитать где?
...
Рейтинг: 0 / 0
16.01.2006, 13:59
    #33484972
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Ссылочку незнаю это моя догатка (я считаю так правельней)
Тут я непонял всмысле количество дней месяца первого периода???
...
Рейтинг: 0 / 0
16.01.2006, 14:11
    #33485025
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
AndroN-RUSСсылочку незнаю это моя догатка (я считаю так правельней)
Тут я непонял всмысле количество дней месяца первого периода???

"количество дней в месяце определять по последнему месяцу"

то есть ты взял 31 день потому что первый период а именно в марте 31 день.
...
Рейтинг: 0 / 0
16.01.2006, 14:48
    #33485146
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
с 03.12.2003 по 31.03.2005
с 30.11.2005 по 28.02.2006 я взял конечный месяц этова периуда тоесть Март 2006 года так как оставшиеся дни поподают на него

А впринцепе вопрос интерестный я завтра в кадрах спрошу как правельней будет
...
Рейтинг: 0 / 0
16.01.2006, 14:52
    #33485173
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
я спросил - мне сказали а мы не знаем...
а как считаете? дни делим на 365 получаем годы остаток на 31 получаем месяцы оставшееся дни и все

отсюда и вопросы
...
Рейтинг: 0 / 0
16.01.2006, 14:53
    #33485180
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
то есть месяцы на 30 , неправильно в предыдущем посте
...
Рейтинг: 0 / 0
16.01.2006, 14:54
    #33485188
DocAl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Нда... А львам-то систематически недокладывают мяса!
...
Рейтинг: 0 / 0
16.01.2006, 15:08
    #33485244
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Я буду долго смеятся если мне завтра также ответят что МЫ НЕЗНАЕМ

Отсюда складывается мнение что програмист должен не только уметь програмировать но и знать Бух-учет, кадровый учет, систему безопасности, быть электриком итд
...
Рейтинг: 0 / 0
16.01.2006, 15:14
    #33485268
AL_KIR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
AndroN-RUSЯ буду долго смеятся если мне завтра также ответят что МЫ НЕЗНАЕМ

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

...токарем, слесарем, сантехником, уметь обращаться с газовой горелкой и сварочным аппаратом, обязательно - наличие прав чем больше открытых категорий - тем лучше, уметь печь блины (без этого никуда)...
...
Рейтинг: 0 / 0
16.01.2006, 19:41
    #33485899
adv
adv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
Вам надо в правовые базы данных.

Можно поискать, например, так .
...
Рейтинг: 0 / 0
17.01.2006, 07:04
    #33486167
AndroN-RUS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
А у нас кадры знают как это считать хе

По каждому периоду высчитываем количество Лет Месяцев Дней и складываем с другими и к примеру в конце у нас получилось

5 лет 6 месяцев и 134 дня так вот мы эти дни делим на 30 (тоесть сдесь 30 дней это месяц) и получается 134/30=4 месяца и 14 дней и в итоге выходит
5 Лет 10 Месяцев 14 Дней
...
Рейтинг: 0 / 0
17.01.2006, 14:43
    #33487317
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
advВам надо в правовые базы данных.

Можно поискать, например, так .

правовые данные определяют какие категории имеют право на досрочную пенсию. просмотрел топ ссылок - нигде нет правил сумирования периодов...
...
Рейтинг: 0 / 0
17.01.2006, 14:45
    #33487328
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
AndroN-RUSА у нас кадры знают как это считать хе

По каждому периоду высчитываем количество Лет Месяцев Дней и складываем с другими и к примеру в конце у нас получилось

5 лет 6 месяцев и 134 дня так вот мы эти дни делим на 30 (тоесть сдесь 30 дней это месяц) и получается 134/30=4 месяца и 14 дней и в итоге выходит
5 Лет 10 Месяцев 14 Дней

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

а вот если бы сцылочку на законодательство, было бы супер.
...
Рейтинг: 0 / 0
17.01.2006, 15:25
    #33487460
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
А в законодательстве суммирования периодов, по-моему, и нет...
Обычно имеются ведомственные положения/инструкции и т.п.
А иногда считают, как кому приятнее покажется.

И еще, _непрерывный_ стаж считать еще муторнее, поскольку в документе
"ПРАВИЛА ИСЧИСЛЕНИЯ НЕПРЕРЫВНОГО ТРУДОВОГО СТАЖА
РАБОЧИХ И СЛУЖАЩИХ ПРИ НАЗНАЧЕНИИ ПОСОБИЙ
ПО ГОСУДАРСТВЕННОМУ СОЦИАЛЬНОМУ СТРАХОВАНИЮ"
сказано, что м.б. пропуски в 1-2-3 месяца, есть причины, когда любой пропущенный
период включается или вообще не включается и т.д.
...
Рейтинг: 0 / 0
23.01.2006, 15:11
    #33497556
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
вот что получилось.
баги вроде все выискал... но мало ли...

скачать ZIP (136 Кб) MSAccess XP
...
Рейтинг: 0 / 0
23.01.2006, 15:34
    #33497641
vkodor
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
MsDatabaseruвот что получилось.
баги вроде все выискал... но мало ли...

скачать ZIP (136 Кб) MSAccess XP

А нельзя в этот калькулятор вставить календарь по удобнее?
например
...
Рейтинг: 0 / 0
23.01.2006, 16:27
    #33497846
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
можно, лично мне этот больше нравится
...
Рейтинг: 0 / 0
23.01.2006, 16:31
    #33497863
MsDatabaseru
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
алгоритмы подсчета времени (стаж, возраст итд)
в этом например есть учет переносов праздничных дней а в стандартном датепикере нет.

будет еще отсчет рабочих дней от определенной даты


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


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