Création d'un buffer serveur

Vous pouvez définir, au niveau du Dialogue Serveur ou d'un Composant Applicatif, un buffer serveur.

Pourquoi et quand exécuter cette tâche

Il est parfois nécessaire et suffisant de pouvoir partager des données exclusivement entre les Composants Applicatifs, qu'ils soient appelés par le même Gestionnaire de Services ou appelés entre eux par le mécanisme d'appel de Composant Applicatif de second niveau.

Avec le buffer serveur, vous pouvez définir une zone de mémoire partagée entre les Composants Applicatifs qui participent à l'exécution d'une requête.

Voici les règles d'utilisation du buffer serveur :
  • Si un Composant Applicatif est appelé par un Composant Applicatif utilisant un buffer serveur; il doit lui aussi utiliser le même buffer serveur.
  • Un client TUI appelant un Composant Applicatif utilisant un buffer serveur doit obligatoirement passer par l'intermédiaire d'un moniteur serveur.

Procédure

  1. Ouvrez l'onglet Lignes -G de votre Dialogue Serveur ou Composant Applicatif.
  2. Ouvrez la section Lignes -GO qui se trouve dans cet onglet.
  3. Sur une ligne de type O, indiquez l'option SERVBUFF=xx (où xx identifie la Structure de Données qui représente le buffer serveur).
  4. Au niveau de chaque Composant Applicatif, vous pouvez sélectionner certains Segments de cette Structure de Données en indiquant, sur une ligne de type O, l'option SEGMBUFF=s1s2s3s4… (où s1, s2, s3 … représentent les deux derniers caractères du code Segment). Si vous n'indiquez pas cette option, tous les Segments de la Structure de Données sont sélectionnés.

Résultats

Informations techniques sur la génération du buffer serveur :
  • Les Segments de la Structure de Données sont générés en redéfinition les uns des autres. Si un Segment 00 existe, il est considéré comme partie commune de tous les autres.
  • Les zones groupes, occurs, redefines sont prises en compte.
  • L'option FORMAT=EXTENDED qui provoque la génération des zones en usage DISPLAY étendu est ignorée. Les zones binaires et packées sont donc générées avec les usages correspondant et le signe dans les zones numériques est virtuel.
  • Un filler d'alignement est généré pour tous les Segments sélectionnés dont la longueur est inférieure à celle du Segment le plus long de la Structure de Données (même si ce Segment n'est pas sélectionné, ceci afin d'avoir une longueur constante pour tous les Composants Applicatifs quels que soient les Segments sélectionnés sur chacun d'eux).

Vos commentaires