Имя: Пароль:
1C
 
Количество полных лет, месяцев, дней в запросе?
0 tsr
 
01.12.05
13:04
Может уже кто сталкивался с этим. Нужно в запросе получить данные из заданного периода. Никак не могу получить полное количество месяцев.
Пытаюсь так сделать:
РАЗНОСТЬДАТ(ПриказыОПриеме.ДатаПриема,&ДатаАктуальности,МЕСЯЦ)-РАЗНОСТЬДАТ(ПриказыОПриеме.ДатаПриема,&ДатаАктуальности,ГОД)*12
не получается.Я так понимаю, в запросе округление по арифметическим правилам
1 SKrin
 
01.12.05
13:08
ДатаПриема МЕЖДУ &Дата1 И &Дата2
2 Rovan
 
гуру
01.12.05
13:11
(0) что ты хочешь вообще ? (зачем такое в запросе?)
3 tsr
 
01.12.05
13:13
Нужно немного другое. Получить количество полных месяцев из двух дат.
Т.е если чел отработал 29 дней- 0 мес
32 дня - 1 мес и т.д.
А в общем нужен стаж в виде количества лет,месяцев,дней
4 tsr
 
01.12.05
13:17
Есть такая формула Цел((Дата2-Дата1)/365.25*12) для подсчета количества месяцев
Пытался всунуть в запрос нечто подобное, но уперся в то, что целое никак не получить. Можно только округлить число через функцию Выразить()
5 SKrin
 
01.12.05
13:22
смотри НАЧАЛОПЕРИОДА и КОНЕЦПЕРИОДА
6 Лирик
 
01.12.05
13:28
А в лоб не пробовал?
ГОД(&ДатаАктуальности) * ДЕНЬГОДА(&ДатаАктуальности) - ГОД(ДатаПриема) * ДЕНЬГОДА(ДатаПриема) КАК РазницаДней

там есть еще функция МЕСЯЦ()
7 tsr
 
01.12.05
13:51
И что делать с НАЧАЛОПЕРИОДА?
(6) И так не будет вычислять?
8 tsr
 
01.12.05
13:53
(7)Вопрос там не уместен:) Это утверждение
9 Лирик
 
01.12.05
14:22
(8) Специально попробывал, БУДЕТ.
10 Лирик
 
01.12.05
14:32
И вообще условия не полные. Что считать отработанным месяцем? Приняли 26 февраля. Сейчас 27 марта. ? отработал месяц или нет. По февралю - отработал, по марту - нет.
11 tsr
 
01.12.05
14:49
(9) Из (6) Можно получить только дни. Гораздо проще использовать функцию
РАЗНОСТЬДАТ(ПриказыОПриеме.ДатаПриема,&ДатаАктуальности,День)
А вот полный месяц не получиться. В данном случае полный месяц, это 30 дней. На сколько я понимаю, стаж считается по отработанным дням.
При использовании функции Месяц() результат округляется по арифметическим правилам. Вот в этом как раз собака зарыта. Например: 24 дня тоже считается как месяц
12 Лирик
 
01.12.05
15:20
(11) определись с полным месяцем и с помощью этих функций можно посчитать что угодно. Ведь разность дней всегда между месяцем начальной даты и месяцем конечной даты. Вообще вижу только два варианта:
1)Если полным месяцем считать количество дней месяца начальной даты
2)Если полным месяцем считать количество дней месяца конечной даты
13 tsr
 
01.12.05
15:39
Если бы была функция ЦЕЛ(), то и проблем бы не было. А без нее никак не могу алгоритм придумать. А полный месяц высчитывается из количества отработанных дней за период. В Зик 7.7 есть функция для подсчета лет,месяцев,дней ,но к запросу ее прикрутить не получается
14 Лирик
 
01.12.05
15:47
Попробуй заменить функцию Цел() через ВЫРАЗИТЬ(<>, Как Число 10, 0)
15 Tsr
 
01.12.05
16:04
Пробовал. Округяет по арифметическим правилам. Т.е. >=1.5 -> 2, <1.5 ->1
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс