Идея

Так как во многих компаниях принято недельный цикл планирования, то графики строятся по неделям. 
Но в начале года невозможно нормально отобразить результаты, так как сортировка идет по номеру недели.
Предлагаю добавить формат Year&Week, чтобы отображать в нужном порядке результаты по неделям.

Одобрена
2 комментария

Здравствуйте, Владимир!

Мы передали Вашу идею аналитикам продукта, они рассмотрят возможность ее реализации в последующих релизах приложения.

Спасибо, что помогаете улучшать наши продукты!

Владимир, спасибо за проявленный интерес. Зарегистрировали ваше пожелание по развитию приложения.

Войдите или зарегистрируйтесь, чтобы комментировать
Публикация

Если складываете View для активностей с группировкой, например, по началу и концу и при этом есть процессные активности, у которых начало расчитывается как временной интервал между now и некоей датой, можете получить проблемы с секундами и милисекундами. Поэтому при группировке активностей по дате лучше всего применять вот такой каст в sql:

CAST(CONVERT(varchar(16), [StartDate], 20) AS datetime)

где StartDate - поле с датой до милисекунд.

Поделиться

0 комментариев
Войдите или зарегистрируйтесь, чтобы комментировать
Публикация

В датасете по умолчанию дата хранится в расширенном виде.
Задача: записать в переменную дату без времени.

Если в переменной только дата, можно привести к формату dd.mm.yyyy следующим образом:

ExtractDateAsStr(new Date(Dataset.ValAsDateTime('Date'))).getVarDate);

Если дата должна выводиться в строке:

DateToStr(Dataset.ValAsDateTime('Date'));

Поделиться

3 комментария

Пример на эту тему :
Задача : Как в скрипте получить дату в виде XXXX-XX-XX XX:XX:XX из поля даты в датасете

Пример кода:

var theDate = new Date(Date.parse(Dataset.ValAsDateTime('Date')))
MessageBox( theDate.getFullYear() + "-" + (theDate.getMonth()+ 1) + "-" + theDate.getDate() + " "+theDate.getHours() + ":" + theDate.getMinutes() + ":" + theDate.getSeconds() );

где Date - поле с датасета

Результат работы : 2011-6-27 12:45:0

При выводе таким способом в строку даты, минуты и часы до 10 (0-9) выводятся без ноля.

Например:

theDate = new Date();
theDate.setMinutes(09);
 
Log.Write(1, theDate.getMinutes(09));

Результат: 9

Можно ли как-то это побороть без парсинга?

Метод getMinutes не имеет параметров, его стоит вызывать просто theDate.getMinutes(). И он возвращает число.

Чтобы получить строку с нулём, можно обернуть функцией:

function AddZero(number) {
	return (number < 10) ? '0' + number : number;
}
 
theDate = new Date();
theDate.setMinutes(9);
 
Log.Write(1, AddZero(theDate.getMinutes()));
Войдите или зарегистрируйтесь, чтобы комментировать
Публикация

В БД значение даты храниться в формате dd.mm.yyyy hh:mm:ss

В шаблоне письма должна быть дата в формате dd.mm.yyyy. Дата вставляется в шаблон письма из пользовательского запроса. Как конвертировать дату в нужный формат в пользовательском запросе?

Может быть есть ещё какие-то варианты?

Поделиться

4 комментария

Попробуйте изменить свойство Kind для нужного поля в шаблоне:
dtkDate - Дата.
dtkTime - Время.
dtkDateTime - Дата / Время.

"Вадим_" написал:В БД значение даты храниться в формате dd.mm.yyyy hh:mm:ss

Вадим, а как Вы это определили? Вы храните в текстовом поле?

Fishi, спасибо.

Понял, как сделать проще. Даблклик на значении колонки открывает её свойства. В поле "Формат отображения дат" нужно просто выбрать необходимое.

"Осауленко Александр" написал:Вы храните в текстовом поле?

Нет, конечно. Я беру это поле в пользовательский запрос, и оно выводится в этом формате.

Вадим, ну так это формат представления данных на клиенте, в БД поле дата - это число с плавающей запятой. А то как его уже интерпретирует клиент, зависит от региональных настроек и самого клиента.

Войдите или зарегистрируйтесь, чтобы комментировать