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

Неправильный результат в процедуре   Найти похожие ветки 

← →
korvin ©   (2004-12-03 16:59) [0]

Проблема с входящим параметром. Смысл в том, чтобы сравнить введённую дату с полем OPLATA_DATA, но результат выдыёт совершенно дикий (неверно берёт значение даты). Если искомое значение подставить в скрипт процедуры "вручную" вместо OPLATA.OPLATA_DATA=DATA_FIRST сделать  OPLATA.OPLATA_DATA="01.12.2004" то всё работает как надо.
С хранимыми процедурами я новичёк ... подскажите, в чём мой прощёт?
Куски текста процедуры прилагаю:

ALTER PROCEDURE "P_OPLATA"
( "DATA_FIRST" DATE)

RETURNS
( "KLIENT_FULLNAME" VARCHAR(70),
 "KLIENT_KOD" VARCHAR(4),
 "OPLATA_SUM" NUMERIC(8, 2))
 
AS
begin
 for select KLIENT.KLIENT_FULLNAME,
        KLIENT.KLIENT_KOD,
        sum(OPLATA.OPLATA_SUMA)
     from KLIENT, OPLATA
     where (KLIENT.KLIENT_KOD=OPLATA.KLIENT_KOD)
          and (OPLATA.OPLATA_DATA=DATA_FIRST)
  group by KLIENT.KLIENT_FULLNAME, KLIENT.KLIENT_KOD
   into  :KLIENT_FULLNAME,
         :KLIENT_KOD,
         :OPLATA_SUM
   do suspend;
end


← →
DSKalugin ©   (2004-12-03 18:05) [1]

and (OPLATA.OPLATA_DATA= тут двоеточие DATA_FIRST)
потому что параметры в запросах пишутся с двоеточием для отличия от названия полей.
Правильно так
and (OPLATA.OPLATA_DATA= : DATA_FIRST)

Это РАС
ДВА: проконтролируй использование двойных кавычек


← →
korvin ©   (2004-12-03 18:16) [2]

Спасибо, с двоеточием действительно лучше :)
А насчёт кавычек - всё окей будет


← →
Johnmen ©   (2004-12-03 20:28) [3]

А в чём ценность данной процедуры ?


← →
DrPass ©   (2004-12-03 21:00) [4]

Вероятно, для самообразования


← →
korvin ©   (2004-12-03 23:25) [5]

Я выложил только начальную часть процедуры. Вообще-то она выдаёт полный подсчитанный по каждому заказчику отчёт егооплаты всеми видами платежей, распределяя поле оплаты в базовой таблице по результирующим колонкам процедуры: Колонка оплаченной клиентом суммы по банку, колонка оплаченой суммы по кассе ...



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

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



Память: 0.46 MB
Время: 0.02 c
1-1102971055
serko
2004-12-13 23:50
2005.01.02
Combobox и DateTimePecker


3-1102316816
ocean
2004-12-06 10:06
2005.01.02
Связь с SQL-сервером по Интернет


4-1100772561
DelphiN!
2004-11-18 13:09
2005.01.02
Как сделать чтобы дочернее окно было всегда поверх родителя?


1-1103385164
LedWorm
2004-12-18 18:52
2005.01.02
Сохранение TreeView


10-1071784665
Temik
2003-12-19 00:57
2005.01.02
DCOM: как запустить в сети?




   Наверх