Les objets

1      Introduction. 1

2      Mise à jour2

2.1       Que faut-il renseigner en fonction de la donnée traitée ?. 4

2.2       Attribution de la picking par défaut5

2.3       Recherche du nom d’un objet5

3      Fermer un objet à la saisie, enlever un objet de l'écran. 6

4      Comment ajouter un champ dans un écran ?. 6

4.1       Déclarer le champ. 6

4.2       Placez le champ dans l'écran. 7

 

 

 

1         Introduction

Tous les éléments inscrits sur les écrans sont enregistrés en base de données (table Objets). Ils peuvent ainsi être traduits ou même simplement être modifiés de façon à ce que l’appellation d’un item soit plus adaptée à votre métier.

 

Les objets vous permettent de

ü      Changer l’appellation d’un menu,

ü      Modifier le nom d’une transaction

ü      Changer l’appellation d’un champ,

ü      Définir ou modifier les bulles d’aide,

ü      Déterminer les pickings par défaut,

ü      Modifier les valeurs par défaut des champs,

ü      Rendre un champ obligatoire,

ü      Installer un contrôle sur un champ

ü      Initialiser un champ en fonction dynamiquement

 

C’est donc par cette fonction que vous allez pouvoir personnaliser ou traduire les écrans de l’application.

 

En fonction du type de champ que vous traitez, les renseignements à fournir vont être différents : Un en-tête de colonne a une appellation, une bulle d’aide, mais ni de valeur par défaut, ni de picking.

 

 


2         Mise à jour

 

L’accès à la donnée doit être fait par l’objet lui même (clic droit ou Ctrl-clic droit, option propriétés)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


ü      Si vous personnalisez un champ (pour le rendre obligatoire à la saisie par exemple), n'oubliez pas de saisir votre code client dans le champ prévu à cet effet sur la première ligne de l'écran. Une mise à jour ultérieure du logiciel enlèverait alors toute personnalisation.

 

ü      Que peut-on mettre comme valeur par défaut d’un objet dans TOLTECH ?

·        Des valeurs littérales : 1, A, X, ….

·        Des mots clés liés aux dates : $TODAY et $ENDMONTH

·        Des opérations sur les dates : $TODAY -1, $ENDMONTH + 10 …

·        VRAI, TRUE, O, 1 pour activer un booléen (case à cocher ou bouton)

·        Une instruction commençant par ‘ :SELECT’ (noter les deux points)  pour appeler Oracle. Exemple :SELECT LAST_DAY(sysdate)   pour obtenir l’équivalent de $ENDMONTH. Ici, le ‘FROM DUAL’ est systématiquement ajouté si on ne le trouve pas, de même, il n’y a pas de ‘INTO’ car cela sous-entend le champ lui-même. Le code Oracle est appelé dans le contexte de l’objet, on peut donc utiliser des fonctions et des variables visibles dans ce contexte. Exemple :SELECT TO_CHAR(GET_NEW_SEQ( :strUtilisateur, :strSociete, :strEtablissement)) pour initialiser un champ avec un compteur maison par utilisateur par exemple (calculé par une hypothétique fonction Oracle get_new_seq). Dans cet exemple "TO_CHAR" permet de convertir les éléments retenus car le code ne manipule que des chaînes de caractères quel que soit le type de données du champ.

·        Une instruction commençant par ‘ :’ (deux points). Dans ce cas le code correspondant est envoyé à SqlWindows.  Exemple :VisStrChoose(SalStrScan(strNomEtablissementConnexion), ‘TOL’) >= 0, ‘PUBLIC’, ‘PRIVE’) Dans cet exemple, on pourrait initialiser un magasin en fonction de l’établissement de connexion. Ici également, tout est en format chaîne de caractères

 

 

ü      Le Type de donnée vous indique si vous êtes en cours de définition d’un data field, d’un combo box, etc. Il est utilisé dans la gestion des profils pour afficher l’icône idoine.

 

ü      La notion de champ obligatoire est définie à ce niveau. Vous pouvez par ce code rendre un champ obligatoire à la saisie.

M Même si cela comporte peu de risque sur la conformité des données, ne changez pas un champ pour le passer d’obligatoire à optionnel.

 

ü      Modifiez la bulle d’aide pour la personnaliser ; en revanche, l’index d’aide est réservé à TOLTECH (point d’entrée dans la documentation)

 

ü      Le fait de rafraîchir un champ ou une transaction entière vous permet de déterminer si, après une action de mise à jour, il faut garder le champ (l’écran) avec les données ou remettre tout à blanc[1].

 

 

ü      Tout contrôle spécifique fait sur un champ doit être signalé sur cet écran. La description du contrôle est ensuite écrite dans la table paramètre CONTROLE_SPE

Définition : Quels sont les buts d'un contrôle spécifique ?

Cas 1 : Interdire / autoriser la saisie de certaines valeurs dans un champ

Cas 2 : Initialiser un champ de l'écran en fonction de la valeur d'un autre

 

Mise en œuvre : Commencez par cocher la case Activépour ouvrir le champ à la saisie. Saisissez ensuite votre contrôle.

 

Cas 1

Exemple 1 : une entrée article doit toujours être faite sur un stock dont l’état est ‘CT’

La table paramètres CONTROLES SPECIFIQUES vous permet pour toutes les transactions de répertorier tous les contrôles

Le principe est le suivant : si la requête installée ramène le chiffre 1, le contrôle est bon ; dans tous les autres cas ; le message d’erreur dont le numéro est précisé est affiché.

 

Exemple 2 : On ne peut commander que des articles des familles 10, 20 ou 30

select 1 from ARTICLES where article = :hWndForm.LIGNESCDES_CLI.colArticle and famille  in ('10','20','30')

 

 

