Вниз
Скачать: CL | DM;

Уважаемые...   Найти похожие ветки 

 
Border   (2003-10-26 22:44) [0]

Клиенты(КодКлиент,название)
Договор(КодДоговора,КодКлиент)
Заказано(кодЗаказано,КодДоговора,Сумма)- что заказано в договоре
Оплата(КодОплата,кодДоговора,Сумма)- оплата по договору

Запрос на определние задолженности
SELECT Клиенты.Название, Договор.КодДоговор, Sum([Заказано]![Сумма])- Sum([Оплата]![Сумма]) AS Долг
FROM Клиенты INNER JOIN (Договор INNER JOIN [Оплата] ON Договор.КодДоговор = Оплата.КодДоговора) ON Клиенты.КодКлиента = Договор.КодКлиента
WHERE Договор.КодДоговора=:КодДоговор
GROUP BY Договор.КодДоговор;

сначала считает нормально, при условии что есть записи в таблице оплата, а потом смотришь - и значение удвоилось, утроилось..что делать, и как обработать исключительную ситуацию отсутствия записей в таблице Оплата.
Мне приходится делать два запроса - один на определение суммы по договору, второй - - по оплате, а потом их уже сравнивать. но это же коряво!!!


 
Border   (2003-10-26 22:45) [1]

Может есть другой путь определения долга?



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.021 c
1-41568
senya
2003-10-27 15:32
2003.11.13
DBGrid - одна строка в нескольких


14-42004
MsGuns
2003-10-15 13:03
2003.11.13
Шахтер, Торпедо, Спартак.. Прогнозы


1-41453
volser
2003-10-29 11:02
2003.11.13
Использование SHBrowseForFolder


1-41548
mabus
2003-10-27 18:52
2003.11.13
Экспорт TToolBar из Dll-ки


7-42180
AVGVI
2003-08-13 20:48
2003.11.13
Управление учетными записями в W2K




   Наверх