Merge (objectlist)
De Wiki1000
(Différences entre les versions)
(Nouvelle page : <source lang='delphi'>procedure Merge(ls:TObjectList; const iWhere:string; const iArgs:Variant);</source> Cette procédure ajoute les objets de la liste passé en paramètre qui ne ...) |
|||
(2 révisions intermédiaires par un utilisateur sont masquées) | |||
Ligne 1 : | Ligne 1 : | ||
− | <source lang='delphi'>procedure Merge(ls:TObjectList; const | + | <source lang='delphi'>procedure Merge(ls:TObjectList; const iExpression:string; const iArgs:Variant);</source> |
− | Cette procédure ajoute les objets de la liste | + | Cette procédure ajoute les objets de la liste passée en paramètre pour lesquels il n'existe pas déjà un objet dans la liste retournant la même valeur pour l'expression. |
+ | |||
+ | Si l'expression est vide les objets qui ne sont pas déjà présent sont ajoutés. | ||
{|class="wikitable" | {|class="wikitable" | ||
Ligne 9 : | Ligne 11 : | ||
|- | |- | ||
|iWhere | |iWhere | ||
− | |Expression objet | + | |Expression objet retournant le critère d'ajout. |
|- | |- | ||
|iArgs | |iArgs | ||
|Paramètres des expressions objets. | |Paramètres des expressions objets. | ||
|} | |} | ||
+ | |||
+ | '''pseudo-code avec expression :''' | ||
+ | |||
+ | <pre> | ||
+ | For each ls.items[] | ||
+ | if not exists self.items[] where | ||
+ | ls.items[].Evaluate = self.items[].Evaluate | ||
+ | then Add ls.items[] | ||
+ | </pre> | ||
+ | |||
+ | '''pseudo-code sans expression :''' | ||
+ | |||
+ | <pre> | ||
+ | For each ls.items[] | ||
+ | if not exists self.items[] where | ||
+ | ls.items[].InstanceOID = self.items[].InstanceOID | ||
+ | then Add ls.items[] | ||
+ | </pre> | ||
+ | |||
+ | |||
+ | Voir aussi: | ||
+ | |||
+ | * [[Intersect (objectlist)|Intersect]] | ||
Exemple: | Exemple: | ||
Ligne 21 : | Ligne 46 : | ||
</source> | </source> | ||
− | |||
{{Footer|Listes d'objets (tech)}} | {{Footer|Listes d'objets (tech)}} | ||
[[category:Listes d'objets]] | [[category:Listes d'objets]] |
Version actuelle en date du 19 janvier 2012 à 17:09
procedure Merge(ls:TObjectList; const iExpression:string; const iArgs:Variant);
Cette procédure ajoute les objets de la liste passée en paramètre pour lesquels il n'existe pas déjà un objet dans la liste retournant la même valeur pour l'expression.
Si l'expression est vide les objets qui ne sont pas déjà présent sont ajoutés.
ls | Liste avec laquelle réaliser la fusion. |
iWhere | Expression objet retournant le critère d'ajout. |
iArgs | Paramètres des expressions objets. |
pseudo-code avec expression :
For each ls.items[] if not exists self.items[] where ls.items[].Evaluate = self.items[].Evaluate then Add ls.items[]
pseudo-code sans expression :
For each ls.items[] if not exists self.items[] where ls.items[].InstanceOID = self.items[].InstanceOID then Add ls.items[]
Voir aussi:
Exemple:
begin end;