Skip to content

$doc.create

Description

Crée un dossier du modèle indiqué.

Après appel de la méthode, le contexte courant (c.-à-d. la valeur retournée par $script.getContext()) devient le contexte du nouveau dossier. Ce comportement peut être modifié au moyen de l'option updateContext (voir ci-dessous).

Mode de gestion single

⚠️ Attention, le fait de créer un dossier depuis un script ne signifie pas que le dossier précédemment ouvert soit fermé, quand bien même que l'application fonctionne avec un mode de gestion de dossiers single.

Veuillez consulter la note exlicative liée au paramètre documentMode du fichier de config pour plus de détail.

Syntaxe

$doc.create( modelName [ , options ] )

Paramètres

modelName string / map

Nom du modèle de dossier à créer

Le paramètre peut être soit une chaîne de caractères, soit un map décrivant un contexte. Dans ce cas, la méthode y recherche la propriété modelName.

options map

Map d'options relatives à l'ouverture de dossier. Les options reconnues sont:

updateContext boolean
Flag true/false indiquant si la méthode doit mettre à jour le contexte avec le dossier courant. Si true, le contexte est mis à jour, pour autant que le dossier peut être créé. L'option est true par défaut.
ignorePolicies boolean

Flag indiquant de ne pas tenir compte des policies lors du traitement.

Par défaut, les policies sont vérifiées si l'application gère des policies et si le thread courant est un thread "client", c'est-à-dire un thread initié par une requête du client. Si la méthode est invoquée par un script démarré par le scheduler, les policies ne seront pas vérifiées par défaut.

Lorsque le flag est false, le moteur évalue les policies à la création. Si vous devez effectuer un traitement de masse, l'évaluation des policies peut avoir un impact sur les performances. Il peut donc dans ce cas être recommandé d'activer le flag.

docId string
Identifiant du dossier à créer. Par défaut le moteur se charge de générer un identifiant, mais la méthode autorise de passer un identifiant personnalisé.
writeable boolean
Flag indiquant le mode d'ouverture du nouveau dossier. Le flag permet d'indiquer que le moteur doit verrouiller le dossier en cas de gestion de lock pessimiste. Le flag est activé (true) par défaut.
notify boolean

Flag true/false indiquant si le moteur doit déclencher la notification doc-create. Par défaut le flag est false.

Lorsque le flag est activé, les notifications before et after sont invoquées de la même façon que lors d'une action create. Le script est exécuté de façon synchrone, mais par un processeur autre que le processeur en charge du traitement du script courant. Le traitement est interrompu si le script notifié génère une exception.

À noter que les notifications peuvent également être envoyées explicitement avec la méthode $app.sendNotification.

L'option est automatiquement activée si l'option notificationParams est définie avec une valeur non null.

notificationParams map

Paramètres supplémentaires à passer lors de la notification doc-create. N'est pris en compte que lorsque notify est true.

Le paramètre attendu est un map de clés-valeurs. Les clés modelName et docId sont réservées et renseignées automatiquement par la méthode.

Le fait de spécifier des paramètres de notification active automatiquement l'option notify (pour autant qu'elle ne soit pas explicitement définir à false).

Retour

Le contexte décrivant le nouveau dossier, sous forme de map

Exemple

1
$doc.create( "vendeur", { updateContext: false, ignorePolicies: true } );