Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: 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 вся ветка

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.037 c
3-41031
Zalk
2003-10-15 13:23
2003.11.13
Чем отличаются ADOQuery и ADOCommand?


7-42147
наблюдатель
2003-09-01 18:12
2003.11.13
WH_SHELL


3-40830
geg
2003-10-22 09:25
2003.11.13
IBQuery1 filds то F_1 to SUM


3-41023
SER
2003-10-15 17:58
2003.11.13
Прямое обращение кданным полученным из базы


3-40931
Alrksandr
2003-10-17 19:06
2003.11.13
Нужно ли из DLL при работе с АДО вызывать Coinitialize?