Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

SHOWAIX - Informationen über Sekundärschlüssel ausgeben

Makrotyp: S-Typ (E-Form/L-Form/D-Form/C-Form) (siehe "Typen von Makroaufrufen")

Der Makro SHOWAIX übergibt in seiner Operandenliste Informationen über die Sekundärschlüssel einer NK-ISAM-Datei. Zu jedem in der Datei definierten Sekundärschlüssel informiert er den Anwender über

  • den Namen des Schlüssels

  • die Position des Schlüssels im Datensatz

  • die Länge des Schlüssels

  • die DUPKEY-Eigenschaft des Schlüssels (mehrfach auftretende Schlüsselwerte erlaubt oder nicht erlaubt)

  • die Vollständigkeit der zum Schlüssel gehörenden Sekundärindexblöcke.

Format

Operation

Operanden

SHOWAIX

MF = L
,FILE = pfadname / LINK=linkname

MF = E,PARAM = adr / (r)

MF = D[,PREFIX = pre]

MF = C[,PREFIX = pre][,MACID = macid]

Operandenbeschreibung

FILE = pfadname

Bezeichnet die NK-ISAM-Datei, über deren Sekundärschlüssel Informationen ausgegeben werden sollen, mit <c-string 1..54: filename 1..54>. Die Angabe im FILE-Operanden wird ignoriert, wenn zugleich der LINK-Operand angegeben ist.

Pfadname bedeutet [:catid:][$userid.]dateiname

catid
Katalogkennung: falls nicht angegeben, wird die Default-Catid der Benutzerkennung angenommen.

userid
Benutzerkennung: falls nicht angegeben, wird die Benutzerkennung des SET-LOGON-PARAMETERS- bzw. des LOGON-Kommandos angenommen.

dateiname
vollqualifizierter Dateiname

LINK = linkname <1..8>

Legt den Dateikettungsnamen der Datei fest, über deren Sekundärschlüssel Informationen ausgegeben werden sollen.
Soll der Dateikettungsname über die Kommandoschnittstelle ansprechbar sein, muss er dem Datentyp <structured_name 1..8> entsprechen (siehe Handbuch „Kommandos“ [3]).

MACID

legt jeweils das zweite bis einschließlich vierte Zeichen der Feldnamen und Equates fest, die bei der Makroauflösung generiert werden.

Voreinstellung:

MACID = ISI

= macid
„macid“ ist eine drei Zeichen lange Zeichenfolge, die jeweils das zweite bis vierte Zeichen der generierten Feldnamen und Equates festlegt.

PARAM

bezeichnet die Adresse der Operandenliste. Der Operand wird nur in Verbindung mit MF=E ausgewertet (siehe "Typen von Makroaufrufen").

= adr
adr ist die symbolische Adresse (der Name) der Operandenliste.

= (r)
r ist die Nummer des Registers, das die Adresse der Operandenliste enthält. Vor dem Makroaufruf muss das Register mit diesem Adresswert geladen werden.

PREFIX

legt das jeweils erste Zeichen der Feldnamen und Equates fest, die bei der Makroauflösung generiert werden.

Voreinstellung:

PREFIX = D

= pre
„pre“ ist ein Zeichen langes Präfix, mit dem die generierten Feldnamen und Equates beginnen sollen.

Returncodes:

Standardheader: ccbbaaaa

Über die Ausführung des Makros SHOWAIX wird im Standardheader folgender Returncode übergeben (cc = SUBCODE2, bb = SUBCODE1, aaaa = MAINCODE):

X'bb'

X'aaaa'

Erläuterung

X'00'

X'0000'

Funktion erfolgreich ausgeführt.

X'01'

X'0001'

Die Operandenliste ist nicht verfügbar.

X'40'

X'0002'

Sekundärschlüssel werden im fernen System nicht unterstützt (bei Makroaufruf über RFA).

X'40'

X'0003'

Die angegebene Katalogkennung existiert nicht.

X'40'

X'0004'

Auf den Katalog kann nicht zugegriffen werden.

X'01'

X'0005'

Die Operandenliste enthält einen ungültigen Namen.

X'20'

X'000B'

Systemfehler.

X'40'

X'000E'

Der Kontrollblock der Datei ist fehlerhaft.

X'01'

X'0017'

In der Operandenliste wurde keine Datei spezifiziert.

X'40'

X'0019'

Der Dateikettungsname ist fehlerhaft.

X'40'

X'0040'

OPEN-Fehler.

X'40'

X'0041'

CLOSE-Fehler.

X'40'

X'0044'

Die Datei ist keine NK-ISAM-Datei.

Weitere Returncodes, deren Bedeutung durch Konvention makroübergreifend festgelegt ist, können der Tabelle auf Kapitel "Standardheader" entnommen werden.

Das aufrufende Programm wird beendet, wenn bezüglich der Parameterliste folgende Fehler auftreten:

  • Die Liste ist dem Aufrufer nicht zugewiesen.

  • Die Liste ist nicht auf Wortgrenze ausgerichtet.

  • Die Liste ist gegen Schreibzugriff geschützt.

Layout der Operandenliste

Makroauflösung mit MF=D und Standardwerten für PREFIX und MACID:

