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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 24.05.2017, 00:11   #1  
alicedr is offline
alicedr
Участник
 
175 / 43 (2) +++
Регистрация: 06.07.2012
Адрес: Канада
lookup for week
Клиент хочет добавить в отчет выбор периода в виде "дата начала" и "дата конца". При этом выбор должен осуществляться понедельно. Пользователь может при этом как дату начала выбрать только первый день недели, а как дату конца только последний день недели. Первый день недели определяется как поле First day of the week из Date dimensions.

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

У меня что-то мысль не идет дальше чем сделать InMemory таблицу, заполнить ее данными типа год, месяц, № недели, дата начала, дата конца и использовать ее в лукапе. Есть ли более адекватное решение?
Старый 24.05.2017, 00:53   #2  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от alicedr Посмотреть сообщение
Клиент хочет добавить в отчет выбор периода в виде "дата начала" и "дата конца". При этом выбор должен осуществляться понедельно. Пользователь может при этом как дату начала выбрать только первый день недели, а как дату конца только последний день недели.
Смущает слово "выбрать".

Если речь идет о выбрать из выпадающего диалога с датами,
то это форма SysDateLookUp
Посмотрите на метод drawMonth... Может придумаете способ нарисовать по-другому.

Но пользователь все равно может набить дату руками с клавиатуры )
или с устройства рукописного ввода. или с экранной клавиатуры. или при помощи программы CharacterMap. или скопирует через буфер обмена из какой-нибудь другой программы.
наконец, просто воспользуется утилитой заполнения, которая встроена в Аксапту.
Поэтому по любому нужно переопределить validate/validateField.

Также не забывайте, что в поле даты можно ввести D. Ядро Аксапты превратит этот символ в "сегодняшний день", когда контрол потеряет фокус.
__________________
полезное на axForum, github, vk, coub.

Последний раз редактировалось mazzy; 24.05.2017 в 00:57.
Старый 24.05.2017, 06:09   #3  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
Делал как-то подекадный выбор, выглядит так:
Название: Clip2net_170524080728.png
Просмотров: 512

Размер: 10.1 Кб
Старый 24.05.2017, 07:32   #4  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,440 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Может быть не очень юзерфрендли но вполне рабочий вариант. Позволять тыкать в любую дату но в modifiedField преобразовывать эту дату в нужную. Т.е. пользователь тыкнул в середину недели а в поле автоматом записалась нужная граница, начало или конец недели в зависимости от поля.
За это сообщение автора поблагодарили: EVGL (1).
Старый 24.05.2017, 09:54   #5  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Может быть не очень юзерфрендли но вполне рабочий вариант. Позволять тыкать в любую дату но в modifiedField преобразовывать эту дату в нужную. Т.е. пользователь тыкнул в середину недели а в поле автоматом записалась нужная граница, начало или конец недели в зависимости от поля.
Именно, в табелях так и делается.
А отображать можно номером недели через edit-метод. Перепрограммировать lookup - это вариант, когда трудозатраты и средства явно не соответствуют цели.
За это сообщение автора поблагодарили: mazzy (2).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
stoneridgesoftware: Creating a Default Lookup Form with Filter in Dynamics AX Blog bot DAX Blogs 0 29.07.2016 02:37
vasantharivali: Filter Second lookup based on First Value – Ax 2012 SSRS Blog bot DAX Blogs 0 24.09.2014 13:11
Kashperuk Ivan: Lookup form returning more than one value Blog bot DAX Blogs 0 29.01.2010 18:05
palleagermark: Use keyboard lookup in Product Builder enumerated fields Blog bot DAX Blogs 0 18.08.2009 23:06
Создание Lookup формы Maxim Gorbunov DAX: База знаний и проекты 9 26.06.2007 16:44

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

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

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