AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 29.09.2010, 16:25   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,953 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от pitersky Посмотреть сообщение
Как я понял, в данной строке не только дата, и эта дата не вначале строки. Так что не прокатит.
По-хорошему - надо добавить в таблицу поле с датой, проапдейтить это поле нужными датами (ну и initValue дописать, если надо), а потом сортировать отчёт уже по этому новому полю.
По-плохому - насколько я помню, в мапе идёт автоматическая сортировка по возрастанию, если ключом является число. Тогда можно сделать так - возьмите какую-нибудь ОЧЕНЬ далёкую дату (например, 01/01/2059); заполните мап значениями таблицы, используя в качестве ключа расстояние между далёкой датой и датой из строки (при этом они отсортируются по убыванию дат); затем выводите мап в отчёт, пересчитывая ключ обратно в дату.

upd. В принципе, в качестве далёкой даты можно и текущую использовать. Но я не знаю, как себя поведёт мап, если в таблице окажутся даты больше текущей
Не уверен что 2059 дата обработается. Кажется было ограничение на 2053 год. На сортировку в мапе нехорошо закладываться. я не проверял но не исключено что он числа отсортирует как числа а не как строки. Лучше уж времянка или дополнительное поле. Плюс где то в дебрях ax32.exe видел ссылку на ключ командной строки, смысл которого сводился к тому что сортировка в мапах будет обратная - по убыванию ключа. Зачем это могло понадобиться - ума не приложу но по-любому понятно что некомильфо закладываться на сортировку по возрастанию ключа в мапе.
Старый 29.09.2010, 16:38   #2  
pitersky is offline
pitersky
северный Будда
Аватар для pitersky
Ex AND Project
Соотечественники
 
1,510 / 435 (18) +++++++
Регистрация: 26.09.2007
Адрес: Солнечная система
Цитата:
Сообщение от Logger Посмотреть сообщение
Не уверен что 2059 дата обработается. Кажется было ограничение на 2053 год. На сортировку в мапе нехорошо закладываться. я не проверял но не исключено что он числа отсортирует как числа а не как строки. Лучше уж времянка или дополнительное поле. Плюс где то в дебрях ax32.exe видел ссылку на ключ командной строки, смысл которого сводился к тому что сортировка в мапах будет обратная - по убыванию ключа. Зачем это могло понадобиться - ума не приложу но по-любому понятно что некомильфо закладываться на сортировку по возрастанию ключа в мапе.
1) Только что создал заказ на продажу с датой 01/01/2059. Всё сохранилось нормально
2) Так я и предлагал сортировать числа как числа Именно это и нужно, если взять плохой вариант. При всём том это именно плохой вариант - отдельное поле со всех сторон лучше
3) Закладываться на сортировку вполне комильфо. Вряд ли (если оный параметр существует) Аксу можно с ним запустить случайно. А неслучайно никто запускать и не станет.
__________________
С уважением,
Вячеслав
Старый 29.09.2010, 17:54   #3  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,953 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от pitersky Посмотреть сообщение
2) Так я и предлагал сортировать числа как числа Именно это и нужно, если взять плохой вариант.
Да это я опечатался при написании ответа. Тоже имел в виду числа.
Старый 29.09.2010, 17:20   #4  
Alexius is offline
Alexius
Участник
Аватар для Alexius
 
461 / 248 (9) ++++++
Регистрация: 13.12.2001
Цитата:
Сообщение от Logger Посмотреть сообщение
Кажется было ограничение на 2053 год.
X++:
info (strfmt("%1",  maxdate()));
Старый 29.09.2010, 17:54   #5  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,953 / 3230 (115) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Alexius Посмотреть сообщение
X++:
info (strfmt("%1",  maxdate()));
Гы !
Промахнулся на 100 лет
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Поле "Оплатить до" в строке общего журнала longson DAX: Функционал 7 29.03.2008 14:38
Ошибка: фантомное дублирующее поле типа "дата" в гриде belugin DAX: Программирование 8 14.06.2006 00:15
поле "Документы к обновлению" в форме "Обработка закупки" sev DAX: Функционал 3 08.12.2005 17:21
Заказ. Форма "Разноска накладной"->Строки-> Поле "закрытие" ATimTim DAX: Функционал 2 30.11.2004 16:14
Журнал переноса->Строки->Поле "Количество" . Нужен "0" по умолчанию вместо ATimTim DAX: Функционал 5 26.06.2004 12:17
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 18:21.