AddColumn (selector)
{{#images:version800-32x32.png|stock}} <source lang='delphi'>procedure AddColumn(const iSqlColumn,iSqlAlias);</source>
Cette méthode permet d'ajouter une colonne au résultat de la requête qui sera exécutée.
Paramètre | Usage |
---|---|
iSqlColumn | Le nom de la colonne dans la requête (préfixé de l'alias de table) |
iSqlAlias | Le nom d'alias SQL de la colonne, sera le nom de colonne dans le résultat. |
En général, cette méthode s'utilise avec une contrainte appliquée à une vue.
On peut ainsi recupérer une valeur issue d'une table liée et la manipuler dans la vue.
Pour cela :
- Prédéfinir la variable dans la vue
- Faire un sélecteur sur la vue
- Ajouter une contrainte au sélecteur
- Ajouter la colonne issue de la contrainte avec comme nom d'alias de colonne le nom de l'attribut de la vue
Exemple :
<source lang="delphi"> Type
ClassA = class codeA: string; end;
ClassB = class codeB: string; CRef: ClassC; end;
ClassC = class codeC: string; end;
procedure foo(); Type
MyView = viewOf(ClassA) unCodeA : string = codeA; refC: ClassC; // Reference defined as a variable end;
var inst:MyView; sel:TSelector; c1:TSelectorConstraint begin
sel := MyView.CreateSelector(....); c1 := sel.AddConstraint('ClassB','codeB','unCodeA',,[]); // join (table alias t1) ClassA and ClassB on codeA=codeB sel.AddColumn(c1.AliasOf('oidCRef'),'oidRefC'); // Add the column t1.oidCRef in the result set ... foreach inst in sel.AsList do begin if Assigned(inst.refC) then begin // The reference is defined // oidrefC has been set to the value of oidCRef of the join ClassB // end; end;
end; </source>
Voir aussi :
{{#if:Selecteur (tech)|
{{#if:Selecteur (tech)|— Selecteur (tech) |}} — Développement DSM —
|
{{#if:|— [[{{{1}}}]] |}} — Développement DSM —
}}