Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 4
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )

> Номер недели в году          
MATEVI Подменю пользователя
сообщение 19.03.12, 11:11
Сообщение #1

Отдыхающий
Иконка группы
Ветеран троянской войныМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 2173
Из: Одесса
Спасибо сказали: 912 раз
Рейтинг: 728.2

1С 77
 НомерНеделиГода(ТекущаяДата())
= 13-я неделя

1С8
 НеделяГода(ТекущаяДата())
= 13-я неделя

Excel 2007 НОМНЕДЕЛИ("19.03.2012") = 12-я неделя
Настольный календарь 19.03.12 - 12-я неделя.

Кому верить? smile.gif

Сообщение отредактировал MATEVI - 19.03.12, 11:14

Vofka Подменю пользователя
сообщение 19.03.12, 11:15
Сообщение #2

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13144
Из: Киев
Спасибо сказали: 3989 раз
Рейтинг: 3120.8

В данном случае я бы верил не 1С smile.gif

reneval Подменю пользователя
сообщение 19.03.12, 11:23
Сообщение #3

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 144
Спасибо сказали: 53 раз
Рейтинг: 0

Буржуины считают что неделя начинается с воскресенья, а у нас принято - с понедельника. Соответсвенно, 1 января - в 1с"е - отделяная неделя, в ёкселе - нет.

MATEVI Подменю пользователя
сообщение 19.03.12, 11:25
Сообщение #4

Отдыхающий
Иконка группы
Ветеран троянской войныМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 2173
Из: Одесса
Спасибо сказали: 912 раз
Рейтинг: 728.2

Да уж...

Цитата
как-то обнаружил эту проблему переписывался и перезванивался с 1С..вот ответ:
Здравствуйте!

Предлагаемый алгоритм ISO имеет ряд существенных отличий от используемого у нас. Например, 1 января у нас всегда относится к 1-й неделе года, а 31 декабря к последней неделе предыдущего года. Даже, если эти обе даты приходятся на одну неделю. Согласно ISO-8601 31 декабря и 1 января могут относиться к одной неделе. И это будет либо последняя неделя уходящего года, либо 1-я неделя наступающего. Например, если 1 января приходится на пятницу, то согласно ISO-8601, эта дата будет оноситься к последней неделе предыдущего года, а 1-я неделя текущего года начнется только 4 января (в понедельник, то есть 1-й день недели). Таким образом, помимо функции НеделяГода() требуется функция ГодНеделиГода(), которая позоволит установить к какому году относится неделя года.

Кроме этого, согласно CLDR и ICU определение дня, с которого начинается 1-я неделя года, является локейло-зависимым. Как и определение 1-го дня недели.

Алгоритм, подобный нашему, используется в MS SQL Server в функции DATEPART(week, ...). Там тоже 1 января всегда относится к 1-й неделе года, а 31 декабря - к последней.

Возможно, если мы решим получить функциональность ISO-8601, самым правильным было бы оставить НеделяГода() как есть и ввести новые две функции для вычисления недели года и года недели года. Эта задача занесена в проект. Будет ли это реализовано и сроки реализации сказать пока не готовы


[необходимо зарегистрироваться для просмотра ссылки]

Цитата(reneval @ 19.03.12, 11:23) *
а у нас принято - с понедельника


Календарь и ежедневник напечатаны в Украине smile.gif

Придется изобрести велик на досуге

Сообщение отредактировал MATEVI - 19.03.12, 11:27

reneval Подменю пользователя
сообщение 19.03.12, 11:50
Сообщение #5

Завсегдатай
Иконка группы
Группа: Местный
Сообщений: 144
Спасибо сказали: 53 раз
Рейтинг: 0

Цитата(MATEVI @ 19.03.12, 11:25) *
Придется изобрести велик на досуге



типа, номер дня 1 января + номер дня в году поделить без остатка на 7? )

MATEVI Подменю пользователя
сообщение 19.03.12, 12:36
Сообщение #6

Отдыхающий
Иконка группы
Ветеран троянской войныМодератору Про1С (за заслуги в 2011 году)
Группа: Местный
Сообщений: 2173
Из: Одесса
Спасибо сказали: 912 раз
Рейтинг: 728.2

Честно сказать еще не думал. Но если есть код или где то видели то поделитесь с народом smile.gif Заранее спасибо.

ivan.kh Подменю пользователя
сообщение 28.04.17, 10:02
Сообщение #7

Общительный
**
Группа: Пользователи
Сообщений: 11
Спасибо сказали: 0 раз
Рейтинг: 0

Добрый день.
Тоже столкнулся с таким вопросом.
Решил в лоб, может кому пригодится:
    Если ДЕНЬНЕДЕЛИ(НачалоГода(ТекущаяДата()))>4 И НеделяГода(ТекущаяДата())<>1 Тогда
         ТекущНеделя = НеделяГода(ТекущаяДата()) - 1
    Иначе
         ТекущНеделя = НеделяГода(ТекущаяДата())
    КонецЕсли;


Vladal Подменю пользователя
сообщение 14.08.18, 11:37
Сообщение #8

Оратор
*****
Группа: Пользователи
Сообщений: 341
Из: Украина
Спасибо сказали: 57 раз
Рейтинг: 43.2

Цитата(reneval @ 19.03.12, 12:23) *
Буржуины считают что неделя начинается с воскресенья, а у нас принято - с понедельника. Соответсвенно, 1 января - в 1с"е - отделяная неделя, в ёкселе - нет.

Когда-то с финдиректором решали такой вопрос при планировании - как считать неделю с 1 января.
Решили, что если в неделе (в нашей локали это с пн по вс) январьских дней 4 и больше, то это первая неделя.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 19.11.19, 17:45
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!