Modèle d'objet SDOC

 

Le modèle d'objet SDOC dérive du modèle SLISTE qui lui-même hérite du modèle SAISIE. Il hérite donc des fonctionnalités suivantes :

- gestion d'une table avec des options sophistiquées de recherche, consultation, modification, création et suppression d'enregistrements,

- présentation des données sous forme de liste.

- possibilité de numérotation des enregistrements

Les fonctionnalités spécifiques au modèle d'objet SDOC sont les suivantes :

- duplication en mémoire des enregistrements de la table d'origine,

- gestion d'un menu spécial permettant d'abandonner ou de valider l'ensemble des actions réalisées

Exemple de saisie en mémoire

Liste des déclarations standards et spécialisées

Nom                                               Désignation

AIDE                                      Fichier d'aides
ECRAN                                 Ecran utilisé
BASE                                    Base de données à utiliser
TABLE                                   Table à lire
LIBELLES                             Table de libellés
 
REP_OBJ                            Répertoire de recherche des objets
SOCIETE                              Code de la société
VARIABLES                         Liste des variables utilisées
PARAMETRES                    Liste des paramètres formels
SRC_MODELE                    Fichier source contenant des modèles
MODES                                 Modes opératoires autorisés

Liste des variables héritées de SLISTE

Nom                                         Désignation

CodeListe                             Code de l'élément liste dans l'écran

CodeGroupe                         Code des éléments de saisie des informations

NomMenuCtxt                       Nom du menu contextuel à ajouter aux éléments de code CodeGroupe.

CodeNumero                        Code du champ servant à la numérotation des
                                               
enregistrements

PrefixeNumero                     Préfixe de numérotation des enregistrements

CaractèreMini                       Caractère minimal utilisé pour la numérotation

CaractèreMaxi                      Caractère maximal utilisé pour la numérotation

Liste des variables héritées

Nom                                         Désignation

ModeMemoireAuto              Option de désactivation des automatismes

LimiteMax                             Nombre maximal d'enregistrements

SaisieModif                          Indique si au moins une modification à été
                                               
effectuée sur un des enregistrements de la
                                               
sélection en cours.

Liste des méthodes standards

Nom                                         Evénement correspondant

INIT                                         Initialisation

DEBUT_TRI                          Début du tri
SELECTION_TRI                 Acceptation d'un enregistrement pendant le tri

DEBUT                                  Début de l'objet

DEBUT_ACTIVATION         Activation de l'objet (prise du « focus »)
FIN_ACTIVATION                Inactivation de l'objet (perte du « focus »)

FIN                                         Fin de l'objet
SORTIE                                 Sortie de l'objet

APPEL_AIDE                       Appel d'une aide

DEBUT_VISUALISATION   Début de visualisation

DEBUT_CREATION            Début de création
FIN_CREATION                   Fin de création

DEBUT_MODIFICATION    Début de modification
FIN_MODIFICATION           Fin de modification

VALIDATION                        Validation de création ou modification
ABANDON                            Abandon de l'opération en cours

SUPPRESSION                   Frappe commande de suppression

MONTE                                 Déplacement d'un enregistrement vers le haut
DESCEND                           Déplacement d'un enregistrement vers le bas

REDEMARRE                      Réinitialisation de l'objet avec un nouveau préfixe de numérotation.

CHOIX                                   Choix d'une ligne dans le liste (Entrée ou double clic souris)

SELECTION                         Remplissage de la liste (pour chaque enregistrement)

 

Liste des méthodes spécialisées

Nom                                         Désignation

EXTRACTION_DONNEES      Duplication en mémoire d'un enregistrementde la table d'origine

SUPPRESSION_DONNEES   Suppression d'un enregistrement de la table d'origine (au moment de la sauvegarde des données en mémoire)

VALIDATION_DONNEES        Enregistrement définitif d'un enregistrement de la table mémoire dans la table d'origine
VALID_DOC                              Code de l'action du menu déroulant provoquant la validation définitive de la saisie

ABAND_DOC                            Code de l'action du menu déroulant provoquant l'abandon définitif de la saisie

AJOUTER_LIGNE                     Méthode permettant l'ajout d'enregistrements non saisis par l'utilisateur

 

Fonctionnement du modèle

Le modèle SDOC dérive du modèle SLISTE. La seule différence perceptible par l'utilisateur est la possibilité d'abandonner ou de valider l'ensemble des modifications effectuées sur les enregistrements de la sélection en cours.

Côté programmation, cette possibilité d'abandon global ou de validation globale est gérée de façon semi-automatique par le modèle, qui effectue une « extraction des données »de la table d'origine à la création de l'objet et une « sauvegarde des données » ou un « abandon des données » lorsque l'utilisateur le décide.

