Добрый день, необходима ваша помощь. Мне надо посчитать разницу рабочего времени между двумя датами исключая выходные и праздники (с учётом того что время начало и конца может попадать как и на выходной так и на праздник, но мне нужны исключительно рабочие часы, рабочий день с 9:00 до 18:00 + с 13:00 до 14:00 обед). Пример: дата начала 26.12.2017 8:53:00 дата окончания 12.01.2018 21:01:03 должно получится 64:00:00 часа рабочего времени. Помогите пожалуйста.
Добрый день, необходима ваша помощь. Мне надо посчитать разницу рабочего времени между двумя датами исключая выходные и праздники (с учётом того что время начало и конца может попадать как и на выходной так и на праздник, но мне нужны исключительно рабочие часы, рабочий день с 9:00 до 18:00 + с 13:00 до 14:00 обед). Пример: дата начала 26.12.2017 8:53:00 дата окончания 12.01.2018 21:01:03 должно получится 64:00:00 часа рабочего времени. Помогите пожалуйста.laryboy
Выходные - понятно, а праздники каждый год меняются (с учетом новых праздников, переносов). Нужен пример Ваших данных с таблицей праздников и дней, которые перенесены с праздничных выходных. Т.е. Таблица всех нерабочих дат (можно без Сб, Вс, если они всегда выходные)
Выходные - понятно, а праздники каждый год меняются (с учетом новых праздников, переносов). Нужен пример Ваших данных с таблицей праздников и дней, которые перенесены с праздничных выходных. Т.е. Таблица всех нерабочих дат (можно без Сб, Вс, если они всегда выходные)vikttur
Сообщение отредактировал vikttur - Пятница, 12.01.2018, 15:47
Что считать рабочими чисами,если начал в 10 и до конца, то это 7 часов, а если в 8, то 8, а не 9 - так?
Ну смотри можно сделать проще, пусть рабочие часы будут в период с 9:00 по 18:00, то есть если человек отработал с 8:00 до 17:00 это 8 часов, если с 9:00 по 18:00 то это 9, если с 12:00 до 20:00 это 6 часов
Что считать рабочими чисами,если начал в 10 и до конца, то это 7 часов, а если в 8, то 8, а не 9 - так?
Ну смотри можно сделать проще, пусть рабочие часы будут в период с 9:00 по 18:00, то есть если человек отработал с 8:00 до 17:00 это 8 часов, если с 9:00 по 18:00 то это 9, если с 12:00 до 20:00 это 6 часовlaryboy
Так, вообщем ещё раз нормально опишу задачу, есть 2 даты с точностью по времени пример: 27.12.2017 13:14 (Срок окончания работы) и вторая дата 10.01.2018 15:41 (Время действительного окончания работы). Мне надо узнать время просрочки данной задачи в рабочих часах (исключая выходные и праздники, столбец с датами праздников я добавил в файл). Считая что рабочий день c 9:00 до 18:00. В программе откуда идёт выгрузка данных Срок окончания работы всегда попадает в промежуток с 9:00 до 18:00, проблемы могут возникнуть с Временем действительного окончания работы, тут мы считаем так если время попадает до 9:00 (например 8:31, 7:20 и т.д. то считаем что задача была выполнена в 9:00 в первую рабочую минуту этого дня), если задача выполнена после 18:00 (например 18:01 23:12 и т.д) , то считаем 18:00 (последнюю рабочую минуту, только этого рабочего дня. Прикрепляю файл с тестовыми данными и праздничными днями которые попадают на будние дни.
Так, вообщем ещё раз нормально опишу задачу, есть 2 даты с точностью по времени пример: 27.12.2017 13:14 (Срок окончания работы) и вторая дата 10.01.2018 15:41 (Время действительного окончания работы). Мне надо узнать время просрочки данной задачи в рабочих часах (исключая выходные и праздники, столбец с датами праздников я добавил в файл). Считая что рабочий день c 9:00 до 18:00. В программе откуда идёт выгрузка данных Срок окончания работы всегда попадает в промежуток с 9:00 до 18:00, проблемы могут возникнуть с Временем действительного окончания работы, тут мы считаем так если время попадает до 9:00 (например 8:31, 7:20 и т.д. то считаем что задача была выполнена в 9:00 в первую рабочую минуту этого дня), если задача выполнена после 18:00 (например 18:01 23:12 и т.д) , то считаем 18:00 (последнюю рабочую минуту, только этого рабочего дня. Прикрепляю файл с тестовыми данными и праздничными днями которые попадают на будние дни.laryboy
Вот смотрите в 11 строчке должно получиться 25 часов и 23 минуты , а он посчитал 30:22 , как я понял он начинает засчитывать часы которые в дне выполнения, но дело в том что это праздничный день и по идеи он их не должен считать.
Вот смотрите в 11 строчке должно получиться 25 часов и 23 минуты , а он посчитал 30:22 , как я понял он начинает засчитывать часы которые в дне выполнения, но дело в том что это праздничный день и по идеи он их не должен считать.laryboy