Entrée de Registre Format (colonne spécifique)
Spécifie deux différentes fonctionnalités basées sur un champ : conversion de casse et vérification d’unicité et auto-incrémentation. Un champ peut supporter l'une ou l'autre de ces fonctions, mais pas les deux. La fonction invoquée dépend du format de la donnée saisie.
Notez que cette entrée de Registre spécifique à un champ est distincte de l'entrée de Registre Format (ensemble du système) qui permet de régler les formats globalement sur les champs de latitude et longitude, date et d’heures.
Avec cette variation de l'entrée de Registre Format, il est possible de spécifier automatiquement une conversion de casse de données sur la base d'un champ.
Toute colonne dans EMu peut être configurée pour la conversion de casse automatique afin que quelle que soit la casse des données saisies dans un champ, elles s'affichent dans le format de casse spécifié par l'entrée de Registre pour ce champ.
Note: La conversion se produit lorsque l'utilisateur quitte un champ. La Conversion de casse n'affecte pas les valeurs saisies dans les champs en mode Requête.
Utilisation
Clé | Utilisateur | Utilisateur | Groupe | Groupe | Groupe | Groupe |
---|---|---|---|---|---|---|
Clé 1 | User
|
User
|
Group
|
Group
|
Group
|
Group
|
Clé 2 | utilisateur | utilisateur | groupe | groupe | Default
|
Default
|
Clé 3 | Table
|
Table
|
Table
|
Table
|
Table
|
Table
|
Clé 4 | table | Default
|
table | Default
|
table | Default
|
Clé 5 | Format
|
|||||
Clé 6 | colonne ou Default |
|||||
Valeur | format |
User
|
utilisateur | Table
|
table | Format
|
colonne | format |
User
|
utilisateur | Table
|
Default
|
Format
|
colonne | format |
Group
|
groupe | Table
|
table | Format
|
colonne | format |
Group
|
groupe | Table
|
Default
|
Format
|
colonne | format |
Group
|
Default
|
Table
|
table | Format
|
colonne | format |
Group
|
Default
|
Table
|
Default
|
Format
|
colonne | format |
User
|
utilisateur | Table
|
table | Format
|
Default
|
format |
User
|
utilisateur | Table
|
Default
|
Format
|
Default
|
format |
Group
|
groupe | Table
|
table | Format
|
Default
|
format |
Group
|
groupe | Table
|
Default
|
Format
|
Default
|
format |
Group
|
Default
|
Table
|
table | Format
|
Default
|
format |
Group
|
Default
|
Table
|
Default
|
Format
|
Default
|
format |
où :
colonne |
est un nom back-end de colonne ; ou utilisez |
|||||||
format |
peut prendre les valeurs suivantes : |
|||||||
|
Les noms propres auront la première lettre en MAJUSCULE et toutes les autres en minuscule :
Clé | Paramètre |
---|---|
Clé 1 | Group
|
Clé 2 | Default
|
Clé 3 | Table
|
Clé 4 | eparties
|
Clé 5 | Format
|
Clé 6 | NamFirst
|
Valeur | ucfirst
|
Après la saisie de john dans le champ Prénom : (Détails personnels) dans le module Personnes / Organisations en quittant ce champ, la valeur sera convertie en John.
Le statut d'enregistrement dans chaque table apparaîtra en MAJUSCULE :
Clé | Paramètre |
---|---|
Clé 1 | Group
|
Clé 2 | Default
|
Clé 3 | Table
|
Clé 4 | Default
|
Clé 5 | Format
|
Clé 6 | SecRecordStatus
|
Valeur | uc
|
Tous les champs dans les tables seront en minuscule :
Clé | Paramètre |
---|---|
Clé 1 | Group
|
Clé 2 | Default
|
Clé 3 | Table
|
Clé 4 | Default
|
Clé 5 | Format
|
Clé 6 | Default
|
Valeur | lc
|
Avec cette variation de l'entrée de Registre Format il est possible de spécifier une vérification d'unicité et auto-incrémentation des valeurs sur la base d'un champ. L'auto-incrémentation est appliquée à une colonne qui a une ou plusieurs valeurs changeantes, par exemple une colonne qui affiche le prochain numéro disponible lorsqu'un nouvel enregistrement est inséré.
Notons :
- Si les valeurs par défaut ne sont pas spécifiées pour une colonne comportant un nombre incrémentiel, aucune valeur ne s'affichera automatiquement lors de la création d’un nouvel enregistrement. Il est nécessaire de déclencher l'auto-incrémentation et l'affichage du nombre. En d'autres termes, le champ restera vide jusqu'à ce que l'auto-incrémentation du nombre soit déclenchée.
Note: Si l'entrée de Registre Format ne spécifie qu'un nombre à auto-incrémentation dans une colonne, déclenchez l'affichage et l'auto-incrémentation du nombre en saisissant un caractère non numérique valide dans un champ numérique, par exemple + ou - et appuyez sur TAB pour quitter le champ. Le prochain nombre disponible s'affichera.
Voir l'exemple 1 pour plus de détails. - Les composants non incrémentaux inclus dans un format (par exemple %s dans %s.%1^d ou TEXT dans TEXT.%1^d) doivent être saisis dans le champ avant que le composant incrémental ne soit calculé. Dans cet exemple, si aucune valeur par défaut pour %s n'a été spécifiée pour le champ, l'utilisateur devra saisir du texte dans le champ et appuyer sur TAB avant que le nombre auto-incrémenté (%1^d) ne soit calculé. Il en va de même si TEXT.%1^d est spécifié comme format. Dans ce cas, l'utilisateur devra saisir le mot TEXT dans le champ avant d'appuyer sur TAB. Cela permet de quitter le champ et de déclencher le calcul et l'affichage du nombre auto-incrémenté.
Voir Exemple 3 pour plus de détails.
Note: Cependant, en spécifiant une entrée de Registre Insert Defaults, une valeur auto-incrémentée peut s'afficher automatiquement lorsqu'un nouvel enregistrement est créé.
Toute colonne pour laquelle la vérification d'unicité et l'auto-incrémentation sont à activer DOIT avoir l'attribut Unique de spécifié : l'attribut Unique peut être défini en utilisant l'entrée de Registre Unique Index Indexing.
Clé | Utilisateur | Utilisateur | Groupe | Groupe | Groupe | Groupe |
---|---|---|---|---|---|---|
Clé 1 | User
|
User
|
Group
|
Group
|
Group
|
Group
|
Clé 2 | utilisateur | utilisateur | groupe | groupe | Default
|
Default
|
Clé 3 | Table
|
Table
|
Table
|
Table
|
Table
|
Table
|
Clé 4 | table | Default
|
table | Default
|
table | Default
|
Clé 5 | Format
|
|||||
Clé 6 | colonne | |||||
Valeur | format |
User
|
utilisateur | Table
|
table | Format
|
colonne | format |
User
|
utilisateur | Table
|
Default
|
Format
|
colonne | format |
Group
|
groupe | Table
|
table | Format
|
colonne | format |
Group
|
groupe | Table
|
Default
|
Format
|
colonne | format |
Group
|
Default
|
Table
|
table | Format
|
colonne | format |
Group
|
Default
|
Table
|
Default
|
Format
|
colonne | format |
où :
format | est construit en utilisant les valeurs suivantes : | |||||||||||
|
Note: La syntaxe de format est similaire à la syntaxe de printf en C/C++/Perl avec des restrictions et des extensions.
Une institution veut que le Numéro de l'événement (EveEventNumber) dans le module Événements soit unique et auto-incrémenté. Le format du Numéro de l'événement est :
- Un texte comme préfixe : Événement.
- L'année en cours.
- Un nombre auto-incrémenté.
- Chaque composant est séparé par un trait d'union (-), ex. : Événement
-2014-1
Le format spécifié est donc : %s-%Y-%1^d
Quand un utilisateur entre une valeur dans le champ Numéro de l'événement, elle est envoyée au back-end qui la sépare en ses divers composants, détermine quel est le composant suivant à incrémenter, incrémente ce composant pour fournir la prochaine valeur unique, et finalement reformate la valeur selon la chaîne de caractères format.
Note: Pour les formats d'incrémentation multiples (par exemple %1^d-%2^d
) l'utilisateur devra revisiter le champ pour déclencher l'incrémentation du composant suivant.
Les valeurs pour les composants non-incrémentant (par exemple, texte) doivent être fournies par l'utilisateur ou, comme nous le verrons dans Exemple 1, par une entrée de Registre Insert Defaults. Il n'est pas nécessaire d'inclure les valeurs des composants connus, par exemple l'année en cours si %Y
est utilisé. (Bien sûr, si vous voulez entrer un numéro pour une année antérieure, il sera nécessaire de saisir cette année).
La ponctuation est ignorée et la ponctuation superflue est rejetée dès que la valeur est reformatée.
En supposant qu'un enregistrement a un Numéro de l'événement de Événement-2014-1
:
Si un utilisateur a saisi : |
Résultat |
---|---|
Événement-2014
|
Une valeur de Événement |
Événement |
Un message d'erreur s'affichera avertissant que la valeur n'est pas unique. |
Événement |
Une valeur de Événement |
Événement |
Si une valeur complète est saisie, l'incrémentation n'a pas lieu et seule l'unicité de la valeur est vérifiée. |
Cliquer sur l'exemple de format pour plus de détails :
Un nombre auto-incrémenté. |
|
Trois composants séparés par un trait d'union; un préfixe, un numérique (une année à quatre chiffres), et enfin un nombre auto-incrémenté. |
|
|
Un format personnalisé pour illustrer ce qui est possible. Le texte explicite PRE, suivi d'une valeur texte, puis le nombre explicite 123, puis un nombre auto-incrémenté et enfin le texte explicite SUF, tous séparés par des points. |
|
%1^d
Une institution veut que le Numéro de l'événement (EveEventNumber) dans le module Événements (eevents
) soit unique et auto-incrémenté.
Dans cet exemple le format du Numéro de l'événement est simplement un nombre auto-incrémenté (1%^d
).
Si l'attribut Unique n'a pas été défini dans le back-end pour le champ EveEventNumber, établissez-le :
System|Setting|Table|eevents|Unique Index|EveEventNumber
Spécifier l'entrée de Registre Format pour ce même champ :
Group|Default|Table|eevents|Format|EveEventNumber|%1^d
La prochaine fois qu'un enregistrement Événements est créé, et que le prochain Numéro de l'événement est inconnu :
- Saisir
+
dans le champ Numéro de l'événement. - Appuyer sur
TAB
pour passer au champ suivant.La valeur dans le champ Numéro de l'événement changera automatiquement au prochain numéro disponible :
Note: Si le format inclut deux numéros à auto-incrémenter, par exemple %1^d.%2^d, saisir + dans le champ et appuyer sur TAB pour passer au champ suivant. Le premier numéro à incrémenter est calculé. Retourner dans le champ et saisir + après le premier numéro à incrémenter et appuyer sur TAB. Le deuxième numéro à incrémenter est calculé.
%s-%
Y
-%1^d
Une institution veut que le numéro de l'événement (EveEventNumber) dans le module Événements soit unique et auto-incrémenté. Le numéro de l'événement comprend trois composants séparés par un trait d'union : un préfixe, un numérique (une année à quatre chiffres), et un nombre auto-incrémenté :
- Un texte comme préfixe : Événement (
%s
) - L'année en cours (
%Y
) - Un nombre auto-incrémenté (
%1^d
)
Le format pour cette valeur est : %s-%Y-%1^d
Dans le module Événements, la valeur s'affiche comme : Événement-2014-1
Si l'attribut Unique n'a pas été défini dans le back-end pour le champ EveEventNumber, établissez-le :
System|Setting|Table|eevents|Unique Index|EveEventNumber
:
- Spécifier l'entrée de Registre Format pour ce même champ :
Group|Default|Table|eevents|Format|EveEventNumber|%s-%Y-%1^d
Imaginons qu'il y a déjà trois enregistrements Événements, avec les Numéros de l'événement suivants :
- Événement-2014-1
- Événement-2014-2
- Événement-2014-3
Considérons ces scénarios :
Un utilisateur tape le texte suivant dans le champ Numéro de l'événement dans le module Événements : |
Lorsque l'utilisateur se déplace dans le champ suivant : |
---|---|
Événement |
La valeur dans le champ Numéro de l'événement changera automatiquement : Événement-2014-4 |
Événement-2014 |
La valeur dans le champ Numéro de l'événement changera automatiquement : Événement-2014-4 |
Événement-2014-3 |
Un message d'erreur est généré indiquant que le Numéro de l'événement doit être unique. |
Pour automatiser complètement l'affichage du Numéro de l'événement, nous pouvons :
- Spécifiez une entrée de Registre Insert Defaults (pour tous les utilisateurs, ou peut-être pour des groupes spécifiques, chacun ayant son propre préfixe). Dans ce cas, l'entrée est spécifiée pour tous les utilisateurs :
Group|Default|Table|eevents|Insert Defaults|Events|EveEventNumber=Event
- L'ensemble des valeurs par défaut appelé Événement doit être actif pour l'utilisateur / groupe (ou tous les groupes par défaut) - les utilisateurs peuvent le sélectionner dans la boîte Valeurs par défaut :
ou une entrée de Registre Insert Defaults Selected peut être spécifiée par l'Administrateur.
Maintenant, à chaque fois qu'un nouvel enregistrement est créé dans le module Événements, la valeur par défaut (
Event
) s'affiche automatiquement dans le champ Numéro de l'événement. Cela déclenchera l'entrée de Registre Format et le reste du Numéro de l'événement (l'année et le numéro auto-incrémenté) s'affichera automatiquement :
Cet exemple est une illustration plus complexe de ce qui est possible avec l'entrée de Registre Format :
PRE.%s.123.%1^d.SUF
- Le texte
PRE
- est suivi d'une valeur texte
- suivi par le nombre
123
- suivi d'un nombre à auto-incrémenter
- et enfin le texte
SUF
- tous séparés par des points
Si cette entrée est destinée à formater le Numéro d'acquisition dans le module Catalogue, une entrée de Registre appropriée pour tous les utilisateurs est :
Group|Default|Table|ecatalogue|Format|TitAccessionNo|PRE.%s.123.%1^d.SUF
Cet exemple continue le précédent.
Considérons le format suivant pour Numéro d'acquisition dans le module Catalogue :
%s-%s-%Y-%1^03d-
Collections
%s
est un nom d'un groupe- le deuxième
%s
est le nom d'un groupe %Y
est l'année en cours%1^03d
est un nombre à incrémentation de 001 à 999Collections
est un suffixe texte- tous séparés par des tirets
Une entrée de Registre appropriée est :
Group|Default|Table|ecatalogue|Format|TitAccessionNo|%s-%s-%Y-%1^03d-Collections
Si aucune entrée de Registre Insert Defaults n'est spécifiée, l'utilisateur devra saisir deux blocs de texte (séparés par un espace ou une forme de ponctuation), par exemple
Gérants Acquisitions (ou Gérants.Acquisitions ou Gérants-Acquisitions, etc.) En appuyant sur TAB, l'entrée Format déclenche le calcul de la date, l'incrémentation du nombre, l'ajout du suffixe du texte et le formatage de la chaîne entière avec des tirets.
- Cependant, pour automatiser complètement le processus, nous pourrions spécifier une entrée de Registre Insert Defaults pour chaque groupe.
Par exemple, pour les gérants du département Acquisitions, nous pourrions spécifier :
Group|Managers|Table|ecatalogue|Insert Defaults|Manager Acquisitions|TitAccessionNo=Acquisitions-Managers
- Nous pourrions également spécifier une entrée de Registre Insert Defaults Selected pour le groupe Gérants :
Group|Managers|Table|ecatalogue|Insert Defaults Selected|Manager Acquisitions
Si nous disposons déjà d'un enregistrement Catalogue avec un numéro d'acquisition allant jusqu'à :
Gérants-Acquisitions-2018-001-Collections
lorsqu'un gérant du service Acquisitions créera ensuite un enregistrement dans le module Catalogue, le champ Numéro d'acquisition : (Détails d’acquisition) sera rempli automatiquement comme suit :
Que se passe-t-il ?
L'entrée de Registre Insert Defaults pour le groupe Gérants remplit automatiquement le champ Numéro d’acquisition : (Détails d'acquisition) avec la valeur :
Gérants-Acquisition
Cela déclenche le calcul et l'affichage du reste de la valeur : l'année est fournie, suivie d'un nombre incrémenté, suivi du suffixe Collections, avec des tirets qui séparent chaque composant de la valeur.
|
Quatre composants séparés par un trait d'union. Le premier composant (le plus significatif) à incrémenter, suivi par une valeur texte, le composant suivant à incrémenter et enfin le dernier composant (le moins significatif) à incrémenter. Le dernier composant à incrémenter utilise le caractère Par conséquent, pour ce format la valeur 1-A-2 est valide; elle ne serait pas valide si le caractère @ n'avait pas été spécifié. |
|
Un format à deux colonnes. La première colonne est du texte, la seconde colonne est un nombre à incrémenter. |
|
Un nombre valide est un nombre dans lequel :
|
|
Continue l'exemple précédent. Un nombre est valide si un composant optionnel d'incrémentation est ajouté. |
|
Cet exemple comprend deux nombres à incrémenter. Pour que le Système calcule les deux nombres :
|