QR 71 – Réinitialiser un numéro de série dans FileMaker (9)

Gilbert, utilisateur belge de FileMaker, souhaite pouvoir réinitialiser le numéro de départ du numéro de série qui définit une rubrique _IdFacture à chaque début d’année.

Et il souhaite le faire sans que l’on soit obligé de passer par le menu Fichier > Gérer > Base de données… > Rubriques. Ni par le menu Enregistrements > Remplacer… qui a l’inconvénient de remplacer les numéros des enregistrements actifs.

Nous avons donc utiliser une action de script.

L’essentiel a été fait rapidement, mais nous avons enrichi progressivement le processus, en évitant d’avoir à saisir le numéro de départ dans le script, en programmant un automatisme total. Maintenant, nous cherchons à limiter cet automatisme pour que l’utilisateur puisse encore réaliser en janvier des factures du mois de décembre de l’année précédente.

Automatiser le processus (2)

Laisser à l’utilisateur le pouvoir de créer un nouveau numéro quand il le veut

Reste un dernier cas à traiter.

Et oui, encore un 😉

Notre utilisateur a souhaité ne pas changer d’année pour réaliser quelques factures sur décembre.

Il le peut tout à fait. Voici qu’il solde toutes les factures qu’il lui restait à faire sur l’année qui s’est écoulée.

Le script se déclenchant au moment où il parvient sur le modèle, il n’est dérangé qu’une seule fois, et peut réaliser autant de factures qu’il le souhaite.

Mais voilà que dans son élan, voyant qu’il a terminé de traiter toutes les factures de l’année écoulée, il envisage de créer les toutes premières factures de l’année qui vient tout juste de commencer.

Or, dans ce cas, puisqu’il ne bouge pas du modèle de création des factures, rien ne lui permet de mettre à jour l’année de la rubrique zAnnee_g et encore moins le numéro de départ d’_IdFacture !

Dans ce cas, le mieux est sans doute de permettre à l’utilisateur de cliquer sur un bouton.

Avec une mise en œuvre un peu particulière. Je vous propose en effet :

– de gérer tout cela dans un seul et unique script, celui que nous avons déjà créé mais que nous allons aménager en conséquence ;

– de masquer le bouton que nous allons créer pendant toute la période de l’années où nous n’en aurons pas besoin 😉

Modifier le script de manière à intégrer les actions que l’on souhaite voir effectuer lorsqu’on clique sur le bouton

Ceci est très simple.

On crée le bouton lié au script que l’on vient de créer et l’on définit un paramètre de script, 1 par exemple. Le script commencera par repérer s’il obtient ou non un paramètre de script. Si c’est le cas, il « sait » qu’il est lancé par le bouton, grâce au clic de l’utilisateur. Si ce n’est pas le cas, il va directement dans la deuxième partie du script, qui correspond à ce que nous avons déjà créé et qui est déclenché par l’arrivée sur le modèle.

Dans le script, on peut demander à l’utilisateur confirmation de sa volonté de modifier le numéro de départ de la rubrique _IdFacture. Ceci dans un souci de sécuriser les données : modifier un tel numéro n’est pas anodin, il faut donc s’assurer que l’utilisateur n’a pas cliqué par erreur. On ouvre donc une boite de dialogue et en fonction de la réponse de l’utilisateur, on stoppe là le script ou on le poursuit.

Dans le cas où il confirme son intention, le script effectue les opérations que nous avons déjà rencontrées et affiche la boite de dialogue récapitulative, informant l’utilisateur que la prochaine facture qu’il réalisera portera bien tel numéro.

Voici notre script finalisé :

ScriptFinalNDepart

Ou, autre manière de faire : créez un script Définir numéro de départ qui ne possède que les lignes qui définissent les rubriques et la boîte de dialogue informant l’utilisateur que les factures qu’il va créer porteront un nouveau numéro de série. Dans le script ci-dessus, remplacez toutes ces lignes par un Exécuter script qui appelle le script Définir numéro de départ 😉

Notre travail est terminé. L’utilisateur peut à tout moment créer une nouvelle année de factures. Sauf que – vous allez croire que je me moque de vous 🙁  – si l’utilisateur clique sur le bouton en cours d’années, le script va modifier aussitôt l’année de la rubrique zAnnee_g et le numéro de départ de la série. De la sorte, l’utilisateur peut se retrouver en 2018 et avec un numéro de série commençant par 18001 alors qu’on n’est qu’en 2017 !

Il faut donc impérativement sécuriser cela !

Marie-Charlotte Potton

 

Premier article / Article précédent / Article suivant

[other]

********

Désolé, la suite de cet article et ses commentaires sont réservés
à ceux qui se sont connectés comme membre.

Comment ? Vous n’êtes pas encore membre alors que c’est gratuit ?
inscrivez-vous maintenant !

Article réservé

Si vous êtes déjà membre, vous pouvez vous connecter ci-dessous :



Cliquez ici si vous avez perdu votre mot de passe

[/membership-content]

Tags: , ,

Merci de laisser un commentaire (Pas de commentaire )

Désolé, les commentaires des articles réservés sont eux-mêmes réservés

Il n'y a pas de commentaire pour l'instant, soyez le premier ;-)