SHOWAIX MF=D       
1          MFCHK MF=D,                                                   C 
1                PREFIX=D,                                               C 
1                MACID=ISI,                                              C 
1                DMACID=ISI,                                             C 
1                DNAME=ISIAIX,                                           C 
1                SUPPORT=(C,D,L,E),                                      C 
1                PARAM=,                                                 C 
1                ALIGN=F,                                                C 
1                SVC=32                                 
2 DISIAIX  DSECT ,            
2                *,##### PREFIX=D, MACID=ISI #####      
1          #INTF INTNAME=SHOWAIX,REFTYPE=REQUEST,INTCOMP=001 
1          FHDR  MF=(C,DISI),EQUATES=NO                 
2          DS    0A           
2 DISIFHE  DS    0XL8            0   GENERAL PARAMETER AREA HEADER 
2 * 
2 DISIIFID DS    0A              0   INTERFACE IDENTIFIER 
2 DISIFCTU DS    AL2             0   FUNCTION UNIT NUMBER 
2 *                                  BIT 15    HEADER FLAG BIT, 
2 *                                  MUST BE RESET UNTIL FURTHER NOTICE 
2 *                                  BIT 14-12 UNUSED, MUST BE RESET 
2 *                                  BIT 11-0  REAL FUNCTION UNIT NUMBER 
2 DISIFCT  DS    AL1             2   FUNCTION NUMBER    
2 DISIFCTV DS    AL1             3   FUNCTION INTERFACE VERSION NUMBER 
2 * 
2 DISIRET  DS    0A              4   GENERAL RETURN CODE
2 DISISRET DS    0AL2            4   SUB RETURN CODE    
2 DISISR2  DS    AL1             4   SUB RETURN CODE 2  
2 DISISR1  DS    AL1             5   SUB RETURN CODE 1  
2 DISIMRET DS    0AL2            6   MAIN RETURN CODE   
2 DISIMR2  DS    AL1             6   MAIN RETURN CODE 2 
2 DISIMR1  DS    AL1             7   MAIN RETURN CODE 1 
2 DISIFHL  EQU   8               8   GENERAL OPERAND LIST HEADER LENGTH 
2 * 
1 * 
1 * SUB RETURN CODE1          
1 * 
1 DISIRFSP EQU   X'00'              FUNCTION SUCCESSFULLY PROCESSED 
1 DISIRPER EQU   X'01'              PARAMETER SYNTAX ERROR 
1 * 
1 DISIRFNS EQU   X'01'              CALLED FUNCTION NOT SUPPORTED 
1 DISIRFNA EQU   X'02'              CALLED FUNCTION NOT AVAILABLE 
1 DISIRVNA EQU   X'03'              INTERFACE VERSION NOT SUPPORTED 
1 * 
1 DISIRIER EQU   X'20'              INTERNAL ERROR      
1 DISIRCAR EQU   X'40'              CORRECT AND RETRY   
1 * 
1 * MAIN RETURN CODE          
1 * 
1 DISIOK   EQU   0                  AIX DELETED         
1 DISINPAR EQU   1                  PARLIST NOT ACCESSIBLE 
1 DISINREM EQU   2                  NO SUPPORT ON REMOTE HOST 
1 DISINCAT EQU   3                  CATID NOT KNOWN     
1 DISINACC EQU   4                  CATALOG NOT ACCESSIBLE 
1 DISIINVN EQU   5                  INVALID NAME        
1 DISISYSE EQU   11                 SYSTEM ERROR        
1 DISISPAC EQU   12                 NO ADDRESS SPACE    
1 DISIWRCB EQU   14                 WRONG CONTROLBLOCK  
1 DISIFNSP EQU   23                 FILE NOT SPECIFIED  
1 DISILNKE EQU   25                 LINKNAME ERROR      
1 DISIINOP EQU   31                 SSTA INOP           
1 DISISSER EQU   32                 SSTA INTERNAL ERROR 
1 DISIMEMR EQU   33                 SSTA MEMORY ERROR   
1 DISIOPSE EQU   34                 SSTA OPS ERROR      
1 DISIOPME EQU   35                 SSTA OPS MEMORY ERROR 
1 DISIOPER EQU   64                 FILE OPEN ERROR     
1 DISICLER EQU   65                 FILE CLOSE ERROR    
1 DISINNKF EQU   68                 NO NK-ISAM FILE     
1 DISIRLNK EQU   X'FFFF'            LINKAGE ERROR       
1 * 
1 DISIDMSC DS    AL2                DMSCODE             
1 DISIFILE DS    CL54               FILE                
1 DISILINK DS    CL8                LINK                
1 DISIKEY# DS    H                  NUMBER OF KEYS      
1 * 
1 DISIKNAM DS    CL8                KEYNAME             
1 DISIKPOS DS    H                  KEYPOS              
1 DISIKLEN DS    AL1                KEYLEN              
1 DISIIND  DS    XL1                INDICATOR           
1 DISIDUPK EQU   X'80'              SET:   DUPKEY = YES 
1 *                                 RESET: DUPKEY = NO  
1 DISIINCO EQU   X'40'              SET:   SIX IS INCOMPLETE 
1 *                                 RESET: SIX IS COMPLETE 
1          DS    29CL12       
1 DISI#    EQU   (*-DISIFHE)        LENGTH OF STRUCTURE 
           END