select
a.contract_id
a.agreement_version
a.deal_uid
a.probability_perc
a.agreement
a.dt_agreement
a.is_actual
a.descr
d.contract
d.dt_contract
k.contragent
(select count(*) from specification_item_version siv join specification_item si on (siv.specification_item_uid=si.specification_item_uid) join specification s on (si.specification_id=s.specification_id) where a.contract_id=s.contract_id AND a.agreement_version=siv.agreement_version) as change_cnt
(select sum(quantity*price) from specification_item_version siv join specification_item si on (siv.specification_item_uid=si.specification_item_uid) join specification s on (si.specification_id=s.specification_id) where a.contract_id=s.contract_id AND a.agreement_version=siv.agreement_version) as agreement_sum
(select sum(quantity*price)*a.probability_perc/100 from specification_item_version siv join specification_item si on (siv.specification_item_uid=si.specification_item_uid) join specification s on (si.specification_id=s.specification_id) where a.contract_id=s.contract_id AND a.agreement_version=siv.agreement_version) as agreement_sum_p
from agreement a
join contract d on (a.contract_id=d.contract_id)
join contragent k on (d.contragent_id=k.contragent_id)
where 1=1
order by
select count(*) as cnt from agreement where 1=1
Сделки (соглашения)
title="редактировать" class="edit"title="просмотр" class="view">
#contract#
#gridFooter#
Под суммой понимается здесь сумма измененных позиций, а не изменение суммы от предыдущей версии!
Создавать сделки (соглашения) нужно из договоров (потому что у нас сделка - это базовая или дополнительная версия фактуры договора с вероятностью, дополнительное или базовое соглашение к договору)