pageInfo=#pageInfo#
id="#d.specification_id#"
status=#pageInfo.status#
trackOut="tr"
idAttributesOut="id"
/>
select
a.login as creator, a.shortname as creator_shortname, m.login as updater, m.shortname as updater_shortname
from #pageInfo.entity# e
left outer join usr a on (e.creator_id=a.usr_id)
left outer join usr m on (e.updater_id=m.usr_id)
where e.#pageInfo.key#=
select d.contract_id, d.contract, d.dt_contract, c.contragent_id, c.contragent
from contract d
left outer join contragent c on (d.contragent_id=c.contragent_id)
where d.contract_id=
Спецификация
#d.specification#
[#d.specification_id#]
#status.errorMessage#
Спецификация (номер)
Договор
select c.contract_id, c.contract, c.dt_contract
from contract c
order by 1
/>
select
i.specification_item_uid
,s.svc_id
,s.svc
,s.code
,(select count(*) from specification_item_version siv where siv.specification_item_uid=i.specification_item_uid) as item_version_count
from specification_item i
left outer join svc s on (i.svc_id=s.svc_id)
where i.specification_id=
order by 1
Строки спецификации (#qItem.recordCount#)
Ключ строки
Услуга
Код услуги
Версий
#specification_item_uid#
#svc#
#code#
#item_version_count#
Здесь отсутствуют версионные поля - цена, количество, название для печати.
Если бы они были - это получилась бы версия спецификации.
Как сущности версии спецификации нет.
Можно синтезировать версию спецификации на произвольную дату, а можно по версии определенного соглашения (это должно быть возмозно, потому что соглашение меняет каждую строку не более 1 раза
)
Спецификация по версии соглашения не учитывает is_actual этого соглашения, но учитывает предыдущие
*** Собственно, нам нужно для илюстрации версионности как раз синтезировать спецификацию на дату и спецификацию по версии согдашения