Formule – Sortir des sentiers battus

Traduit automatiquement de Deepl

Selon le classement des 10 meilleurs articles de blog de 2019, l’article Formule : Plus de puissance derrière la simplicité post s’est classé assez haut … dans le top 5. Il semble que Formula ait vraiment retenu votre attention, alors voici une autre astuce que Vincent de Lachaux (développeur et expert 4D) m’a montrée et que je partage avec vous !

Utiliser une formule dans un dialogue générique

La commande FORM vous permet de créer facilement un dialogue d’alerte générique. Il suffit de diriger le dialogue vers différents textes à afficher dans un objet :

$object:=New Object(\
"mainText" ; "Êtes-vous sûr de vouloir vider la corbeille ?";\
"additionalText" ; "Vous ne pouvez pas annuler cette action.";\
"okText" ; "Vider la corbeille";\
"cancelText" ; "Annuler"\
)

Vous pouvez encore enrichir cet objet avec une formule pour les actions derrière les boutons OK et Cancel. Votre formule peut appeler une commande 4D ou une méthode de projet, avec ou sans paramètres.

$object.okAction:=Formula(myMethod("Trash" ; "ok"))
$object .cancelAction:=Formula(myMethod("Trash" ; "cancel"))

Ensuite, utilisez le code générique dans les boutons :

Form.cancelAction.call()
// Ou
Form .okAction.call()

Voilà, c’est fait ! Vous avez maintenant un dialogue d’alerte complètement générique.

Ajouter des formules dans l’objet Storage

Si vous avez des fonctions de vérification ou de calcul quelque part dans votre code, vous pouvez ajouter des formules à l’objet Storage.

Voici un exemple :

// Define common functions
If ( . = ) ( ) . := ( . ) . . := (....) . . := (....) StorageƒNull
UseStorage
StorageƒNew shared object
UseStorageƒ
// Register the function in Storage
StorageƒisValidFormula
StorageƒcomputeXFormula
End use
End use
End if

En utilisant cette fonction, vous ne modifiez pas le contenu du stockage, vous n’avez donc pas besoin de Use/End Use.

Créer des formules lors du chargement d’un composant

Pour utiliser les méthodes d’un composant dans la base de données hôte, vous devez d’abord partager la méthode. Cependant, lorsque vous ajoutez des méthodes, il peut être facile d’oublier. Voici une idée pour partager les formules des composants !

Dans votre composant, créez une méthode qui renvoie un objet vers la base de données hôte. Cet objet contient des formules qui appellent les méthodes de votre composant. Résultat ? Une seule méthode à partager. Cool, n’est-ce pas ?

C’est tout pour cet article de blog. C’est maintenant à votre tour de partager cette astuce avec quelqu’un d’autre !

Vanessa Talbot
- Product Owner -Vanessa Talbot a rejoint l'équipe du programme 4D en juin 2014. En tant que Product Owner, elle est chargée de rédiger les user stories puis de les traduire en spécifications fonctionnelles. Son rôle est également de s'assurer que l'implémentation des fonctionnalités livrées répond aux besoins des clients.Depuis son arrivée, elle a travaillé à la définition des fonctionnalités clés de 4D. Elle a travaillé sur la plupart des nouvelles fonctionnalités de multithreading préemptif et aussi sur un sujet très complexe : la nouvelle architecture pour les applications enginées. Vanessa est diplômée de Telecom Saint-Etienne. Elle a commencé sa carrière à l'Institut de Recherche Criminelle en tant que développeur pour le département audiovisuel. Elle a également travaillé dans les domaines des médias et du médical en tant qu'experte en support technique, en production ainsi qu'en documentation de nouvelles fonctionnalités.