Exits für DB2 und COBOL-Generierung schreiben
Dieses Thema ist eine Ergänzung zu 'Exits für EGL-Zugriff auf DB2 schreiben' und bezieht sich speziell auf COBOL-Generierung.
Quellcode
Um die Quelle für die bereitgestellten Exits anzuzeigen, überprüfen Sie die Member in der SELASAMP-PDS, die im Lieferumfang der Rational COBOL Runtime for z/Series-Installation unter z/OS enthalten ist. Die relevanten Member sind in der folgenden Tabelle aufgelistet.
| Membername | Zweck | Typ für Ein- und Ausgabe |
|---|---|---|
| ELADT2DB | Überprüfen Sie vor der Datenbankeingabe den Wert, den eine Hostvariable des Typs DATE der Datenbank zuweist. | Zeiger auf CHAR(10) |
| ELADT2PG | Überprüfen Sie nach der Datenbankausgabe den Wert, der in eine Hostvariable des Typs DATE eingefügt wird. | Zeiger auf CHAR(10) |
| ELATI2DB | Überprüfen Sie vor der Datenbankeingabe den Wert, den eine Hostvariable des Typs TIME der Datenbank zuweist. | Zeiger auf CHAR(8) |
| ELATI2PG | Überprüfen Sie nach der Datenbankausgabe den Wert, der in eine Hostvariable des Typs TIME eingefügt wird. | Zeiger auf CHAR(8) |
| ELATS2DB | Überprüfen Sie vor der Datenbankeingabe den Wert, den eine Hostvariable des Typs TIMESTAMP der Datenbank zuweist. | Zeiger auf CHAR(26) |
| ELATS2PG | Überprüfen Sie nach der Datenbankausgabe den Wert, der in eine Hostvariable des Typs TIMESTAMP eingefügt wird. | Zeiger auf CHAR(26) |
Die Masken, die Sie für DATE, TIME und TIMESTAMP definieren, haben keine Auswirkungen auf die Daten, die Sie an diese Exits gesendet oder von diesen empfangen haben. Sie können die Masken im Code definieren, indem Sie die Funktionen StrLib.defaultDateFormat, StrLib.defaultTimeFormat und StrLib.defaultTimeStampFormat festlegen, die Standardwerte aus den Builddeskriptoroptionen desselben Namens empfangen können.
Beispiel und Logikablauf
get myrec with #sql{
SELECT COL1 FROM TBL WHERE :dateChar1 = '2010-04-01' }
into dateChar2;
- Rufen Sie den Wert aus dem Feld dateChar1 ab.
- Übergeben Sie diesen Wert an das Exitprogramm ELADT2DB.
- Verwenden Sie bei der Interaktion mit der Datenbank den vom Exitprogramm zurückgegebenen neuen Datumswert.
- Rufen Sie den Wert COL1 aus der Datenbank ab.
- Übergeben Sie den Wert an das Programm ELADT2PG.
- Ordnen Sie den von diesem Programm zurückgegebenen Wert dem Feld dateChar2 zu.
Lademodule
Die bereitgestellten Lademodule sind Member der SELALMD-PDS, die im Lieferumfang der Rational COBOL Runtime for z/Series-Installation unter z/OS enthalten ist.
- Wenn Sie die Exits nicht ändern, werden die Beispielexits verlinkt und ausgeführt. Es werden keine Änderungen an den Werten vorgenommen.
- Wenn Sie die Exits ändern und in einen neuen Datensatz einfügen, muss der neue Datensatz im Linkbearbeitungsschritt des Build-Scripts referenziert werden. Genauer gesagt muss die Referenz zur SELALMD DD-Anweisung hinzugefügt werden, und zwar vor dem in der übergebenen JCL enthaltenen Eintrag.
- Werden die geänderten Exits zu einem späteren Zeitpunkt erneut geändert, müssen Sie die Programme erneut generieren oder verlinken, damit die Änderungen wirksam werden.