DIAPASON 05

Comment utiliser une LPO ?


Voir Définir les Listes Partagées Objet LPO

Pour pouvoir utiliser une LPO dans une requête, il est nécessaire de la déclarer et de la définir sur la requête.

Cette déclaration se fait à partir de l’action « Listes Partagées Objet » du menu contextuel (ou de la barre de commandes) de l’application de définition des requêtes.

image-20250310-103909.png

Cette action lance une application dans laquelle on définit les LPO qui seront utilisées dans la requête :

image-20250310-103950.png
  • LPO: Référence de la LPO.

  • Modèle: Référence du modèle de la LPO. On définit ainsi la structure ainsi que les index de la LPO.

  • Désignation: Désignation de la LPO.

  • Type Variable: Type de la variable qui contient l’identifiant de connexion de la LPO. Sélection parmi les types de variables SCR, VAC, VBP, VCR, et XML.

  • Ref. Variable: Référence de la variable qui contient l’identifiant de connexion de la LPO. Sélection parmi les variables du type choisi sur la zone précédente (variables caractère).

  • Connexion: Mode de connexion automatique de la LPO lors du démarrage de la requête. Choix parmi :

    • [1] Connexion effectuée par variable donnée : La variable donnée doit contenir l’instance valide d’une LPO ; dans ce cas elle est connectée automatiquement.

    • [2] Connexion effectuée par variable donnée (créée si ne peut être connectée) : Identique au cas ci-dessus, mais si la variable est vide ou ne contient pas une instance valide de LPO celle-ci est créée.

    • [3] Connexion créée systématiquement (mémorisée dans variable donnée) : Création d’une instance de LPO à chaque exécution de la requête.

    • [0] Connexion par requête : Il faut utiliser les instructions DIALOG dédiées ci-dessous (LPO-METHODE) pour connecter la LPO.

Instructions DIALOG pour connecter la LPO

Exemple : code DIALOG nécessaire pour connecter une LPO :

VLO.Contexte = VBP.CdeLigPri

VLO.RetFct = LPO-CONTEXTE( ACTION= ACCES-CONTEXTE , LPO= CdeLigPri , CONTEXTE= VLO.Contexte )

SI VLO.RetFct EXISTE ET <> ""

LC-Erreur = CLO."Impossible d'exécuter la requête car la LPO n'est pas disponible"

FIN_BLOC

  • Comportement : Paramètre le comportement de DIAPASON si à l’issue de la phase précédente la LPO n’est pas connectée. Choix parmi :

    • [0] Exécuter la requête sans LPO : Exécute la requête même si la LPO n’est pas connectée. Risqué car si une instruction accède à la LPO une erreur non désirée se déclenchera.

    • [1] Ne pas exécuter la requête (pas d’erreur) : La requête ne s’exécute pas si la LPO n’est pas connectée mais l’utilisateur ne sera pas averti.

    • [2] Ne pas exécuter la requête (erreur) : Identique au cas ci-dessus, mais un message d’erreur apparaît à l’écran.

Les paramètres recommandés pour une requête se répétant (RCT de contrôle local de tableur dynamique par exemple) sont « 2 » pour le mode de connexion (création de la LPO à la première exécution, puis connexion ensuite) et « 2 » pour le comportement.