Изучили тот пример проекта, которые Вы прислали последним.
В объекте "Платежи", для поля "Оплата-Предоплата" задана формула:
[String(Вид счета.Вид счета=Предоплата?Счет №1.Предоплата:Счет №1.Долг)]
1) Поля "Вид счета", которое получает данные из какого-либо объекта и его поля "Вид счета", в данном объекте нет.
Расчёт функции уже невозможен.
2) Производится попытка получить данные из системного поля "Счет №1".
Такого поля в объекте нет - поэтому расчёт функции опять невозможен.
3) Если исправить имя поля "Счет №1" на существующее имя системной ссылки на объект "Счет 1", то в объекте "Счета", на которое ссылается это поле, отсутствует поле "Предоплата" (но есть поле "Предопл").
4) Даже если исправить все указанные выше ошибки - нельзя использовать суммирующие данные из родительского объекта, которые получаются на основе добавляемых/изменяемых данных тех же самых дочерних записей. Какую бы мы последовательность обработки в программе не сделали: 1) вычислять значение суммы из дочерних объектов, а потом их использовать в дочернем списке, или 2) сначала сохранять данные в дочернем списке, а потом суммировать в родительском объекте - в любом случае результат будет некорректным или в записи дочернего списка, или в записи родительского объекта.
Цифры прыгают, когда я че-то меняю, что с этими цифрами не связано.
Тут хоть что делай в программе, а если такие косяки есть - пользоваться ею - большой риск.
Утверждать, что проблемы в нашем конструкторе - крайне
преждевременно и опрометчиво, пока Вы не исправите все свои ошибки в логике структуры.
При таком подходе к построению структуры проекта я бы тоже считал, что пользоваться им - большой риск.