![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите с ХП [Firebird 1.5] [D6]
Koala © (2004-09-05 15:59:00)Есть процедура
CREATE PROCEDURE PR_SELECT_FIXING (
IN_TYPE VARCHAR(10) CHARACTER SET WIN1251)
RETURNS (
OUT_ID_AVTO INTEGER,
OUT_GOS_NUM VARCHAR(15) CHARACTER SET WIN1251,
OUT_MARKA_AVTO VARCHAR(30) CHARACTER SET WIN1251,
OUT_ID_DRIVER INTEGER,
OUT_FIO_DRIVER VARCHAR(25) CHARACTER SET WIN1251,
OUT_CERTIFICATE VARCHAR(15) CHARACTER SET WIN1251,
OUT_CUSTOMER VARCHAR(50) CHARACTER SET WIN1251,
OUT_DATE_EDIT TIMESTAMP,
OUT_USER_EDIT VARCHAR(32) CHARACTER SET WIN1251)
AS
begin
/* Procedure Text */
for SELECT TBL_REF_AVTO.ID_AVTO, TBL_REF_AVTO.GOS_NUM,
TBL_REF_AVTO.MARKA_AVTO, TBL_REF_AVTO.TYPE_CAR,
TBL_REF_DRIVERS.ID_DRIVER, TBL_REF_DRIVERS.FIO_DRIVER,
TBL_REF_DRIVERS.CERTIFICATE, TBL_REF_FIXINGCAR.CUSTOMER,
TBL_REF_FIXINGCAR.DATE_EDIT, TBL_REF_FIXINGCAR.USER_EDIT
FROM TBL_REF_DRIVERS
INNER JOIN TBL_REF_FIXINGCAR ON
(TBL_REF_DRIVERS.ID_DRIVER = TBL_REF_FIXINGCAR.ID_DRIVER)
INNER JOIN TBL_REF_AVTO ON
(TBL_REF_FIXINGCAR.ID_AVTO = TBL_REF_AVTO.ID_AVTO)
if (:IN_TYPE = 'Passenger') then
where (TYPE_CAR = 1)
if (:IN_TYPE = 'Freight') then
where (TYPE_CAR = 0)
into
OUT_ID_AVTO, OUT_GOS_NUM, OUT_MARKA_AVTO,
OUT_ID_DRIVER, OUT_FIO_DRIVER, OUT_CERTIFICATE,
OUT_CUSTOMER, OUT_DATE_EDIT, OUT_USER_EDIT
do suspend;
end
На If ругается....
Нужна поцедура выборки если вводится IN_TYPE = 'Passenger' то выборка по легковым, IN_TYPE = 'Freight' - грузовым, а IN_TYPE = '' то все и легковые и грузовые
Как сделать????
Koala (2004-09-05 16:43:00) [1]Вопрос снят, сам разобрался....