Les opérations d'extraction, de sauvegarde et d'abandon sont prise en charge de façon automatique par le schéma prédéfini du modèle ; néanmoins le programmeur dispose de nombreux événements lui permettant de compléter où de remplacer les automatismes fournis par défaut.

Un certain nombre d'informations complémentaires doivent être fournies au modèle d'objet SDOC pour fonctionner correctement. Ces informations peuvent être fournies soit par programme par l'intermédiaire de variables héritées (*), soit directement dans l'écran sous la forme d'extensions.

 

Rappel : les variables héritées sont des variables qui ont été définies au niveau du modèle. Dans certains cas le programme à besoin de les manipuler ; il doit pour cela les redéclarer de la façon suivante :

 

  

Variables :
   
Entier Herite ModeMemoireAuto
   
Entier Herite LimiteMax=10

Les variables héritées de SLISTE 

Le modèle SDOC dérivant de SLISTE, il dispose des mêmes possibilités en matière de numérotation de ligne et de gestion de la saisie en liste. Les variables héritées issues du modèle SLISTE sont donc opérationnelles. Pour de plus amples informations, consultez la documentation du modèle SLISTE (et du modèle SAISIE).

Les variables héritées du modèle 

ModeMemoireAuto

La variable héritée ModeMemoireAuto conditionne certains automatismes d'extraction et validation des données saisies. ModeMemoireAuto est à 1 par défaut. Consultez le paragraphe « Programmation avancée » pour plus d'informations sur ces automatismes.

LimiteMax

La variable héritée LimiteMax permet de limiter le nombre d'enregistrements saisis pour la sélection en cours. Par défaut le nombre d'enregistrements est illimité.

SaisieModif

SaisieModif vaut 1 si au moins une modification a eu lieu sur la sélection courante, c'est-à-dire si les données en mémoire sont susceptibles d'être sauvegardées sur le disque. Cette variable conditionne notamment les demandes de confirmation de sortie de l'objet. SaisieModif vaut 0 par défaut.

 

Les méthodes spécialisées du modèle

EXTRACTION_DONNEES

Méthode appelée pour chaque fiche de la table d'origine lors de la mise en mémoire des informations après affectation des champs de la table mémoire et avant écriture dans la table mémoire. Si ModeMemoireAuto vaut 1 le comportement par défaut de cette méthode est suffisant, dans le cas contraire, le programmeur doit impérativement compléter le source en indiquant dans cette méthode les affectations à effectuer au moment de l'extraction des données.

SUPPRESSION_DONNEES

Méthode appelée au moment de la sauvegarde générale de la saisie et pendant la suppression des anciens enregistrements de la table d'origine. L'utilisation de l'instruction Rejeter permet d'empêcher la suppression de l'enregistrement.

VALIDATION_DONNEES

Méthode appelée au moment de la sauvegarde générale de la saisie, pour chaque fiche de la table mémoire, après affectation des champs de la table d'origine et avant écriture effective de l'enregistrement. L'utilisation de l'instruction Rejeter permet d'empêcher l'écriture de l'enregistrement. Si ModeMemoireAuto vaut 1 le comportement par défaut de cette méthode est suffisant, dans le cas contraire, le programmeur doit impérativement compléter le source en indiquant dans cette méthode les affectations à effectuer au moment de la validation des données.

AJOUTER_LIGNE

Cette méthode peut être appelée pour ajouter des lignes à la table en cours de saisie. Elle prend en charge l'incrémentation du numéro de ligne.

Ecrire directement dans la table un nouvel enregistrement (Instruction Ecrire) est interdit ici, car cela ne tiendrait pas compte des problèmes de numérotations qui sont normalement traités par le modèle. Pour de plus amples informations concernant la numérotation des enregistrements, consultez la documentation du modèle SLISTE.

 

VALID_DOC

Méthode de validation complète de la saisie. Elle déclenche l'opération de sauvegarde définitive de la saisie et provoque la sortie de l'objet. Le programmeur peut ajouter directement dans son écran un bouton ou un dessin de code VALID_DOC pour améliorer l'ergonomie. En standard cette fonctionnalité est disponible dans le menu déroulant.

 

ABAND_DOC

Méthode d'abandon complet de la saisie. Elle détruit les données en mémoire et provoque la sortie de l'objet. Le programmeur peut ajouter directement dans son écran un bouton ou un dessin de code ABAND_DOC pour améliorer l'ergonomie. En standard, cette fonctionnalité est disponible dans le menu déroulant.

 

Programmation avancée d'un objet SDOC