Куб (SCD2 dimension) и дата фактов
Всем привет!
Подскажите, работал ли кто-то с таблицами ValidTimeState со стороны кубов?
А именно:
К примеру, имею таблицу Факты1, которая содержит строки, у которых есть некоторый TransDate в формате даты.
Имею таблицу Эмплоймент, у которой включён ValidTimeState framework, соответсвенно, она содержит данные истории смены версий эмлоймента как дата-время начала и конца валидности версии.
1. А дальше вопрос: как же правильно найти эмплоймент на момент даты транзакции, если TransDate - это дата на полночь, а эмплоймент имеет дату/время?
2. Плюс к этому, мы также имеем смещение часового пояса при работе с полями дата/время в SQL. То есть, к примеру, если мы завершаем вресию эмплоймента 11:59PM в таймзоне -5, то в поле ValidTo мы получим 4:59AM следующего дня.
Нашёл, что вместе с полями dateTime создаются специальные поля с суффиксом TZID, которые хранят код правила таймзоны, из которой пришла запись. Но принудительное смещение всех dateTime значений в сохранённую таймзону выглядит немного странно. Получится, что для двух таймзон (-5 и +3) мы будем иметь одно и то же время валидности, хотя пользователи будут видеть в клиенте Аксапты разные значения?
Также не вариант использовать поля created/modified datetime так как их значение может отличаться от значения TransDate.
Запутался, прошу помочь прояснить ситуацию.
Заранее спасибо!
|