Opérations de classe (code)
De Wiki1000
(Différences entre les versions)
(Nouvelle page : 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 o...) |
|||
Ligne 28 : | Ligne 28 : | ||
Il existe deux types d'opérations de classe : | Il existe deux types d'opérations de classe : | ||
− | * Les opérations de classe génériques définies par le framework. | + | * Les [[Classes métiers (tech)|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. | * Les opérations de classe définies par le modèle de la classe. | ||
Version actuelle en date du 26 juillet 2009 à 15:14
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 —