delta Q в системе ГВС

Не получается получить значение deltaQ посистеме ГВС если она однотрубная. Если это так задумано, то не удобно получается, что для разных систем придется выдумывать разные отчетные формы.
нет Q.png

А в самом счетчике эти показания есть? Уточните модель прибора учета.

Прибор ТМК Н-13, в ВКТ тоже самое, да и во всех я думаю так.
deltaQ это Q1-Q2 насколько я понимаю, так вот если у нас 1трубная система ГВС, то у нас есть только Q1. это логично, но удобнее было бы хранить также значение Q2 которое равно 0, и вычислять разность, т.е. deltaQ.
Получается если система 1трубная то придется деть отчетную форму основываясь на Q1, если 2 трубная на deltaQ, я же предлагаю вычислять для обоих случаев deltaQ и, как говориться не париться.

В таких случаях удобнее использовать расчетное поле с выражением:
[Q1 - теплота в подающей магистрали] - Iif(IsNull([Q2 - теплота в обратной магистрали]), 0, [Q2 - теплота в обратной магистрали] )

Да можно, но это делать придется во всех отчетных формах которые используют это значение. Подумайте, может так будет удобнее и быстрее для конечного пользователя все таки.

Вы предлагаете вычислять и записывать в базу показания deltaQ для обнорубной ГВС.
А как быть пользователям, которые в отчетах выполняют свои расчеты, ориентируясь на условие, что deltaQ не задано? Им переделывать отчетные формы ?

Я и есть такой пользователь. В скрипте у меня есть простая проверка if (m2 || v2 == 0) то использую вывод Q1 else вывожу deltaQ
Подскажите что можно рассчитывать , ориентируясь на условие, что deltaQ не задано, если известно что система однотрубная и deltaQ = Q1-Q2 => deltaQ = Q1;

Если по каким либо причинам нет Q1, то его можно расчитать как Q1 = (T1-Tхв)*M1/1000 и положить deltaQ = Q1

Понимаете, я предлагал вам сделать так чтобы не городить велосипед из [Q1 - теплота в подающей магистрали] - Iif(IsNull([Q2 - теплота в обратной магистрали]), 0, [Q2 - теплота в обратной магистрали] )
Можно конечно получить ее и так, можно написать скрипт, а можно сделать расчет deltaQ, последний вариант для меня показался более демократичным для конечного пользователя. Пользователь просто переносит поле Qdelta_Start или Qdelta_End на отчетную форму и не задумывается о том есть ли у него там циркуляция или нет.
В любом случае спасибо за ответы!

Мне кажется, вы с Aleks забрели далеко в сторону от исходной проблемы, давайте вернемся к первому сообщению.

При выдаче данных о потреблении для однотрубных систем ЛЭРС УЧЕТ рассчитывает Qdelta = Q1 автоматически. При выдаче показаний этого не делается, поэтому в вашем случае нет значений Qdelta_Start и Qdelta_End. Вы правы, когда говорите об удобстве пользователя, но не правы оперируя формулой разности показаний. Для показаний нельзя использовать арифметику Qdelta = Q1 - Q2 и нельзя сравнивать в нулем (это тоже значение), можно только присваивать Qdelta = Q1, если Q2 не содержит значений.

Мы рассмотрим ваше предложение о копировании показаний Q1 в Qdelta для однотрубных систем.