JCL – IEBIMAGE

Ces exemples illustrent quelques-unes des utilisations d’IEBIMAGE.
Vous pouvez utiliser le tableau 1 comme guide de référence rapide pour les exemples qui suivent.
Généralement, les exemples pour IBM 3800 modèle 3 peuvent être remplacés par des exemples IBM 3800 modèle 1 en supprimant l’instruction OPTION DEVICE=3800M3 et en spécifiant le paramètre OVERRUN égal à un nombre autre que 10.

Tableau 1. Répertoire d’exemple IEBIMAGE

Module CrééImprimanteCommentairesExemple
FCB3800 Modèle 1Forme 11 pouces Exemple 1 : Création d’un nouveau 3800 Forms Control Buffer Module
FCB3800 Modèle 1Forme 5-1/2 pouces, remplace le membre SYS1.IMAGELIB existant. Plusieurs codes de canal spécifiés.Exemple 2 : Remplacement d’un 3800 Forms Control Buffer Module
FCB3800 Modèle 1Forme 3-1/2 pouces, remplace le membre SYS1.IMAGELIB existant. Espacement vertical varié.Exemple 3 : Remplacement d’un 3800 Forms Control Buffer Module
FCB3800 Modèle 1Forme de 7 pouces, espacement vertical varié.Exemple 4 : Création d’un nouveau 3800 Forms Control Buffer Module
FCB3800 Modèle 1Format ISO 12 pouces. Remplace le module fourni par IBM.Exemple 5 : Remplacement du Forms Control Buffer Module STD3
FCB3800 Modèle 3Forme ISO de 7-1/2 pouces. Espacement vertical variable.Exemple 6 : Création d’un nouveau 3800 Forms Control Buffer Module pour des formats de ISO Paper supplémentaires
FCB4248Forme 11 pouces, basée sur le module existant. Nouvelle vitesse d’impression et position de copie spécifiées.Exemple 7 : Création d’un 4248 Forms Control Buffer Module
COPYMOD3800 Modèle 14 segments de modification.Exemple 8 : Construire un nouveau module de modification de copie
COPYMOD3800 Modèle 3Module existant utilisé comme base pour le nouveau module. OVERRUN spécifié.Exemple 9 : Construire un nouveau module de modification de copie à partir d’une copie existante
TABLE3800 Modèle 3Module fourni par IBM modifié pour inclure un autre caractère.Exemple 10 : Ajouter un nouveau caractère à un module de table d’arrangement des caractères
TABLE3800 Modèle 3Module existant utilisé comme base pour le nouveau module. La hauteur a changé.Exemple 11 : Construire un nouveau module de table d’arrangement des caractères à partir d’une copie existante
TABLE3800 Modèle 1Module existant utilisé comme base pour le nouveau module. Inclut les caractères conçus par l’utilisateur du module GRAPHIC.Exemple 12 : Créer des caractères graphiques dans un module de table de disposition des caractères
TABLE3800 Modèle 3Module existant utilisé comme base pour le nouveau module. Le nouveau module supprime toutes les références GRAPHIC et réinitialise les entrées de la table de traduction.Exemple 13 : Supprimer les références graphiques d’un module Table d’arrangement des caractères
GRAPHIC3800 Modèle 1Module entièrement fourni par IBM imprimé.Exemple 14 : Répertorier le module de modification des caractères graphiques à usage national World Trade
GRAPHIC3800 Modèle 3Segments copiés à partir du module fourni par IBM.Exemple 15 : Construire un module de modification de caractères graphiques à partir du module de modification de caractères World Trade GRAFMOD
GRAPHIC3800 Modèle 3Le nouveau module contient un caractères conçu par l’utilisateur. Disposition des caractères existante (TABLE) modifiée pour inclure un nouveau caractère.Exemple 16 : Construire un nouveau module de modification de caractères graphiques et modifier une table de disposition des caractères pour l’utiliser
GRAPHIC3800 Modèle 1Segments copiés à partir d’un module existant. Création d’un caractères conçu par l’utilisateur.Exemple 17 : Création d’un module de modification de caractères graphiques à partir de plusieurs sources
GRAPHIC3800 Modèle 3Le nouveau module GRAPHIC contient un caractère conçu par l’utilisateur. Disposition des caractères existante (TABLE) modifiée pour inclure un nouveau caractère.
COPYMOD créé pour imprimer un nouveau caractère.
Résultat testé.
Exemple 18 : Définir et utiliser un caractère dans un module de modification de caractères graphiques
CHARSET3800 Modèle 1Jeu de caractères complet de la bibliothèque avec motifs de numérisation imprimés.Exemple 19 : Module Liste d’un jeu de caractères de bibliothèque
CHARSET3800 Modèle 3Segments copiés à partir du module GRAPHIC fourni par IBM.Exemple 20 : Création d’un module de jeu de caractères de bibliothèque
CHARSET3800 Modèle 3Le nouveau module contient un caractères conçu par l’utilisateur.
Disposition des caractères existante (TABLE) modifiée pour inclure un nouveau caractère.
Exemple 21 : Création d’un module de jeu de caractères de bibliothèque et modification d’une table de disposition des caractères pour l’utiliser
CHARSET3800 Modèle 1Segments copiés à partir d’un module existant. Création d’un caractères conçu par l’utilisateur.Exemple 22 : création d’un module de jeu de caractères de bibliothèque à partir de plusieurs sources

Exemple 1 : Création d’un nouveau 3800 Forms Control Buffer Module

3800 Modèle 1

