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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 11.11.2011, 12:14   #21  
Borsugg is offline
Borsugg
Участник
 
22 / 10 (1) +
Регистрация: 09.08.2011
Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Если же все-таки хочется все в одном запросе, то проблема заключается в том, что необходимо уточнить дату начала периода. Т.е. изменить начальную дату, если в истории есть запись с датой меньше указанной, но нет записи с датой равной указанной.
Вот я и тоже ж пытался найти начальную дату, да и не туда ушел. У вас все просто и понятно.

Цитата:
Сообщение от Владимир Максимов Посмотреть сообщение
Не обязательно пытаться все впихнуть в один запрос. В смысле, получить сразу результат. Может быть проще будет анализировать выборку. Ведь вряд ли будет очень уж большое количество записей в истории изменения цен для одного артикула и склада.
И первый вариант красивый, даже теперь незнаю какой выбрать)) Будем тестить
Спасибо всем за помощь!
Старый 11.11.2011, 13:36   #22  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
может стоит добавить в таблицу поле "Дата окончания действия цены", заполнить его (и заполнять в будущем). И тогда задача упрощается.
Старый 11.11.2011, 14:37   #23  
pitersky is offline
pitersky
северный Будда
Аватар для pitersky
Ex AND Project
Соотечественники
 
1,510 / 435 (18) +++++++
Регистрация: 26.09.2007
Адрес: Солнечная система
Цитата:
Сообщение от raz Посмотреть сообщение
может стоит добавить в таблицу поле "Дата окончания действия цены", заполнить его (и заполнять в будущем). И тогда задача упрощается.
Эта может и упрощается. Зато появляется задача контроля интервалов дат - дабы в них не было разрывов
__________________
С уважением,
Вячеслав
Старый 13.11.2011, 13:11   #24  
Maxim Gorbunov is offline
Maxim Gorbunov
Administrator
Соотечественники
Лучший по профессии 2009
 
2,483 / 645 (26) +++++++
Регистрация: 27.11.2001
Адрес: Dubai, UAE
А если так?

X++:
FromDate                fromDate = 05\01\2011;
ToDate                  toDate = 20\02\2011;
ItemId                  itemId = ...;
InventLocationId        inventLocationId = ...
RetailItemPriceHistory  retailItemPriceHistory;
RetailItemPriceHistory  retailItemPriceHistoryJoin;

select minof(NewPrice) from retailItemPriceHistory
    where retailItemPriceHistory.ItemId             == itemId           &&
          retailItemPriceHistory.InventLocationId   == inventLocationId &&
          retailItemPriceHistory.TransDate          <= toDate
notexists join retailItemPriceHistoryJoin
    where retailItemPriceHistoryJoin.ItemId             == retailItemPriceHistory.ItemId            &&
          retailItemPriceHistoryJoin.InventLocationId   == retailItemPriceHistory.InventLocationId  &&
          retailItemPriceHistoryJoin.TransDate          >  retailItemPriceHistory.TransDate         &&
          retailItemPriceHistoryJoin.TransDate          <= fromDate;
__________________
Not registered yet? Register here!
Have comments, questions, suggestions or anything else regarding our web site? Don't hesitate, send them to me
Теги
retailitempricehistory, запрос (query)

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Поиск набором в выпадающем списке.. propeller DAX: Программирование 0 04.04.2011 17:31
Поиск сотрудников по наименованию (ФИО) в AX 2009 propeller DAX: Программирование 12 15.11.2010 12:42
"поиск" braathe DAX: Программирование 6 24.03.2006 13:07
Поиск по подстроке JohNick DAX: Программирование 8 06.03.2004 22:24
Поиск по полю временной таблицы Swetik DAX: Программирование 2 10.12.2003 11:35

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

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

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