|
Подскажите пожалуйста какой применяется тут алгоритм, как тут считается? | ☑ | ||
---|---|---|---|---|
0
fpopulaf
28.05.13
✎
08:27
|
ВЫБРАТЬ
СотрудникиОрганизаций.Код, СотрудникиОрганизаций.Наименование, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), МИНУТА)/525600)-0.499999 КАК ЧИСЛО(15,0)) КАК Лет, ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), ЧАС)/730)-0.499999 КАК ЧИСЛО(15,0)) - ВЫРАЗИТЬ(РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), ДЕНЬ)/365- 0.499999 КАК ЧИСЛО(5,0))*12 КАК Месяцев, ВЫБОР КОГДА ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), МИНУТА)/1440)-0.499999 КАК ЧИСЛО(15,0))-(ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), МИНУТА)/525600)-0.499999 КАК ЧИСЛО(15,0)))*365 - (ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), ЧАС)/730)-0.499999 КАК ЧИСЛО(15,0)) - ВЫРАЗИТЬ(РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), ДЕНЬ)/365- 0.499999 КАК ЧИСЛО(5,0))*12)*31 >0 ТОГДА ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), МИНУТА)/1440)-0.499999 КАК ЧИСЛО(15,0))-(ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), МИНУТА)/525600)-0.499999 КАК ЧИСЛО(15,0)))*365 - (ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), ЧАС)/730)-0.499999 КАК ЧИСЛО(15,0)) - ВЫРАЗИТЬ(РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), ДЕНЬ)/365- 0.499999 КАК ЧИСЛО(5,0))*12)*31 ИНАЧЕ 0 КОНЕЦ как Дней, СотрудникиОрганизаций.ДатаПриемаНаРаботу, СотрудникиОрганизаций.Актуальность ИЗ Справочник.СотрудникиОрганизаций КАК СотрудникиОрганизаций |
|||
1
vicof
28.05.13
✎
08:35
|
Алгоритм Байеса-Мура с поправкой на лунный календарь
|
|||
2
Jonny_Khomich
28.05.13
✎
08:36
|
(1) на пол офиса засмеялся после твоего сообщения))
|
|||
3
Ненавижу 1С
гуру
28.05.13
✎
08:38
|
(0) несмещенная пiздиалинезация второго порядка
|
|||
4
mikecool
28.05.13
✎
08:52
|
стаж это блеать, стаж!!!
обломал кайф? |
|||
5
DarKySiK
28.05.13
✎
09:02
|
Сорри за офф, но ТС - а что твой ник означает)? А по сабжу - (4) прав)
|
|||
6
Godofsin
28.05.13
✎
09:12
|
(5) ф попу лаф )))) жеееееесть)))))
|
|||
7
magicSan
28.05.13
✎
09:20
|
-0.499999 - почему?
|
|||
8
DarKySiK
28.05.13
✎
09:21
|
(7) отброс дробной части в запросе
|
|||
9
DarKySiK
28.05.13
✎
09:22
|
+(8) вроде... не вникала в тонкости этого запроса, но обычно этот прием используется для нестандартного округления
|
|||
10
magicSan
28.05.13
✎
09:28
|
круто не знал
|
|||
11
magicSan
28.05.13
✎
09:34
|
пересчитал - округляет верно \(^_^)/
|
|||
12
magicSan
28.05.13
✎
09:39
|
а если год високосный и человек отработал 365 - по алгоритму получается что он отработал год ....
|
|||
13
mikecool
28.05.13
✎
09:41
|
(12) это правила расчета стажа - любой год >= 365 считается годом
|
|||
14
drcrasher
28.05.13
✎
09:44
|
прикольно, но почему считается от жестко прописанной даты в запросе?
|
|||
15
DarKySiK
28.05.13
✎
09:51
|
(14) В отчете Списки сотрудников организации это нормально считается. А тут видимо затычка для чего-то)
|
|||
16
fpopulaf
28.05.13
✎
10:27
|
ник просто удобен везде его использую, високосный год 1 С не считает сама и вообще некоторых сотрудников правильно некоторых пару дней +- а некоторых полный бред выдаёт цифры с потолка, а теперь по делу ктонить скажет? спасибо
|
|||
17
fpopulaf
28.05.13
✎
10:33
|
как она считает не могу понять
|
|||
18
fpopulaf
28.05.13
✎
10:39
|
требуют описание алгоритма простыми словами
|
|||
19
oreshka7387
28.05.13
✎
10:40
|
это типовой запрос??? пойду проверять нашу зуп...
|
|||
20
fpopulaf
28.05.13
✎
10:42
|
нет
|
|||
21
fpopulaf
28.05.13
✎
10:42
|
не типовой
|
|||
22
Бледно Золотистый
28.05.13
✎
10:43
|
(18) А вы по должности кто?
|
|||
23
oreshka7387
28.05.13
✎
10:44
|
фух... ну тогда про логику обращения к конкретной дате нужно у разработчика спрашивать ))) у меня ощущение, что в запросе остались "тестовые" данные
|
|||
24
fpopulaf
28.05.13
✎
11:17
|
только это можно ДАТАВРЕМЯ(2013, 05, 08) заменить на
&ТекущаяДата |
|||
25
fpopulaf
28.05.13
✎
11:19
|
функцию нашёл в интернете а вот принцип как считает не могу понять кого то правильно кого то нет причём расхождение не 2-3 дня а годы
|
|||
26
EvgenOrvin
28.05.13
✎
11:33
|
Попробую :)
ВЫРАЗИТЬ((РАЗНОСТЬДАТ(СотрудникиОрганизаций.ДатаПриемаНаРаботу, ДАТАВРЕМЯ(2013, 05, 08), МИНУТА)/525600)-0.499999 КАК ЧИСЛО(15,0)) Итак: Выразить как число максимальной длины 15, разность дат 8 мая 2013 - дата приема на работу с точностью до минуты |
|||
27
EvgenOrvin
28.05.13
✎
11:33
|
И так далее..
|
|||
28
EvgenOrvin
28.05.13
✎
11:36
|
525600 = 24*60*365 - количество минут в Году, минус 0,4999(как я понимаю убирает из получившегося числа время?)
|
|||
29
fpopulaf
28.05.13
✎
11:38
|
это для наименьшой погрешности
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |