🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: borland.public.interbase.sql
Article #11243

Re: Stored proc.

#11243
From: Bill Todd
Date: Thu, 28 Nov 2002 21:50
78 lines
2824 bytes
I think what you want is the following.

CREATE PROCEDURE CHECKRPT (  PAYM SMALLINT )
  RETURNS (
  CUSTNO INTEGER,
  TOTAL DOUBLE PRECISION,
  DUEDATE  TIMESTAMP,
  PSTATE VARCHAR(8),
  CUSTNAME VARCHAR(40)
) AS    BEGIN


IF (PAYM = 0 THEN)
  FOR
  SELECT DISTINCT  C.CUSTNO,  C.TOTAL,
  C.DUEDATE,  C.PSTATE,  D.CUSTNAME
  FROM CHECK C , CUSTOMERS D  
  WHERE (C.CUSTNO=D.CUSTNO)  AND  ( C.PAYMENT IS NULL )
  ORDER BY C.DUEDATE,  C.CUSTNO
  INTO :CUSTNO, :TOTAL, :DUEDATE, :PSTATE, :CUSTNAME
  DO
  SUSPEND;
ELSE
  FOR
  SELECT DISTINCT  C.CUSTNO,  C.TOTAL,
  C.DUEDATE,  C.PSTATE,  D.CUSTNAME
  FROM CHECK C , CUSTOMERS D  
  WHERE (C.CUSTNO=D.CUSTNO)  AND  ( C.PAYMENT IS NOT NULL )
  ORDER BY C.DUEDATE,  C.CUSTNO
  INTO :CUSTNO, :TOTAL, :DUEDATE, :PSTATE, :CUSTNAME
  DO
  SUSPEND;
END



On Thu, 28 Nov 2002 21:41:15 +0200, "Henry Olive" <zed@zedltd.com>
wrote:

>I think i couldn't explain my problem.
>Try to explain again.
>How can i tell to a  s.proc that
>if a variable=0 then A_table_field is null ? ( blank )
>if a variable=1 then A_table_field is not null ? ( not blank )
>
>Please look at  between  BEGIN  and FOR in below SP.
>
>CREATE PROCEDURE CHECKRPT (  PAYM SMALLINT )
>  RETURNS (
>  CUSTNO INTEGER,
>  TOTAL DOUBLE PRECISION,
>  DUEDATE  TIMESTAMP,
>  PSTATE VARCHAR(8),
>  CUSTNAME VARCHAR(40)
>) AS    BEGIN
>
>
>    IF PAYM=0 THEN  C.PAYMENT=NULL
>    IF PAYM=1 THEN  C.PAYMENT <> NULL
>
>
>FOR
>SELECT DISTINCT  C.CUSTNO,  C.TOTAL,
>C.DUEDATE,  C.PSTATE,  D.CUSTNAME
>FROM CHECK C , CUSTOMERS D
>WHERE (C.CUSTNO=D.CUSTNO)  AND  ( C.PAYMENT=:PAYM )
>ORDER BY C.DUEDATE,  C.CUSTNO
>INTO :CUSTNO, :TOTAL, :DUEDATE, :PSTATE, :CUSTNAME
>DO
>SUSPEND;
>END
>
>


--
Bill (TeamB)
(TeamB cannot respond to questions received via email)
Technical Details
Message-ID: <qr3duush7q9g81om4lu89tk8tqun2rhpce@4ax.com>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-08!supernews.com!nntp2.aus1.giganews.com!border1.nntp.aus1.giganews.com!nntp.giganews.com!nntp-relay.ihug.net!newsfeeds.ihug.co.nz!ihug.co.nz!newsgroups.borland.com!not-for-mail
References: <3de3c125@newsgroups.borland.com> <3de6712b@newsgroups.borland.com>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: 114a0e,eeb00b0c9b1e6578
X-Google-Attributes: gid114a0e,public
X-Google-ArrivalTime: 2002-11-28 13:58:18 PST
From: Bill Todd <bill@notthis.dbginc.com>
Newsgroups: borland.public.interbase.sql
Subject: Re: Stored proc.
Date: Thu, 28 Nov 2002 14:50:01 -0700
Message-ID: <qr3duush7q9g81om4lu89tk8tqun2rhpce@4ax.com>
References: <3de3c125@newsgroups.borland.com> <3de6712b@newsgroups.borland.com>
X-Newsreader: Forte Agent 1.91/32.564
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
NNTP-Posting-Host: 216.207.211.30
X-Trace: newsgroups.borland.com 1038520201 216.207.211.30 (28 Nov 2002 13:50:01 -0800)
Lines: 78
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-08!supernews.com!nntp2.aus1.giganews.com!border1.nntp.aus1.giganews.com!nntp.giganews.com!nntp-relay.ihug.net!newsfeeds.ihug.co.nz!ihug.co.nz!newsgroups.borland.com!not-for-mail