13.6.2.2 Doc::postCreated()
Hameçon (ou hook) utilisé par la méthode Doc::store()
.
Cette méthode est appelée après l'enregistrement en base de données.
13.6.2.2.1 Description
string postCreated ()
Cette méthode est utilisable aussi pour réaliser un post-traitement après une création de document. Elle ne peut pas annuler l'enregistrement. Le document possède un identificateur et est déjà enregistré en base.
Cette méthode est aussi appelée par Doc::revise()
lorsque le
document est révisé. Une révision entraîne une création en base de données.
13.6.2.2.1.1 Avertissements
Il ne faut pas appeler la méthode Doc::Store()
dans cette méthode
au risque d'avoir une boucle de récursion infinie.
Si des modifications d'attributs sont réalisées dans cette méthode, elles sont
automatiquement enregistrées en base par la méthode Doc::Store()
.
13.6.2.2.2 Liste des paramètres
Aucun paramètre.
13.6.2.2.3 Valeur de retour
La valeur de retour est un message d'information. Ce message est enregistré dans l'historique du document.
13.6.2.2.4 Erreurs / Exceptions
Aucune.
13.6.2.2.5 Historique
Aucun.
13.6.2.2.6 Exemples
Dans la famille MyFamily, une référence unique est enregistrée lors de la création du document.
Soit la famille suivante :
BEGIN | Ma famille | MYFAMILY | ||||||
---|---|---|---|---|---|---|---|---|
CLASS | My\MyFamily | |||||||
// | idattr | idframe | label | T | A | type | ord | vis |
ATTR | MY_IDENTIFICATION | Identification | N | N | frame | 10 | W | |
ATTR | MY_NUMBERONE | MY_IDENTIFICATION | nombre 1 | Y | N | int | 20 | W |
ATTR | MY_NUMBERTWO | MY_IDENTIFICATION | nombre 2 | N | N | int | 30 | W |
ATTR | MY_REF | MY_IDENTIFICATION | Référence | N | N | frame | 10 | R |
END |
namespace My; use \Dcp\AttributeIdentifiers\MyFamily as MyAttributes; class MyFamily extends \Dcp\Family\Document { public function postCreated() { $msg = ''; if ($this->revision == 0) { // création initiale $err = $this->setValue(MyAttributes::my_ref, uniqid('my')); if ($err) { $msg = sprintf("Pas d'identifiant"); } else { $msg = sprintf("Création identifiant %s", $this->getRawValue(MyAttributes::my_ref)); } } return $msg; } }
13.6.2.2.7 Notes
En cas de famille héritée, il est nécessaire d'appeler l'hameçon du parent pour disposer des mêmes fonctionnalités.
Cette méthode est appelée par Doc::store()
qu'en cas de création
ou de révision tandis que l'hameçon Doc::postStore()
est
appelé systématiquement par la méthode Doc::store()
.