Theorie in der Praxis 1. CPGJDBC • • Schreiben aus dem CICS Lesen aus dem Batch 2. Programmdokumentation 3. Preismodell bei CA Dirk Schuirmann W+M AG CPGJDBC Zugriff auf DB2 (LUW), Oracle, Excel, MSSQL, MYSQL, DB2/OS400 .. aus CICS und Batch. ????? Dirk Schuirmann W+M AG Die Architektur Kommunikation über ESDS (Batch) oder TS (CICS) Batch: BJDBC, BJDBD, BJDBL CICS: JDBC, JDBD, JDBL CICS Batch QJDBCGTx SERVER (xxx.xxxx.xxxx.xxxx) JRE CPGJDBC.exe CPGJDBC WM-Dispo Kalender (MS SQLSERVER 2003) Dirk Schuirmann W+M AG Dirk Schuirmann W+M AG Die Lösung CICS EK85 QJDBCGTO.PHASE QCDBCGTB.PHASE .NET WM-DISPO Kalender SQLSERVER 2003 (10.0.0.21) DB: WMDISPO TB: DISPOKORREKTUR JRE CPGJDBC.jar Die Lösung • Definition der Datenbank in QJDBCGTB DC DC DC DC DC DC CL8'SQLSERV3' DBNAME * CL2'00' TCPIP_SYSID * CL50'JDBC:MICROSOFT:SQLSERVER://10.0.0.21:1433;DATABASE' CL50'NAME=WMDISPO; cpg cpg ' 433/1720 * CL29'000.000.010.000.000.021:04720' * CL10' ',C'C' RESERVED,CONSOLMESSAGES * Die Lösung • Füllen von TS (JDBC) - FILE S444 ADD COMMAND1. 20 'INSERT INTO DISPOAUF'. 40 ‚TRAG (VKHNR,AUFTRA'. 60 'GSNR,LIEFERANTENNR,B'. 80 'ESTELLDATUM,POSANZAH'. 100 ‚L,DISPODATUM) '. Die Lösung • Aufruf Schnittstelle - EDIT CPGCOM. - EXPR QJDBCGTO. - FIELD CPGCOM. 8 'SQLSERV3'. 10 ' '. 17 'TS=JDBC'. Die Lösung • Prüfen von TS (JDBL) MOVE 'JDBL' CPGTSN. 1 READ S444. IF F1 <> 'READY '. EXSR FEHLER-JDBC. ELSE. …. * FEHLER-ABFRAGE VON JDBL Dirk Schuirmann W+M AG CPGJDBC Preiskalkulation (EXCEL) Dirk Schuirmann W+M AG Die Situation Fachabteilung kalkuliert im EXCEL Sonderpreise. Nach aufwendigem Konvertieren .XLS .PRN werden Files per FTP zum VSE geschickt, dort geprüft und gegebenenfalls verarbeitet oder abgelehnt, da fehlerhaft. Die Lösung z/VSE Batchprgramm QJDBCGTC.OBJ QJDBCGTB.PHASE Windows MS EXCEL TN3270 (QTF) JCL ARTIKELSTAMM Fileserver (xxx.xxx.xxx.xxx) JRE CPGJDBC.jar DB:SONDERPR.XLS TB: WGR996 Die Lösung • Kalkulation der Preise im EXCEL – Tabelle SONDERPR.XLS • Standardisierte Spaltenüberschrift • Standardisierte Feldformatierung Artikelnr 4650016 Datum 1.05.2008 Preis 41,95 Die Lösung • ODBC Datenquelle definieren auf Server – Windows • Start – Einstellungen » Systemsteuerung » Verwaltung » Datenquelle ODBC Die Lösung • Definition der EXCEL-Tabelle in QJDBCGTB als Datenbank DC DC DC DC DC DC CL8'SONDERPR' DBNAME CL2'00' TCPIP_SYSID CL50'jdbc:odbc:SONDERPR SYSTEM PASSWORT ' CL50' ' CL29'000.000.010.000.000.164:04720' CL10' ',C'C' RESERVED,CONSOLMESSAGES * * * * * * Die Lösung • Batchprogramm kommuniziert über 3 ESDS Files mit QJDBCGTC – BJDBC Command File – BJDBD Data File – BJDBJ Log File Die Lösung • Füllen von %%BJDBC.VSAM (ESDS) FILE BJDBC ADD BJDBC 24 'SELECT * FROM `WGR996$` '. • Aufruf Schnittstelle MOVEL 'SONDERPR' TO DBNAME. CALL 'QJDBCGTC'. • Lesen von %%BJDBL.VSAM (ESDS) DO LOOP READ BJDBL. IF CPGFRC = 'EF' BREAK ENDIF Die Lösung • Lesen von %%BJDBD.VSAM (ESDS) DO LOOP READ BJDBD. IF CPGFRC = 'EF' BREAK ENDIF ENDDO Die Lösung • Testlauf über QTF – Anwender startet Batchprogramm per QTF für einen Testlauf. – Liste wird per TCP/IP an den User geschickt, User wird per Email informiert. $$ LST CLASS=S,DISP=D,DEST=(,TRANSFER),SYSID=N,USER=RADTKE – Nach Prüfung wird RZ per Email angewiesen, Preise zu speichern. – Liste (s.o.) informiert über Speicherung Programmdokumentation Programmstatistik Dirk Schuirmann W+M AG oder Wo werden welche Ressourcen benutzt?? Dirk Schuirmann W+M AG Dateien/Storagequeues/QTF-Tabellen HL1-Bausteine QPG – Module MAP EXITI/EXITP/EXITT-VAR List-Dokumente QDD - Definitionen DB2 - Tabellen Quellcode der Programme / Bausteine / Module 1. CPG / HL1 2. QPG 3. RPG CPG / HL1 Umwandlung … // EXEC HL1/CPG2,SIZE=256K +INC §N … // EXEC LNKEDT,SIZE=256K … Siehe CPG2 Serviceprogramme / Ausgabe nach CPGSTA CPGURSIT Stelle 26 RPG Umwandlung … // EXEC RPGIAUTO,SIZE=256K +INC §N … // EXEC LNKEDT,SIZE=256K … // UPSI 1 * UPSI 1 = RPG // EXEC CPGSTA,SIZE=(AUTO,40K) +INC §N … QTFTXT CPGSTA Prog1 Prog2 DB2 PRODOBJEKTE Ergebnis EXCEL Auswertungen siehe dazu DEMO