Demy, Odines посмотрел решения похожи - используется вложенный запрос.
Я похоже сделал, без вложенного запроса.
Плюс у меня самый простой способ контроля дублей - без циклов и поисков. Зацените)
В условии сказано:
"В том случае, когда сумма отгрузок по проекту меньше суммы оплаты,
оставшаяся часть оплаты должна быть распределена в счет отгрузок остальных проектов"
"Остальных проектов" - с точки зрения здравого смысла, означает все проекты по которым остались долги, включая те проекты, которые есть в табличной части документа.
У Demy, Odines это учтено.
У DoctorRoza например оставшаяся оплата распределяется только на те проекты, которых нет в таблице документа.
Вообще сам вид отчета в задаче подсказывает, что удобнее использовать только один регистр. Авансы отражать на пустом или предопределенном проекте.
В своем варианте я отражал авансы со знаком + в ПриходеДенег , и - в РасходнойНакладной. Так удобнее, не надо возиться с минусами в отчетах.