Opérations de classe (code)
De Wiki1000
Une opération de classe est une opération qui est supportée par le type de la classe métier; a contrario une opération d'objet est supportée par l'instance d'une classe.
Une opération de classe doit être invoquée sur la classe métier.
Exemple :
class function FacadeComptable.FindExercice(ADate:TDatetime):TExercice; begin // Méthode de classe retrouvant l'exercice comptable contenant une date. // Result := TExercice.Find('(dateDebut<=%1) and (dateFin>%1)','oid',True,[ADate,ADate]); end; procedure MyClass.foo(ADate:TDatetime); var exercice:TExercice; begin // Appel de la méthode de classe pour retrouver l'exercice. exercice := FacadeComptable.FindExercice(ADate); if Assigned(exercice) then begin ... end; end;
Note : Une opération de classe ne peut pas faire référence aux attributs de la classe car ceux-ci ne sont pas définis au niveau de la classe. |
Il existe deux types d'opérations de classe :
- Les opérations de classe génériques définies par le framework.
- Les opérations de classe définies par le modèle de la classe.
Pour définir une opération comme opération de classe cochez la case correspondante dans le dialogue de propriété d'une opération:
— Code métier — Développement DSM —