Transactions à écran unique

Fonction De nombreuses transactions du R/3 sont des transactions à écrans multiples, c’est à dire qu’elles sont composées de plusieurs écrans. Une transaction typique débute en général par un écran relativement vide où l’utilisateur a à saisir quelques données, suivront un ou plusieurs écrans plus complexes décrivant la transaction en cours.

Très souvent, l’utilisateur n’a à saisir que quelques champs sur chacun des écrans. Cela signifie que l’utilisateur doit:

  • identifier les champs relevants dans chacun des écrans
  • attendre entre l’affichage des écrans successifs 
  • ajuster son rythme de travail à des séquences fixes d’affichage d’écrans et aux temps de réponse variables

Avec GuiXT+InputAssistant vous avez la possibilité de transformer ces transactions à écrans multiples en des transactions à écran unique. L’utilisateur reste sur un seul écran sur lequel il peut saisir directement toutes les informations nécessaires.

En interne, la transaction d’origine est exécutée avec tous ses écrans. La logique d’application et les vérification d’intégrité des données saisies se font exactement de la manière que sans InputScript.

Comment procéder
  • Créez, à l’aide de GuiXT, des champs de saisie supplémentaires sur le premier écran de la transaction ou de l’écran menu. Définissez un nouveau bouton poussoir qui déclenchera l’exécution rapide de la transaction à écran unique.
  • Définissez les liens entre les nouveaux champs et les écrans suivants dans un scripte de saisie “InputScript”. L’InputAssistant exécutera tous les écrans de manière interne (cachée) et remplit les champs de saisie avec les valeurs. Si un message d’erreur est généré sur l’un des écrans cachés, l’utilisateur recevra ce message sur le premier écran où il pourra apporter les corrections nécessaires.
 Exemples
  • FB01 Comptabiliser pièce 
  • MM01 Créer article général
  • Afficher un article MM03
Généralités Les transactions à écran unique peuvent être définies soit sur le premier écran d’une transaction, soit sur un des écrans menus. Il est également possible de passer à des transactions différentes (ou une série de transactions) en utilisant un InputScript. Une troisième possibilité est d’exécuter uniquement certains écrans de manière interne et de laisser l’utilisateur la transaction manuellement.
D’une certaine manière, vous avez la possibilité d’ajouter vos propres vérifications d’intégrité des données et d’assigner des valeurs dépendantes des valeurs saisies par l’utilisateur.
Champs de saisie Les champs de saisie, les boutons de sélection et les boutons radio sont supportés:

InputField (ligne1,colonne1) “Texte” (ligne2,colonne2) Size=…” Name=…” Default=…” 

Checkbox (ligne,colonne) “Texte” Name=…” Default=…” 

Radiobutton (ligne,colonne) “Texte” Name=groupe.nom” Default=…” 

Exemples: 

InputField (10,40) “Texte Material”  (10,48) Size=3″ Name=Mt”  
Checkbox   (11,40) “Données de base uniquement”  Name=DBseuls”  Default=X”  
Radiobutton (14,20) “USD”  Name=Dévise.usd”  Default=X”  
Radiobutton (15,20) “SFR”  Name=Dévise.sfr”  
Radiobutton (16,20) “DEM”  Name=Dévise.dem”  
 

  • Le nom interne du champ de saisie peut être différent du nom de champ affiché, utilisez le paramètre Name=iname…”.
  • “X” et ” “ sont les seules valeurs possibles pour les boutons de sélection et les boutons radio.
  • Le nom d’un bouton radio est composé d’un nom de groupe, par exemple: “Dévise” et d’un nom de champ, par exemple: “USD“, séparés par “.“. Le nom du groupe définit quels boutons radio appartiennent au même groupe logique, c’est à dire que lorsqu’un bouton est activé les autres appartenant au même groupe sont automatiquement désactivés.
  • La touche d’aide F1 n’est pas supportée pour les nouveaux champs de saisie. Vous pouvez définir une aide rapide (quickinfo) d’une ligne pour chaque désignation de champ. Vous pouvez aussi utiliser la commande image pour afficher un symbole d’aide. Vous pouvez utiliser l’option “start=” pour faire afficher un fichier doc ou html lorsque l’utilisateur appuie sur le symbole.
  • L’aide des valeurs F4 n’est pas supportée pour les nouveaux champs. Par contre, l’InputAssistant offre un historique des valeurs saisies et également la possibilité de créer une aide locale des valeurs de saisie qui contient les valeurs d’aide du R/3. Référez-vous à la documentation de l’InputAssistant.
  • Pour les systèmes R/3 Rel. 3.0 et 3.1 il est nécessaire de spécifier la transaction actuelle dans le scripte GuiXT avec une commande Transaction. Autrement, les messages d’erreurs ne retournera pas au premier écran de la transaction mais au menu précédent. Il n’est pas nécessaire d’utiliser la commande Transaction pour des systèmes à partir de Rel. 4.0.

Exemple: Transaction FB01

Boutons poussoir Pushbutton (ligne,colonne) “Texte” “fcode Process=…” 

Process=…”  se réfère au fichier InputScript file. Vous pouvez omettre le paramètre fcode si uniquement l’action sur la touche Retour est nécessaire pour passer à la transaction suivante.

Exemples: 

Pushbutton (10,40) “Créer article”      Process=CreerMatSimple.txt” 
Pushbutton (toolbar) “Créer article” “
/nmm01 Process=CreerMatSimple.txt” 

Avec la commande using vous pouvez fixer les paramètres de l’InputScript: 

Exemple:

Pushbutton (toolbar) “Créer article” Process=CreerMatSimple.txt” 
    
using BasicData   = [DBseuls] 
    
using currUSD     = [Dévise.USD] 
    
using currSFR     = [Dévise.SFR] 

Transactions à écran unique