Subject | A problem with a procedure |
---|---|
Author | Malcolm Smith |
Post date | 2004-11-26T05:51:13Z |
I have a procedure that I call with this string:
'SELECT * FROM P_LP_SELECT_ONE (:LP_PROCESSNAME_IN)'
The procedure is as follows:
BEGIN
SELECT
LP_PROCESSNAME,
LP_LOGMASK,
LP_LOGPATH,
LP_DAYLIMIT
FROM
LOGPARAMS
WHERE
UPPER(LP_PROCESSNAME) = UPPER(:LP_PROCESSNAME_IN)
INTO
:LP_PROCESSNAME,
:LP_LOGMASK,
:LP_LOGPATH,
:LP_DAYLIMIT;
SUSPEND;
END
When there are no records in the database my code:
bool PrepareDatabase(void)
{
if(FCursor)
{
FCursor->Execute();
FCursor->First();
}
return FCursor && !FCursor->Eof;
}
indicates it found a record (ie, FCursor->Eof == false). If I remove the
SUSPEND from the end of the procedure then it works.
Can this be explained ? Should I remove the SUSPEND
Malcolm Smith
Analyst Programmer
Comvision Pty Ltd
http://www.comvision.net.au
'SELECT * FROM P_LP_SELECT_ONE (:LP_PROCESSNAME_IN)'
The procedure is as follows:
BEGIN
SELECT
LP_PROCESSNAME,
LP_LOGMASK,
LP_LOGPATH,
LP_DAYLIMIT
FROM
LOGPARAMS
WHERE
UPPER(LP_PROCESSNAME) = UPPER(:LP_PROCESSNAME_IN)
INTO
:LP_PROCESSNAME,
:LP_LOGMASK,
:LP_LOGPATH,
:LP_DAYLIMIT;
SUSPEND;
END
When there are no records in the database my code:
bool PrepareDatabase(void)
{
if(FCursor)
{
FCursor->Execute();
FCursor->First();
}
return FCursor && !FCursor->Eof;
}
indicates it found a record (ie, FCursor->Eof == false). If I remove the
SUSPEND from the end of the procedure then it works.
Can this be explained ? Should I remove the SUSPEND
Malcolm Smith
Analyst Programmer
Comvision Pty Ltd
http://www.comvision.net.au