case results not showing in editor
Danny Lewkin
daniel.lewkin at cognosis.be
Wed Oct 3 03:33:32 CDT 2007
Hi List, Ivan,
when I call this procedure :
create or replace procedure ct_select_competences_module(in
intModuleID long, IN intOrganisationID LONG, IN strSelectList VARCHAR)
Begin
CASE strSelectList
WHEN 'Module' THEN
SElect RecID, objptr_module, objptr_comppool->name As competence_name,
objptr_comppool->description As comp_description FROM
tbl_comppool_modules
WHERE objptr_module = intModuleID;
WHEN 'All' THEN
SELECT RecID, name, description FROM tbl_competence_pool
WHERE RecID NOT IN (SELECT objptr_comppool FROM
tbl_comppool_modules WHERE objptr_module = 1) AND objptr_organisation
= intOrganisationID;
ELSE
SELECT 1;
END CASE
END
After calling this procedure like this :
CALL ct_select_competences_module(1, 1, 'All'),
I get 1 as Query Result, so the ELSE statement is executed.
BUT if I rewrite this procedure :
create or replace procedure ct_select_competences_module(in
intModuleID long, IN intOrganisationID LONG, IN strSelectList LONG)
Begin
CASE strSelectList
WHEN 1 THEN
SElect RecID, objptr_module, objptr_comppool->name As competence_name,
objptr_comppool->description As comp_description FROM
tbl_comppool_modules
WHERE objptr_module = intModuleID;
WHEN 2 THEN
SELECT RecID, name, description FROM tbl_competence_pool
WHERE RecID NOT IN (SELECT objptr_comppool FROM
tbl_comppool_modules WHERE objptr_module = 1) AND objptr_organisation
= intOrganisationID;
ELSE
SELECT 1;
END CASE
END
After calling this procedure like this :
CALL ct_select_competences_module(1, 1, 2),
I DO get a list of records, and the ELSE statement is NOT executed...
So, I guess, the case-statement can NOT compare VARCHARS ?????
Same result with the IF-statement...
Guess this is a bug..??
Greetz,
Danny
More information about the Valentina
mailing list