|
Вычисление номера недели в году | ☑ | ||
---|---|---|---|---|
0
pavlushov
10.06.16
✎
12:36
|
Народ! Поделитесь пожалуйста функцией для вычисления номера недели в году по указанной дате, встроенную функцию НеделяГода() не предлагать, она считает начиная с первого дня в году а надо исходя из правила: первой рабочей неделей года считается та, на которую выпадает первый четверг года (или 4 января, если хотите).
|
|||
1
DDwe
10.06.16
✎
12:38
|
(0) Написать тяжело? Будем сидеть и ждать пока кто-то подаст?
|
|||
2
Arya Stark
10.06.16
✎
12:40
|
первой рабочей неделей года считается та, на которую выпадает первый четверг года.
Вот у вас Евреев и с Пасхой все не так. как не щапрограммирована ситсемная функция - делайте календари. в ам в помощь |
|||
3
Arya Stark
10.06.16
✎
12:41
|
Календари, и к ним регистр значений - или свой календарь придумывайте из 750 суток и не насилуйте 1с
|
|||
4
pavlushov
10.06.16
✎
12:42
|
(1) ага
|
|||
5
DDwe
10.06.16
✎
12:43
|
(4) Писать одну строчку. Шесть лет на форуме бамбук курил? Программисты мля.
|
|||
6
Arya Stark
10.06.16
✎
12:45
|
Пятница!!!
|
|||
7
DDwe
10.06.16
✎
12:52
|
Ну, времени с открытия темы прошло достаточно, написать, отладить, проверить, продать. Тему можно закрывать ))
|
|||
8
Arya Stark
10.06.16
✎
12:55
|
DDwe - монголия какая по счету республика?
|
|||
9
Чайник Рассела
10.06.16
✎
12:56
|
по какому стандарту? Европейскому?
|
|||
10
Чайник Рассела
10.06.16
✎
12:57
|
Функция ЕвропейскаяНеделяГода(дНужнаяДата) ЭКСПОРТ
Если НЕ ЗначениеЗаполнено(дНужнаяДата) Тогда Возврат 0; КонецЕсли; чДеньНеделиНачалаГода = ДеньНедели(НачалоГода(дНужнаяДата)); Если чДеньНеделиНачалаГода <= 4 Тогда чСмещение = 0; Иначе чСмещение = 1; КонецЕсли; чЕвропейскаяНеделя = НеделяГода(дНужнаяДата) - чСмещение; Если чЕвропейскаяНеделя = 0 Тогда Возврат НеделяГода(НачалоГода(дНужнаяДата) - 1); Иначе Возврат чЕвропейскаяНеделя; КонецЕсли; КонецФункции |
|||
11
Arya Stark
10.06.16
✎
13:00
|
да кто ж вас так заставил коверкать имена переменных? в институе дельфи преподавали?
|
|||
12
Чайник Рассела
10.06.16
✎
13:01
|
(11) Завидуйте молча, мусье
|
|||
13
DDwe
10.06.16
✎
13:02
|
(10)Вот это зачем
"Если чЕвропейскаяНеделя = 0 Тогда Возврат НеделяГода(НачалоГода(дНужнаяДата) - 1); Иначе" ? |
|||
14
DDwe
10.06.16
✎
13:02
|
(11) +100500
|
|||
15
Arya Stark
10.06.16
✎
13:05
|
Если НЕ ЗначениеЗаполнено(дНужнаяДата) Тогда
Возврат 0; КонецЕсли; я уже тут отсановился компилировать - функция явно выдает ложный результат |
|||
16
Arya Stark
10.06.16
✎
13:06
|
и конечно же она должна быть ЭКСПОРТ
|
|||
17
DDwe
10.06.16
✎
13:06
|
(16) А как же без этого )))
|
|||
18
Arya Stark
10.06.16
✎
13:10
|
ты коммент оставишь? ромик ждет
|
|||
19
Arya Stark
10.06.16
✎
13:10
|
фирсов
|
|||
20
DDwe
10.06.16
✎
13:11
|
(18) ?
|
|||
21
DDwe
10.06.16
✎
13:12
|
Счастливый ТС ушел пользоваться ))
|
|||
22
Arya Stark
10.06.16
✎
13:13
|
забей ищу тут одного под ником ЗАпись_ДАмпа. любит ники менять
|
|||
23
Arya Stark
10.06.16
✎
13:15
|
не пробегал в последних топиках? или под ником Pistol?
шибко много знает, прикидывается программистом. и даже в 1с что странно. |
|||
24
Pistol
10.06.16
✎
13:30
|
(18) Подождет до вечера
|
|||
25
Чайник Рассела
10.06.16
✎
13:47
|
(16) наблюдаю у вас обычный случай мозаичной акцентуации: шизоидная+демонстративная.
|
|||
26
Повелитель
10.06.16
✎
13:54
|
(25) +Чайник Рассела
Пока все гундели и ныли, сделал функцию для лентяя из (0) Так бы все отвечали )) |
|||
27
pavlushov
10.06.16
✎
14:36
|
(10) Спасибо!
|
|||
28
pavlushov
10.06.16
✎
15:27
|
(10)
единственная поправка в функции вместо Если чЕвропейскаяНеделя = 0 Тогда Возврат НеделяГода(НачалоГода(дНужнаяДата) - 1); надо Если чЕвропейскаяНеделя = 0 Тогда Возврат ЕвропейскаяНеделяГода(НачалоГода(дНужнаяДата) - 1); и тогда получается замечательная рекурсия :) |
|||
29
Jokero
23.06.16
✎
10:43
|
(10) Мне такую же отсыпьте в СКД, я ее в поля в выражение представления запилю.
А вообще, это эпопея уже сто лет длится, 1С так и не решилась поддерживать российский ГОСТ аппаратно? |
|||
30
Jokero
23.06.16
✎
15:08
|
не врублюсь в гост, идея такова, что если 1е января позже четверга, то неделя начинается со след. понедельника, а если меньше либо равно четвергу, то это первая неделя?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |