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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 25.12.2006, 14:32   #1  
Glazz is offline
Glazz
Участник
 
12 / 10 (1) +
Регистрация: 25.07.2005
Уважаемые программеры, я начинающий, не хватает опыта, прошу за вопрос не пинать

Пытаюсь сделать историю изменения набора реквизитов, по жизни все меняется и порой задним числом (спасибо партии родной).

Имеем таблицу вида(пусть для одного реквизита):

ID_R(Реквизит) | Date_R(ДатаИзменения) | Value_R(ЗначениеРеквизита)

Как эффективно выбрать набор значений за период (С .. По.. ) времени, с учетом того
что в результирующий набор нужно включать предыдущее значение реквизита.. т.е. значение которое имело место быть на начало выбираемого периода?

Ну типа из этого:

===================
...
PODR 01.01.1990 Хоз.отдел
PODR 01.01.1991 Секритариат
PODR 15.08.06 Бухгалтерия
PODR 01.09.06 Руководство

с 01.08.06 по 31.12.06
получить:

PODR 01.01.1991 Секритариат
PODR 15.08.06 Бухгалтерия
PODR 01.09.06 Руководство


...
Конечно все намного сложнее, но поскльку важна лишь суть упрощаю.

Да и таблица не 10 записей а большая..
Раньше такое делали исп. подзапросы (inner join)
ну т.е. в подзапросе находили макс значение даты по реквизиту до начала периода по которому запрашиваем и включали значения попадающие в диапазон дат и значение которое равнялось макс значению даты из подзапроса.
Как тут быть чтобы не тащить все записи на клиента?
 

Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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