Dans cet exemple, l’espacement vertical et les codes de canal pour un format de 11 pouces sont spécifiés, et le module est ajouté au jeu de données SYS1.IMAGELIB en tant que nouveau membre.

 //FCBMOD1  JOB   ...
 //STEP1    EXEC  PGM=IEBIMAGE
 //SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
 //SYSPRINT DD  SYSOUT=A
 //SYSIN    DD  *
     FCB  CH1=1,CH12=80,LPI=8
     NAME IJ
 /*

Les instructions de contrôle sont décrites comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • CH1=1 spécifie le code du canal 1 pour la ligne 1, permettant le positionnement à la ligne 1.
  • CH12=80 spécifie le code du canal 12 pour la ligne 80, permettant le positionnement à la ligne 80 et une indication d’exception d’unité à la ligne 80 (la dernière ligne imprimable sur la page.)
  • LPI=8 spécifie que le format entier doit être à un espacement vertical de 8 lignes par pouce.
    Étant donné que le paramètre SIZE est omis, la longueur du format par défaut est de 11 pouces.
    Comme il y a 10 pouces d’espace imprimable dans un format de 11 pouces, 80 lignes sont imprimées à 8 lignes par pouce.
  • Le nom du nouveau module FCB est IJ ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 2 : Remplacement d’un 3800 Forms Control Buffer Module

3800 Modèle 1

Dans cet exemple, les codes de taille et de canal pour un format 5-1/2 pouces sont spécifiés et le module est ajouté au jeu de données SYS1.IMAGELIB en remplacement d’un membre existant.
Le nouveau module est ajouté à la fin de l’ensemble de données ; le nom dans le répertoire du jeu de données est mis à jour afin qu’il pointe vers le nouveau module ; l’ancien module n’est plus accessible via le répertoire du jeu de données.

//FCBMOD2  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    FCB  CH1=(1,7,13,20),CH12=26,SIZE=55
    NAME S55(R)
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • CH1=(1,7,13,20) spécifie le code du canal 1 pour la ligne imprimable 1, la ligne 7, la ligne 13 et la ligne 20.
  • CH12=26 spécifie le code du canal 12 pour la ligne imprimable 26.
  • SIZE=55 spécifie la longueur du format à 55 dixièmes de pouce ou 5-1/2 pouces.
  • Étant donné que le paramètre LPI est omis, l’espacement vertical par défaut est de 6 lignes par pouce.
    Parce qu’il y a 4-1/2 pouces de lignes imprimables dans un format de 5-1/2 pouces, il y a 27 lignes d’impression sur ce format.
  • Le nom du module FCB est S55 et il remplace un module FCB existant du même nom.
    Le nouveau module FCB est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 3 : Remplacement d’un 3800 Forms Control Buffer Module

3800 Modèle 1

Dans cet exemple, l’espacement vertical, les codes de canal et la taille d’un format sont spécifiés, et le module est ajouté au jeu de données SYS1.IMAGELIB en remplacement d’un membre existant.
Le nouveau module est ajouté à la fin de l’ensemble de données ; le nom dans le répertoire du jeu de données est mis à jour afin qu’il pointe vers le nouveau module ; l’ancien module n’est plus accessible via le répertoire du jeu de données.

//FCBMOD3  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
   FCB  CH1=1,CH2=4,CH5=11,SIZE=35,LPI=((6,2),(8,3),(6,4),(8,9))
   NAME HL(R)
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • CH1=1 spécifie le code du canal 1 pour la ligne imprimable 1.
  • CH2=4 spécifie le code du canal 2 pour la ligne 4.
  • CH5=11 spécifie le code du canal 5 pour la ligne 11.
  • LPI=((6,2),(8,3),(6,4),(8,9)) spécifie l’espacement vertical pour les 18 premières lignes imprimables sous la forme :
    (6,2) spécifie les lignes 1 à 2 sont à un espacement vertical de 6 lignes par pouce et occupent 2/6 de pouce.
    (8,3) spécifie que les lignes 3 à 5 sont à un espacement vertical de 8 lignes par pouce et occupent 3/8 de pouce.
    (6,4) spécifie que les lignes 6 à 9 sont à un espacement vertical de 6 lignes par pouce et occupent 4/6 de pouce.
    (8,9) spécifie que les lignes 10 à 18 sont à un espacement vertical de 8 lignes par pouce et occupent 1-1/8 pouce.
  • SIZE=35 spécifie la longueur du format à 35 dixièmes de pouce ou 3-1/2 pouces.
    Étant donné qu’il y a 2-1/2 pouces d’espace imprimable sur un format de 3-1/2 pouces et que le paramètre LPI spécifie un espacement vertical pour 2-1/2 pouces de lignes, l’espacement vertical de toutes les lignes du format est comptabilisé.
  • Le nom du module FCB est HL ; il remplace un module existant du même nom.
    Le nouveau module FCB est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 4: Création d’un nouveau 3800 Forms Control Buffer Module

//FCBMOD4  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    FCB  CH1=1,CH6=33,SIZE=70,LPI=((8,32),(12,2))
    NAME TGT
/*

3800 Modèle 1

Dans cet exemple, l’espacement vertical, les codes de canal et la longueur d’un format sont spécifiés, et le module est ajouté au jeu de données SYS1.IMAGELIB en tant que nouveau membre.

Les instructions de contrôle sont décrites comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • CH1=1 spécifie le code du canal 1 pour la ligne imprimable 1.
  • CH6=33 spécifie le code du canal 6 pour la ligne 33.
  • LPI=((8,32),(12,2)) spécifie que les 32 premières lignes imprimables du format doivent être à un espacement vertical de 8 lignes par pouce, et les 2 lignes imprimables suivantes doivent être à un espacement vertical espacement de 12 lignes par pouce.
  • SIZE=70 spécifie que la longueur du format est de 70 dixièmes de pouce, ou 7 pouces.
    Étant donné qu’il y a 6 pouces de lignes imprimables dans un format de 7 pouces et que le paramètre LPI spécifie 32 lignes à 8 lignes par pouce, ou 4 pouces, et 2 lignes à 12 lignes par pouce, ou 1/6 pouce, l’espacement vertical pour les 1-5/6 pouces restants sont par défaut de 6 lignes par pouce.
  • Le nom du nouveau module FCB est TGT ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 5: Remplacement du 3800 Forms Control Buffer Module STD3

3800 Modèle 1

Dans cet exemple, un module FCB est défini qui utilise des formats de papier ISO, remplaçant le module fourni par IBM nommé STD3.
Cela doit être fait avant que les routines de formatage de vidage qui impriment des vidages haute densité puissent les imprimer à 8 lignes par pouce sur cette imprimante.

//FCBMOD5  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    FCB  CH1=1,CH12=88,LPI=(8,88),SIZE=120
    NAME STD3(R)
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • CH1=1 spécifie le code du canal 1 pour la ligne imprimable 1 ; CH12=88 spécifie le code du canal 12 pour la ligne 88.
  • LPI=(8,88) spécifie que les 88 lignes imprimables du format doivent être à un espacement vertical de 8 lignes par pouce.
  • SIZE=120 spécifie que la longueur du format est de 120 dixièmes de pouce, ou 12 pouces, qui est le format de papier ISO le plus long.
  • Le nom du nouveau module FCB est STD3 ; il s’agit de remplacer le module existant du même nom sur SYS1.IMAGELIB.

Exemple 6: tion d’un nouveau 3800 Forms Control Buffer Module pour un ISO Paper Sizes additionnel

3800 Modèle 1

Dans cet exemple, un module FCB est défini qui utilise des formats de papier ISO et sur lequel la fonction supplémentaire de formats de papier ISO est installée.

//FCBMOD    JOB   ...                                          72
//STEP1     EXEC  PGM=IEBIMAGE
//SYSUT1    DD    DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT  DD    SYSOUT=A
//SYSIN     DD    *
    FCB  CH1=1,CH12=75,SIZE=85,
         LPI=((10,35),(12,4),(10,35),(6,1)                      X
    NAME ARU
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • CH1=1 spécifie le code du canal 1 pour la ligne 1, permettant le positionnement à la ligne 1.
  • Ch12=75 spécifie le code du canal 12 pour la ligne 75, permettant le positionnement à la ligne 75 et une indication d’exception d’unité à 75 (la dernière ligne imprimable sur la page.)
  • LPI=((10,35),(12,4),(10,35),(6,1)) spécifie l’espacement vertical pour toute la zone imprimable sur le format.
    La dernière ligne imprimable du format doit avoir un espacement vertical de 6 lignes par pouce.
    La somme des lignes attribuées doit être un multiple de 1/2.

    EXEMPLE
    (10,35)=3 1/2″ (12,4)=2/6″ (6,1)=1/6″
    et 3 1/2 + 2/6 + 3 1/2 + 1/6 = 7 1/2 qui est un multiple de 1/2
  • SIZE=85 spécifie la longueur du format à 85 dixièmes de pouce, ou 8-1/2 pouces, bien que la zone imprimable soit de 7-1/2 pouces.
  • Le nom du nouveau module FCB est ARU ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 7:  Création d’un 4248 Forms Control Buffer Module

Dans cet exemple, un nouveau module FCB par défaut 4248 est construit en utilisant un module FCB existant comme modèle.
Le nouveau module, NEW1, est ajouté à SYS1.IMAGELIB en tant que nouveau membre.
Le module existant, OLD1, reste inchangé.
OLD1 peut être un FCB 4248 appelé FCB4OLD1 ou un FCB 3211 appelé FCB2OLD1.
(Si les deux modules existaient, FCB4OLD1 serait utilisé.)

//FCBMOD7  JOB   ...
//STEP1    EXEC  PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    OPTION  DEVICE=4248
    INCLUDE OLD1
    FCB     COPYP=67,PSPEED=M,DEFAULT=YES
    NAME    NEW1
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • DEVICE=4248 dans l’instruction OPTION spécifie que ce module doit être créé pour l’imprimante 4248.
  • L’instruction INCLUDE spécifie qu’une copie du module existant OLD1 doit être utilisée comme base pour le nouveau module, NEW1.
  • COPYP=67 indique que la fonction de copie horizontale doit être activée et que les copies horizontales doivent commencer à s’imprimer à la 67e position d’impression à partir de la marge de début (gauche). Notez que la valeur 67 divise une imprimante à 132 marteaux en deux zones de copie égales pour deux copies horizontales de même taille.
    Avec COPYP=67, un maximum de 66 octets peut être envoyé à l’imprimante.
  • PSPEED=M indique que la vitesse de l’imprimante doit être réglée sur moyenne (3000 LPM).
    Ce paramètre remplace toute valeur PSPEED précédemment définie dans le module OLD1 ; il s’applique au module NEW1, mais ne modifie pas la valeur définie dans OLD1.
  • DEFAULT=YES indique que ce module, NEW1, doit devenir un module FCB par défaut pour cette installation.
  • Étant donné que ces paramètres ne sont pas spécifiés, les valeurs de LINES, SIZE, LPI et CHx sont par défaut les valeurs qui existent déjà dans le module OLD1.
  • L’instruction NAME indique que ce module doit s’appeler NEW1.

Exemple 8: Création d’un nouveau Copy Modification Module

3800 Modèle 1

Dans cet exemple, un module de modification de copie qui contient quatre segments de modification est construit.
Le module est ajouté au jeu de données SYS1.IMAGELIB en tant que nouveau membre.

//COPMOD1  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
COPY1  COPYMOD COPIES=(1,1),LINES=(1,1),POS=50,                        X
               TEXT=(C,'CONTROLLER'S COPY')
COPY2A COPYMOD COPIES=(2,1),LINES=(1,1),POS=50,                        X
               TEXT=(C,'SHIPPING MANAGER'S COPY')
COPY2B COPYMOD COPIES=(2,1),LINES=(34,3),POS=75,                       X
               TEXT=(10C,' ')
COPYALL COPYMOD COPIES=(1,4),LINES=(58,1),POS=35,                      X
               TEXT=((C,'***'),(C,'CONFIDENTIAL'),(3X,'5C'))
         NAME  RTO1
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction COPY1 COPYMOD spécifie le texte qui s’applique à chaque page de la première copie de l’ensemble de données de sortie : LINES=(1,1) et POS=50 spécifient que le texte doit figurer sur la première ligne imprimable de chaque page, à partir de la 50e position d’impression depuis le début (à gauche).
    Le paramètre TEXT identifie chaque page de la copie comme étant la copie du contrôleur.
  • L’instruction COPY2A COPYMOD spécifie le texte qui s’applique à chaque page de la deuxième copie de l’ensemble de données de sortie.
    Le texte doit figurer sur la première ligne de chaque page, à la 50e position d’impression à partir de la gauche, chaque page de la copie étant la copie du directeur des expéditions.
  • L’instruction COPY2B COPYMOD spécifie qu’une partie du texte de l’ensemble de données de sortie de la deuxième copie doit être masquée, de sorte que la première, la troisième et les copies suivantes contiennent des informations qui ne sont pas imprimées sur la deuxième copie.
    La zone vierge doit être sur les lignes 34, 35 et 36, en commençant à la 75e position d’impression à partir de la gauche.
    Le texte des lignes 34, 35 et 36, entre les positions d’impression 75 et 84, doit être vide (c’est-à-dire que le caractère spécifié entre les guillemets simples du paramètre TEXT est un blanc).
  • L’instruction COPYALL COPYMOD spécifie le texte qui s’applique aux quatre premières copies de l’ensemble de données de sortie.
    Cet exemple suppose que pas plus de quatre copies sont imprimées à chaque fois que le travail qui produit le jeu de données de sortie est traité.
    Le texte doit être sur la 58e ligne de chaque page, à la 35e position d’impression à partir de la gauche.
    La légende ***CONFIDENTIEL*** doit figurer sur chaque page de la copie.
    Notez que le texte peut être codé au format caractère et hexadécimal.
  • Le nom du module de modification de copie est RTO1 ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 9: Construction d’un nouveau Copy Modification Module à partir d’une copie existante

Dans cet exemple, une copie d’un module de modification de copie existant, RTO1, est utilisée comme base pour un nouveau module de modification de copie.
Le nouveau module est ajouté au jeu de données SYS1.IMAGELIB en tant que nouveau membre.

Le module existant, RTO1, reste inchangé et disponible pour utilisation.

//COPMOD2  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    INCLUDE  RTO1,DELSEG=1
    OPTION   OVERRUN=8,DEVICE=3800M3
    COPYMOD  COPIES=(2,3),LINES=(52,6),POS=100,                        X
               TEXT=(X,'40404040404040405C5C')
    NAME     AP
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie du module de modification de copie nommée RTO1 est utilisée comme base pour le nouveau module et que le premier segment de modification de RTO1 doit être supprimé de la copie.
  • OVERRUN=8 dans l’instruction OPTION spécifie que le programme IEBIMAGE doit imprimer un message d’avertissement si la modification de la copie peut entraîner une condition de dépassement de ligne lors de l’impression à 6 et 8 lignes par pouce.
    Le programme doit également supprimer tous les messages d’avertissement qui s’appliquent à l’impression à 10 et 12 lignes par pouce.
    DEVICE=3800M3 dans l’instruction OPTION spécifie le traitement en mode de compatibilité 3800 Model 3.
  • L’instruction COPYMOD spécifie le texte qui s’applique à chaque page des deuxième, troisième et quatrième copies de l’ensemble de données de sortie :
    LINES=(52,6) et POS=100 spécifient que le texte doit être sur la 52e ligne et répété pour de la 53e à la 57e ligne de chaque page, en commençant à la 100e position d’impression à partir de la gauche (début).
    L’instruction TEXT spécifie le texte sous forme hexadécimale : huit blancs suivis de deux astérisques (dans cet exemple, on suppose que X’40’ s’imprime comme un blanc et que X’5C’ s’imprime comme un astérisque ; en pratique, le la table d’arrangement des caractères utilisée avec le module de modification de copie peut traduire X’40’ et X’5C’ en d’autres caractères imprimables).
  • Le nom du nouveau module de modification de copie est AP ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 10: Ajout d’un nouveau caractère à un module Table de disposition des caractères

3800 Modèle 1

Dans cet exemple, un module de table de disposition des caractères fourni par IBM est modifié pour inclure un autre caractère, puis ajouté au jeu de données SYS1.IMAGELIB en remplacement du module fourni par IBM.

//CHARMOD1 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
     INCLUDE  GF10
     OPTION   DEVICE=3800M3
     TABLE    LOC=((2A,2A),(6A,2A),(AA,2A),(EA,2A))
     NAME     GF10(R)
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie de la table d’arrangement des caractères nommée GF10 doit être utilisée comme base pour le nouveau module.
  • L’instruction OPTION avec le paramètre DEVICE spécifie le traitement en mode de compatibilité 3800 modèle 3.
  • L’instruction TABLE spécifie des informations mises à jour pour quatre entrées de table de traduction : X’2A’, X’6A’, X’AA’ et X’EA’.
    (Ces quatre emplacements ne sont pas utilisés dans la table GF10 fournie par IBM.)
    Chacune des quatre entrées de la table de traduction doit pointer vers la position «2A» (43e caractère) dans le premier WCGM, qui contient le modèle de balayage pour un losange.
  • Le nom de la table d’arrangement des caractères est GF10 et il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.
    Le répertoire du jeu de données est mis à jour afin que le nom GF10 pointe vers le nouveau module ; l’ancien module GF10 n’est plus accessible via le répertoire du jeu de données.

Exemple 11 : Création d’un nouveau module Table d’arrangement des caractères à partir d’une copie existante

3800 Modèle 1

Dans cet exemple, un module de table d’arrangement de caractères existant est copié et utilisé comme base pour un nouveau module.
La nouvelle table d’arrangement des caractères est identique à l’ancienne, sauf qu’elle utilise le jeu de caractères gothique à 15 pas au lieu de gothique à 10 pas.

//CHARMOD2 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    INCLUDE  A11
    OPTION   DEVICE=3800M3
    TABLE    CGMID=87
    NAME     A115
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie de la table d’arrangement des caractères nommée A11 doit être utilisée comme base pour le nouveau module.
    La table d’arrangement des caractères A11 traduit les codes de données 8 bits en caractères imprimables dans le jeu de caractères gothiques à 10 pas.
  • L’instruction OPTION avec le paramètre DEVICE spécifie le traitement en mode de compatibilité 3800 modèle 3.
  • L’instruction TABLE spécifie un nouvel identificateur de jeu de caractères, X’87’, qui est l’identificateur du jeu de caractères gothiques à 15 pas.
    Aucune autre modification n’est apportée au tableau d’arrangement des caractères.
    Le nouveau tableau appelle les caractères du jeu de caractères gothique à 15 pas.
  • Le nom de la nouvelle table d’arrangement des caractères est A115 ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 12 : Création de caractères graphiques dans un module Table d’arrangement des caractères

Dans cet exemple, un module de table d’arrangement de caractères existant est copié et utilisé comme base pour un nouveau module qui comprendra des caractères conçus par l’utilisateur d’un module de modification de caractères graphiques.
Le nouveau module est ensuite ajouté au jeu de données SYS1.IMAGELIB.

//CHARMOD3 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    INCLUDE ONB
    TABLE   GCMLIST=ONB1,LOC=((6F,2F,1),(7C,3C,1),(6A,2A,0))
    NAME    ONBZ
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie de la table d’arrangement des caractères nommée ONB doit être utilisée comme base pour le nouveau module.
    ONB fait référence à deux WCGM.
  • L’instruction TABLE identifie un module de modification de caractères graphiques et précise les entrées de la table de traduction pour chacun de ses segments :
    GCMLIST=ONB1 identifie le module de modification de caractères graphiques nommé ONB1.
    Le paramètre LOC spécifie l’emplacement de l’entrée de table de traduction, la position des caractères et le numéro WCGM pour chaque segment du module :
    Le premier segment correspond au code de données 8 bits X’6F’.
    Le motif de balayage des segments doit être chargé à la position de caractère X’2F’ (c’est-à-dire la 48ème position de caractère) dans le deuxième WCGM.
    Le deuxième segment correspond au code de données à 8 bits X’7C’.
    Le motif de balayage du segment doit être chargé à la position de caractère X’3C’ (c’est-à-dire,
    Le troisième segment correspond au code de données à 8 bits X’6A’.
    Le motif de balayage du segment doit être chargé à la position de caractère X’2A’ (c’est-à-dire la 43ème position de caractère) dans le premier WCGM.
    Le nom de la nouvelle table d’arrangement des caractères est ONBZ ; il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.

Exemple 13 : Supprimer les références graphiques d’un module Table de disposition des caractères

3800 Modèle 3

Dans cet exemple, un module de table d’arrangement de caractères existant est copié et utilisé comme base pour un nouveau.
La nouvelle table d’arrangement de caractères supprime les références à tous les modules de modification de caractères graphiques et réinitialise les entrées de table de traduction qui ont été utilisées pour pointer vers des positions de caractères pour les segments d’un module de modification de caractères graphiques.

//CHARMOD4 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    INCLUDE  ZYL
    OPTION   DEVICE=3800M3
    TABLE    GCMLIST=DELETE,LOC=((6A),(6B))
    NAME     ZYLA
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie de la table d’arrangement des caractères nommée ZYL doit être utilisée comme base pour le nouveau module.
  • L’instruction OPTION avec le paramètre DEVICE spécifie le traitement en mode de compatibilité 3800 modèle 3.
  • L’instruction TABLE supprime les références aux modules de modification de caractères graphiques et réinitialise deux entrées de table de traduction :
    GCMLIST=DELETE spécifie que tous les noms de modules de modification de caractères graphiques inclus avec le module lors de la copie de la table d’arrangement des caractères ZYL doivent être remis à zéro (X’ 40′).
    Le paramètre LOC identifie deux emplacements dans la table de traduction, X’6A’ et X’6B’, qui doivent être définis sur X’FF’ (la valeur par défaut lorsqu’aucune position de caractère ou aucune valeur WCGM n’est spécifiée).
  • Le nom de la nouvelle table d’arrangement des caractères est ZYLA ; il est stocké en tant que membre du jeu de données SYS1.IMAGELIB.

Exemple 14 : Répertorier le module de modification des caractères graphiques des graphics à usage national World Trade

3800 Modèle 1

Dans cet exemple, chaque segment du module de modification de caractères graphiques fourni par IBM contenant les graphiques à usage national du commerce international est imprimé.
Chaque segment est unique, bien que les modèles de balayage de certains segments soient identiques aux modèles de balayage d’autres segments, seul le code de données 8 bits étant différent.

//GRAFMOD1 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=SHR
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    GRAPHIC
    NAME  *
/*

Les instructions de contrôle sont décrites comme suit :

  • DISP=SHR est codé car la bibliothèque n’est pas mise à jour.
  • Le module de modification des caractères graphiques World Trade National Use Graphics est identifié par le pseudonyme *.
    Le motif de balayage de chacun des caractères du module est imprimé.

Exemple 15 : Construction d’un module de modification de caractères graphiques à partir du module de modification de caractères World Trade GRAFMOD

3800 Modèle 3

Dans cet exemple, un module de modification de caractères graphiques est construit.
Ses caractères sont des segments copiés du module de modification des caractères graphiques World Trade National Use Graphics.
(Voir le Guide du programmeur du sous-système d’impression IBM 3800 pour les affectations EBCDIC des caractères.)
Le nouveau module est stocké dans le jeu de données système SYS1.IMAGELIB.

//GRAFMOD2 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
   OPTION DEVICE=3800M3
   GRAPHIC REF=((24),(25),(26),(27),(28),(31),(33),(35),(38),(40))
   NAME   CSTW
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • DEVICE=3800M3 dans l’instruction OPTION spécifie le format de module du mode de compatibilité 3800 modèle 3.
  • En ne spécifiant pas le mot-clé GCM, l’instruction GRAPHIC identifie le module de modification des caractères graphiques World Trade National Use Graphics.
    Dix de ses segments doivent être copiés et utilisés avec le nouveau module.
  • Le nom du module de modification des caractères graphiques est CSTW ; il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.

Exemple 17 : Création d’un module de modification de caractères graphiques à partir de plusieurs sources

3800 Modèle 1

Dans cet exemple, un module de modification de caractères graphiques est créé.
Son contenu provient de trois sources différentes :
neuf segments sont copiés à partir d’un module existant avec l’instruction INCLUDE ;
l’instruction GRAPHIC permet de sélectionner un autre segment à copier ;
l’instruction GRAPHIC est également utilisée pour établir les caractéristiques d’un caractère conçu par l’utilisateur.
Le nouveau module de modification des caractères graphiques, une fois construit, est ajouté au SYS1.IMAGELIB.

//GRAFMOD4 JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    INCLUDE CSTW,DELSEG=3
    GRAPHIC REF=(1,6A),GCM=BODE,ASSIGN=9A
     ********           SEQ=06
    **********          SEQ=07
   ****    ****         SEQ=08
   ***      ***         SEQ=09
   ***     ****         SEQ=10
   ***  ******          SEQ=11
   ***  ******          SEQ=12
   ***     ****         SEQ=13
   ***      ****        SEQ=14
   ***       ***        SEQ=15
   ***       ***        SEQ=16
   *** **** ****        SEQ=17
   ***  *******         SEQ=18
   ***   *****          SEQ=19
    NAME  JPCK
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie du module de modification de caractères graphiques nommé CSTW doit être incluse avec le nouveau module.
    Tous les segments de CSTW, à l’exception du troisième segment (résultant de DELSEG=3), doivent être copiés dans le nouveau module et devenir les premier à neuvième segments de modification du module.
  • L’instruction GRAPHIC spécifie les dixième et onzième segments du module :
    REF=(1,6A) et GCM=BODE précisent que le 10ème segment du nouveau module doit être obtenu en copiant le premier segment du module de modification de caractères graphiques nommé BODE.
    De plus, le code de données à 8 bits du segment doit être modifié de sorte que son caractère soit identifié avec le code X’6A’.
    ASSIGN=9A spécifie que le 11e segment du nouveau module est un caractère conçu par l’utilisateur dont le code de données 8 bits est X’9A’ et dont la largeur est de 10 pas (la valeur par défaut lorsqu’aucune valeur de pas n’est spécifiée).
    L’instruction GRAPHIC est suivie d’instructions de données qui spécifient le modèle de balayage du caractère.
  • Le nom du module de modification des caractères graphiques est JPCK, il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.

Exemple 18 : Définition et utilisation d’un caractère dans un module de modification de caractères graphiques

3800 Modèle 3

Dans cet exemple, un module de modification de caractère graphique contenant un caractère conçu par l’utilisateur est construit.
Ensuite, une table d’agencement de caractères de format est modifiée pour inclure ce nouveau caractère.
Ensuite, un module de modification de copie est créé pour imprimer le nouveau caractère enfermé dans une boîte de caractères de format.
Enfin, le résultat est testé pour permettre la comparaison de la sortie avec l’entrée.

  //CHAR     JOB  ...
  //BUILD    EXEC PGM=IEBIMAGE
  //SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
  //SYSPRINT DD  SYSOUT=A
  //SYSIN    DD  *
           OPTION  DEVICE=3800M3
  STEP1    GRAPHIC ASSIGN=5C
  XXX                 XXX SEQ=01
  XXX                 XXX SEQ=02
  XXX                 XXX SEQ=03
  XXX                 XXX SEQ=04
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=05
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=06
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=07
  XXX                 XXX SEQ=08
  XXX                 XXX SEQ=09
  XXX                 XXX SEQ=10
  XXX                 XXX SEQ=11
                          SEQ=12
                          SEQ=13
                          SEQ=14
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=15
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=16
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=17
  XXX       XXX       XXX SEQ=18
  XXX       XXX       XXX SEQ=19
  XXX       XXX       XXX SEQ=20
  XXX       XXX       XXX SEQ=21
  XXXX     XXXXX     XXXX SEQ=22
   XXXX   XXXXXXX   XXXX  SEQ=23
    XXXXXXXXXXXXXXXXXXX   SEQ=24
      XXXXX    XXXXXX     SEQ=25
                          SEQ=26
                          SEQ=27
                          SEQ=28
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=29
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=30
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=31
                  XXXXXXX SEQ=32
       XXXXXXXXXXXXXXXXXX SEQ=33
  XXXXXXXXXXXXXXXX        SEQ=34
  XXXXXXXXXXXXXXXX        SEQ=35
       XXXXXXXXXXXXXXXXXX SEQ=36
                  XXXXXXX SEQ=37
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=38
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=39
  XXXXXXXXXXXXXXXXXXXXXXX SEQ=40
            NAME AIBM

  STEP2    OPTION  DEVICE=3800M3
           INCLUDE FM10
           TABLE   GCMLIST=AIBM,LOC=(5C,2C)
           NAME    BIBM
  STEP3    OPTION  DEVICE=3800M3
           COPYMOD COPIES=1,LINES=58,POS=5,TEXT=(C,'W6X')
           COPYMOD COPIES=1,LINES=59,POS=5,TEXT=(C,'7*7')
           COPYMOD COPIES=1,LINES=60,POS=5,TEXT=(X,'E9F6E8')
           NAME    CIBM
  /*
  //TEST     EXEC PGM=IEBIMAGE
  //SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
  //SYSPRINT DD  SYSOUT=A,CHARS=(GF10,BIBM),
  //             MODIFY=(CIBM,1)
  //SYSIN    DD  *
          OPTION   DEVICE=3800M3
          GRAPHIC
          NAME     AIBM
  /*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • Le paramètre ASSIGN de ​​l’instruction GRAPHIC spécifie que le code de données 8 bits pour le caractère conçu par l’utilisateur est X’5C’ et que la largeur est de 10 pas (la valeur par défaut lorsqu’aucun pas n’est spécifié).
    L’instruction GRAPHIC est suivie d’instructions de données qui spécifient le motif de balayage du caractère pour un interligne vertical de 6 lignes par pouce.
  • Le nom du module de modification des caractères graphiques est AIBM et il est stocké en tant que nouveau module dans SYS1.IMAGELIB.
  • A l’ÉTAPE 2, l’instruction INCLUDE spécifie qu’une copie de la table d’arrangement des caractères FM10 doit être utilisée comme base pour le nouveau module.
  • L’instruction TABLE identifie le module de modification de caractères graphiques nommé AIBM, créé à l’étape précédente.
    Le paramètre LOC de l’instruction TABLE spécifie l’emplacement de l’entrée de la table de traduction (le code de données 8 bits du caractère) de X’5C’ et la position (X’2C’) où ce caractère doit être chargé dans le WCGM.
  • Le nom de la nouvelle table de disposition des caractères, qui est ajoutée à SYS1.IMAGELIB, est BIBM.
  • À l’ÉTAPE 3, les trois instructions COPYMOD spécifient le texte qui doit être placé sur les lignes 58, 59 et 60 de la première copie du jeu de données de sortie, en commençant à la position d’impression 5 sur chaque ligne.
    Lorsqu’ils sont utilisés avec la table de disposition des caractères BIBM, les caractères W, 6 et X s’impriment sous la forme d’un coin supérieur gauche, d’un segment de ligne horizontal et d’un coin supérieur droit, tous en épaisseur de ligne 3.
    Les caractères 7, * et 7 s’impriment sous la forme d’un poids-3 segment de ligne verticale des deux côtés du caractère conçu par l’utilisateur construit à l’étape 1 (l’astérisque a l’affectation EBCDIC 5C, qui adresse ce caractère).
    Les caractères hexadécimaux E9, F6 et E8 complètent la zone de format d’épaisseur de ligne 3 autour du caractère.
  • Le nom du module de modification de copie est CIBM ; il est stocké en tant que nouveau module sur SYS1.IMAGELIB.
  • A TEST, l’instruction EXEC appelle une nouvelle exécution du programme IEBIMAGE pour tester les modules qui viennent d’être créés.
    Dans l’instruction SYSPRINT DD, la table d’agencement des caractères BIBM est la deuxième des deux spécifiées, et le module de modification de copie CIBM est spécifié avec un caractère de référence de table de 1, pour utiliser cette table BIBM.
  • L’instruction GRAPHIC sans opérande spécifié appelle l’impression du module, AIBM, spécifié avec l’instruction NAME qui la suit.
    Chaque page de la liste de sortie pour cette exécution IEBIMAGE a une petite image de la modification imprimée dans le coin inférieur gauche.
  • L’instruction OPTION avec le paramètre DEVICE à STEP1, STEP2 et STEP3 spécifie le format du module en mode de compatibilité 3800 modèle 3 et les considérations de traitement.

Exemple 19 : Lister un module de jeu de caractères de bibliothèque

3800 Modèle 1

Dans cet exemple, chaque segment d’un jeu de caractères de bibliothèque est imprimé.
Le motif de balayage de chacun des caractères du module est imprimé.

//LIBMOD1  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=SHR
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    CHARSET
    NAME    83
/*

Les instructions de contrôle sont décrites comme suit :

  • NAME spécifie le nom du jeu de caractères de la bibliothèque (83).

Exemple 20 : Création d’un module de jeu de caractères de bibliothèque

3800 Modèle 3

Dans cet exemple, un module de jeu de caractères de bibliothèque est construit.
Ses caractères sont des segments copiés du module de modification des caractères graphiques World Trade National Use Graphics.
Pour obtenir la liste de tous les segments de ce module, consultez le Guide du programmeur du sous-système d’impression IBM 3800.
Les affectations EBCDIC pour les caractères sont remplacées par des codes d’emplacement WCGM.
Le nouveau module est stocké dans le jeu de données système SYS1.IMAGELIB.

//LIBMOD2  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    OPTION   DEVICE=3800M3
    CHARSET  REF=((24,01),(25,02),(26,03),(27,04),(28,05),             X
               (31,06),(33,07),(35,08),(38,09),(40,0A))
    NAME     73
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • DEVICE=3800M3 dans l’instruction OPTION spécifie le format de module du mode de compatibilité 3800 modèle 3.
  • En ne spécifiant pas le mot-clé GCM ou un ID de jeu de caractères de bibliothèque, l’instruction CHARSET identifie le module de modification de caractères graphiques World Trade National Use Graphics.
    Dix de ses segments doivent être copiés et utilisés avec le nouveau module.
    Par exemple, le 24e segment doit être copié et affecté à l’emplacement WCGM 01.
    Voir le paramètre REF (24,01).
  • Le nom du module de jeu de caractères de la bibliothèque est 73 et il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.

Exemple 21 : Création d’un module de jeu de caractères de bibliothèque et modification d’une table de disposition des caractères pour l’utiliser

3800 Modèle 3

Dans cet exemple, un module de jeu de caractères de bibliothèque est construit.
Le module contient un caractère conçu par l’utilisateur, un “E” inversé, dont le code d’emplacement WCGM 6 bits est désigné par X’03’ et dont le pas est de 10.
Une table d’arrangement de caractères existante est ensuite modifiée pour inclure le E inversé . .

//LIBMOD3  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    OPTION  DEVICE=3800M3
    CHARSET ASSIGN=(03,10)
    XXXXXXXXXXXXXXX     SEQ=10
    XXXXXXXXXXXXXXX     SEQ=11
    XXXXXXXXXXXXXXX     SEQ=12
               XXXX     SEQ=13
               XXXX     SEQ=14
               XXXX     SEQ=15
               XXXX     SEQ=16
               XXXX     SEQ=17
               XXXX     SEQ=18
               XXXX     SEQ=19
      XXXXXXXXXXXXX     SEQ=20
      XXXXXXXXXXXXX     SEQ=21
      XXXXXXXXXXXXX     SEQ=22
               XXXX     SEQ=23
               XXXX     SEQ=24
               XXXX     SEQ=25
               XXXX     SEQ=26
               XXXX     SEQ=27
               XXXX     SEQ=28
               XXXX     SEQ=29
    XXXXXXXXXXXXXXX     SEQ=30
    XXXXXXXXXXXXXXX     SEQ=31
    XXXXXXXXXXXXXXX     SEQ=32
    NAME     73
    INCLUDE  GS10
    OPTION   DEVICE=3800M3
    TABLE    CGMID=(83,73),LOC=(E0,03,1)
    NAME     RE10
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • DEVICE=3800M3 dans l’instruction OPTION spécifie le format de module du mode de compatibilité 3800 modèle 3 et les considérations de traitement.
  • Le paramètre ASSIGN de ​​l’instruction CHARSET établit le code d’emplacement WCGM 6 bits, X’03’, et la largeur, pas de 10, pour le caractère conçu par l’utilisateur.
    Les instructions de données qui suivent l’instruction CHARSET décrivent le modèle de balayage du caractère.
  • Le nom du module de jeu de caractères de la bibliothèque est 73 et il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.
  • L’instruction INCLUDE spécifie qu’une copie de la table de disposition des caractères GS10 doit être utilisée comme base pour la nouvelle table.
  • L’instruction TABLE spécifie l’ajout du jeu de caractères de la bibliothèque contenant le E inversé à cette copie de la table GS10.
    CGMID=(83,73) spécifie l’identifiant du jeu de caractères X’83’ pour le jeu Gothic-10 (qui est le jeu déjà utilisé par la table GS10) et spécifie X’73’ comme identifiant du jeu de caractères pour permettre le chargement du deuxième WCGM avec le jeu de caractères de bibliothèque 73.
    LOC=(E0,03,1) spécifie que le E inverse, auquel a été attribué l’emplacement WCGM 03 dans le deuxième WCGM, doit être référencé par le code EBCDIC X’E0′.
  • La nouvelle table d’arrangement des caractères est nommée RE10 ; il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.

Exemple 22 : Création d’un module de jeu de caractères de bibliothèque à partir de plusieurs sources

3800 Modèle 3

Dans cet exemple, un module de jeu de caractères de bibliothèque est créé. Son contenu provient de trois sources différentes :
– 62 segments sont copiés d’un module existant avec l’instruction INCLUDE ;
– l’instruction CHARSET permet de sélectionner un autre segment à copier ;
– une deuxième instruction CHARSET est utilisée pour établir les caractéristiques d’un caractère conçu par l’utilisateur.
Le nouveau module de jeu de caractères de la bibliothèque, une fois construit, est ajouté au fichier SYS1.IMAGELIB.

//LIBMOD4  JOB  ...
//STEP1    EXEC PGM=IEBIMAGE
//SYSUT1   DD  DSNAME=SYS1.IMAGELIB,DISP=OLD
//SYSPRINT DD  SYSOUT=A
//SYSIN    DD  *
    INCLUDE  33,DELSEG=(3,4)
    CHARSET  REF=(1,02),GCM=BODE,ASSIGN=03
     ********           SEQ=06
    **********          SEQ=07
   ****    ****         SEQ=08
   ***      ***         SEQ=09
   ***     ****         SEQ=10
   ***  ******          SEQ=11
   ***  ******          SEQ=12
   ***     ****         SEQ=13
   ***      ****        SEQ=14
   ***       ***        SEQ=15
   ***       ***        SEQ=16
   *** **** ****        SEQ=17
   ***  *******         SEQ=18
   ***   *****          SEQ=19
    NAME  53
/*

Les instructions de contrôle sont discutées comme suit :

  • L’instruction SYSUT1 DD inclut DISP=OLD pour garantir qu’aucun autre travail ne peut modifier l’ensemble de données pendant l’exécution de ce travail.
  • L’instruction INCLUDE spécifie qu’une copie du module de jeu de caractères de bibliothèque nommé 33 doit être incluse avec le nouveau module.
    Tous les segments de 33, à l’exception des troisième et quatrième segments (résultant de DELSEG=3,4), doivent être copiés dans le nouveau module et devenir la base du nouveau module.
  • L’instruction CHARSET spécifie les troisième et quatrième segments du module :
    REF=(1,02) et GCM=BODE spécifient que le troisième segment du nouveau module doit être obtenu en copiant le premier segment du module de modification de caractères graphiques nommé BODE.
    Le code d’emplacement WCGM à 6 bits du segment doit être défini de sorte que son caractère soit identifié avec le code X’02’.
    ASSIGN=03 spécifie que le quatrième segment du nouveau module est un caractère conçu par l’utilisateur dont le code d’emplacement WCGM 6 bits est X’03’ et dont la largeur est de 10 pas (la valeur par défaut lorsqu’aucune valeur de pas n’est spécifiée).
    L’instruction CHARSET est suivie d’instructions de données qui spécifient le modèle de balayage du caractère.
  • Le nom du module de jeu de caractères de la bibliothèque est 53, il est stocké en tant que nouveau module dans le jeu de données SYS1.IMAGELIB.