SEL_LISTE

Description

Cette action est appelée en tout début du modèle, avant l'affichage de la fenêtre de sélection.

Modèle

Sélection sur liste

Utilisation

Elle sert principalement à construire la fenêtre de sélection. Depuis la version V5, on a la possibilité de construire de 1 à 5 colonnes. Dans ce cas, il faut re-déclarer la variable TEXTE pour la dimensionner.

On alimente les variables suivantes :

   NBTEX : Integer
C'est le nombre de lignes ( donc nombre de valeurs possibles pour le champ saisissable ) à afficher dans la fenêtre.

   TEX(NBTEX) : Char, longueur 50, dimensionnée à 200
Ce sont toutes les valeurs possibles pour le champ saisissable.

   TEXTE(NBTEX) : Char, longueur 50, dimensionnée à 200
C'est le texte associé à chaque valeur. En fait, seul ces textes seront affichés dans cette liste de sélection.

   TIT : Char, longueur 50, dimensionnée à 5
C'est le titre de la fenêtre pour l'indice 0, et le titre des colonnes pour les indices de 1 à 5.

Lorsqu'il n'y pas d'élément à afficher dans cette fenêtre, c'est à dire que l'on a positionné NBTEX = 0, on peut afficher un message d'erreur par GERR=1 et en mettant un texte dans GMESSAGE.

Lorsqu'il n'y a qu'un élément à afficher dans cette fenêtre, c'est à dire que l'on a positionné NBTEX = 1, le modèle n'ouvre pas la fenêtre de sélection, mais modifie automatiquement la valeur du champ saisissable par cet élément.

Pour agrandir le dimensionnement qui est par défaut à 200, il faut re-déclarer les variables TEX & TEXTE en local dans cette action.

Exemple

Fenêtre de sélection comportant  3 colonnes.

$SEL_LISTE
Local File BPCUSTOMER [BPC]
Local File BPARTNER [BPR]
For [BPC]
  Read [BPR]BPR0 = [F:BPC]BPCNUM
  Local Char TEXTE(GLONDES)(1..200,1..3)
  NBTEX = 20 : # Nombre de lignes à afficher
  For I=1 To NBTEX
    TEX(I) = [F:BPC]BPCNUM
    TEXTE(I,1) = [F:BPC]BPCNUM
    TEXTE(I,2) = mess([F:BPC]BPCTYP,401,1)
    TEXTE(I,3) = [F:BPR]CRY
  Next I
  TIT(0) = "Liste" : # Titre de la boîte de sélection
  TIT(1) = "Code Client" : TIT(2) = "Type" : TIT(3) = "Pays" : # Titre des colonnes
Next
Return