Information générale
Catégorie:
Base de données, Tables, Vues, Index et syntaxe SQL
Titre:
Strange SQL ICASE or IIF Behaviour
Versions des environnements
Have observed some strange behaviour when setting up a View with the following Syntax:
SELECT ICASE(Tasks.t_assgn_by = ?vp_rem_emp, "TaskA", Tasks.t_assgn_to = ?vp_rem_emp, "TaskB", "TaskN" ) As TType,;
Tasks.t_id, Tasks.t_assgn_by, Tasks.t_assgn_to;
FROM km!tasks;
WHERE INLIST(?vp_rem_emp, Tasks.t_assgn_by, Tasks.t_assgn_to, 1) = .T.
If a Public Variable vp_rem_emp has not been set up, The Error: SQL: Column "field | variable" is not found (Error 1806) for vp_rem_emp occurs.
Setting up a Variable in the calling program (or Public if creating the View) seems to "trick" the View into working as desired.
(In this example, t_d, t_assign_by, t_assgn_to are all Integer Fields. Don't think Field types matter.)
Same Error appears regardless of SET ENGINEBEHAVIOR settings and also appears to occur for IIF Function.
Anyone dealt with this type of issue?
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement