Показать сообщение отдельно
Старый 01.02.2017, 11:56   #19  
Яга1 is offline
Яга1
Участник
 
8 / 10 (1) +
Регистрация: 30.01.2017
Цитата:
Сообщение от AlGol Посмотреть сообщение
Может проще будет доработать таблицу с ценами до полноценной реализации модели ValidFrom-ValidTo?
Добавить поле даты окончания срока действия цены ValidTo, заполнять его по умолчанию максимальной датой, а при создании строки с последующей датой заполнять его соответстующим значением окончания срока действия.

Тогда запросы по актуальным ценам упростятся до
[дата цены]>=ValidFrom AND [дата цены] <= ValidTo.
А также нужно возвращать в ValidTо максимальную дату, если новая строка цен удалилась
И не максимальную, а какую-то там еще, если удалилась не последняя строка
И при изменении ValidFrom, если в результате строка перескакивает через несколько строк назад, тоже исправить ValidTo.
Мы уже делали так. Впечатление, что ПРОЩЕ все-таки qbrCena2TransDate.value('((SOPCenaTable.TransDate<SOPCenaTableView.TransDate) && (SOPCenaTableView.TransDate<='+date2StrXpp(_DATE)+'))'); как предложил Wamr
Наглядно и точно нет ошибок при пересчете ValidTo