Cas 2

Exemple 3 : Initialiser un champ à partir des données de l'article correspondant

SELECT  magasin_principal, emp_principal from articles INTO :dfMagasinDest, :dfEmplacementDest  where article = :dfArticle

 

Même principe mais dans un tableau

SELECT magasin_principal, emp_principal from articles INTO :tblMoves.colMagDestin, :tblMoves.colEmpDestin  where article = :tblMoves.colArticle

 

Exemple 4 : Initialiser un champ à partir de plusieurs autres

Set hWndForm.ENTART.dfLot = hWndForm.ENTART.dfFour || hWndForm.ENTART.dfPV || hWndForm.ENTART.dfLotFournisseur

ou

Set hWndForm.ENTART.dfLot = SalStrLeftX(hWndForm.ENTART.dfFour, 5) || hWndForm.ENTART.dfLotFournisseur

 

 

 

 

Relancez la confidentialité pour valider vos modifications

 

 

 

 

 

2.1        Que faut-il renseigner en fonction de la donnée traitée ?

 

 

Type de champ

Accès

Vous pouvez déterminer

Objet

Transaction

Libellé

Bulle d’aide

Valeur par défaut

Picking par défaut

Data field

‘df…’

Nom de la transaction (optionnel)

üLe libellé correspond à l’appellation du champ.

üLa bulle d’aide est active.

üLa valeur par défaut peut être déterminée. Attention aux relations avec des tables paramètres et aux constantes.

üLa picking par défaut peut être déterminée.

Menu ou transaction

‘Titre’

Code de la transaction

ü      Nom de la transaction.

ü      Le champ ‘bulle d’aide’ doit contenir le nom usuel de la transaction  qui est utilisé par exemple dans la fenêtre ‘Autre transaction’ comme clé d’accès.

En-tête de colonne de la transaction TABLE SYSTEME

 

Nom de l’item de la base

ü      Le libellé donne le titre de la colonne.

 

Bouton (poussoir ou liste de valeurs)

 

Nom du bouton

ü      Le libellé donne le titre du bouton pour les boutons poussoirs.

ü      La bulle d’aide est disponible sur les deux types.

En-tête de colonne

‘Col…’

Nom de la transaction (optionnel)

ü      Le libellé indique le titre de la colonne.

ü      La bulle d’aide est disponible (par un double clic).

 

 

 

 

 

2.2        Attribution de la picking par défaut

 

Sur chaque champ du type « datafield « Vous pouvez déterminer une picking par défaut

Sur l’écran de mise à jour des pickings (voir Pickings.doc - Maj), vous avez pu définir une liste de pickings possibles ; vous pouvez maintenant l’associer à un champ.

 

 

 

 

2.3        Recherche du nom d’un objet

Comment connaître le nom de l’objet que vous voulez modifier ?

 

Ø      Sur le champ en question, faites un clic droit. Le nom de l’objet est toujours affiché en dernier dans la liste des propositions.

Ø      Sur un tableau, ou sur un champ date vous allez avoir le nom de la colonne par la fonction Ctrl + clic droit

 

J La proposition ‘Propriétés’ vous permet de chaîner directement en mise à jour de l’objet considéré. Elle est beaucoup plus rapide lorsque vous faites la personnalisation de vos écrans : l’objet est ramené automatiquement, le code de la transaction est automatiquement ajouté (ce qui fait qu’un objet éventuellement générique peut devenir spécifique) ainsi que votre nom de client.

 

 

Faites un clic gauche sur le nom pour le copier. Vous aurez ainsi la possibilité de plus facilement le retrouver par la fonction Coller soit pour la transaction ci-dessus, soit pour gérer la confidentialité

 

 

 

 

 

3         Fermer un objet à la saisie, enlever un objet de l'écran

 

Ces manipulations se font par le biais des profils.

 

Plus de détail sur le fonctionnement

 

 

 

 

4         Comment ajouter un champ dans un écran ?

 

Note : cette fonction est disponible uniquement sur les écrans ayant une clé principale comme article, client, moyen, etc.

Elle n'est pas disponible par exemple sur des boites de dialogue (en-tête de commande par exemple).

 

 

4.1        Déclarer le champ

 

Dans le menu Gestion choisissez l'option Ajouter un champ spécifique

 

 

·        Le nom de l'objet doit de préférence conserver le préfixe indique; cela permettra de ne jamais rentrer en conflit avec un futur objet standard

 

Lorsque vous aurez défini les caractéristiques de votre champ, la validation va permettre de l'insérer sur l'écran

 

Pour voir votre champ apparaître, sortez de l'écran puis demandez-le à nouveau. Le champ est automatiquement inséré, mais pas obligatoirement à une place qui vous convient.

 

 

 

4.2        Placez le champ dans l'écran

 

·        Déplacer le champ

Validez la touche Ctrl de votre clavier (maintenez-la). Faite glisser le champ à l'endroit désiré.

·        Déplacer le libellé du champ

Maintenez la touche Shift de votre clavier, cliquez dans le champ (qui est maintenant à la bonne place), le curseur de la souris se place alors automatiquement sur le libellé du champ. Faites glisser le libellé à côté du champ.

 

 

 

Maintenant, vous pouvez configurer votre champ comme vous le désirez, c'est un objet comme un autre. Par un clic droit, ajustez ses propriétés (initialisation, contrôles, picking, etc.)

 

Note : Ce champ a été automatiquement ajouté dans la table correspondant à la clé principale de votre transaction (ici table MOYENS)

 

 

 

 



[1] Pour une transaction, le fait de rafraîchir l’écran à le même effet que la validation du bouton ‘Page blanche’ de la barre d’outils.