Я должен передать @fromdate и @todate в процедуре, и результат должен содержать openinbalance до или перед @fromdate и транзакции, выполненные до @todate. Начальный баланс будет суммой всех транзакций, совершенных до @fromdate. (считать от даты «2019-01-01»)
Ниже приведены таблицы
Таблица 1: GL
id headid openingbalance
1 32 350000
2. Таблица 2: t_vt
id vid transtype headid amount
1 1 c 32 15000
1 2 c 32 25000
Таблица 3: ТВЧ
vid tdate amount
1 2019-01-01 15000
2 2019-01-11 25000
Я пытался подписаться на запрос
SELECT T1.HeadId,'2019-01-01' as FromdATE,t1.OpeningBalance
FROM gl T1
join t_vt v on v.headId=T1.HeadId
join tvh tvh on tvh.vId=v.vId
WHERE t1.HeadId =32 AND tvh.tDate<='2019-01-12'
мой ожидаемый результат
HeadId FromdATE OpeningBalance
32 2019-01-12 350000
но мой фактический результат
HeadId FromdATE OpeningBalance
32 2019-01-12 350000
32 2019-01-12 350000
демо: https://dbfiddle.uk/?rdbms=sqlserver_2017&fiddle=f88d8dbbe35aae06795ecbe9022b9730