Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Z/VSE und CPG auf System z Neue Wege gehen COURSE TAGUNG 2007 in Würzburg vom 13.-15. Mai Heinz Peter Maassen Lattwein GmbH COURSE 2007.

Ähnliche Präsentationen


Präsentation zum Thema: "Z/VSE und CPG auf System z Neue Wege gehen COURSE TAGUNG 2007 in Würzburg vom 13.-15. Mai Heinz Peter Maassen Lattwein GmbH COURSE 2007."—  Präsentation transkript:

1 Z/VSE und CPG auf System z Neue Wege gehen COURSE TAGUNG 2007 in Würzburg vom Mai Heinz Peter Maassen Lattwein GmbH COURSE 2007

2 2 Übersicht CPG aktuell  Aufrufe von Prozessen auf anderen Plattformen  PDF Dokumente aus Powerlisten erstellen  QIT Power Listen mit FCB Interpretation  CPG5 Statistik und Performance Analyse  CPG und Webservices

3 COURSE CPGShell...1  Wollten Sie nicht immer schon mal aus einem CICS Programm ein PC Programm aufrufen?  Oder automatisch eine Liste nach Erstellen direkt programmgesteuert versenden?  Prozesse auf anderen Systemen zu einer bestimmbaren Zeit ablaufen lassen ?

4 COURSE CPGShell...2  Mit CPGShell ist das kein Problem.  Füllen der Common Area mit den notwendigen Parametern  Aufruf eines Programms mit EXEC CICS LINK  EXPR  Daten werden über TCP/IP an ein JAVA Programm übergeben und der Aufruf durchgeführt.

5 COURSE CPGShell...3  Beispiel Aufruf QIT: EDIT CPGCOM TYPE QIT. EXPR CPGSHELL. FIELD CPGCOM TYPE QIT. 8 'QITSTART' 34 '/C=P /F=QPGASTAT /CL=Q ' 58 ' /U=CPG /P=CPG LOG FCH ' 82 'DEL /O=W:\TESTPDF\ '

6 COURSE CPGShell...4  Hinter QITSTART steht ein Tabellen Eintrag. ********************************************************** QITSTART DC CL8'QITSTART' JAVA AUFRUF * DC CL2'00' TCPIP_SYSID * DC CL50'D:\qit\qit.exe ' * DC CL50' ' * DC CL29' :04799 ' * DC CL10' ',C'C' RESERVED,CONSOLMESSAGES * **********************************************************

7 COURSE CPGShell Connector SHELLNAM = ‘QITSTART‘ ‘/C=P /F=QPGASTAT /CL=Q /U=CPG /P=CPG LOG FCH DEL /O=W:\TESTPDF\ ‘ CPGShell USERPGM COBOL / PL1 ASM / CPG Linux – Windows.. CICS

8 COURSE CPGShell Connector. 2 Daten über die Common Area übergeben: EXEC CICS LINK COMMAREA(‘QITSTART /C=P /F=QPGASTAT /CL=Q /U=CPG/P=CPG LOG FCH DEL /O=W:\TESTPDF\ ‘) LENGTH(100) CPGSHELL CPGShell Java Listener USERPGM COBOL /PL1 ASM / CPG CICS Linux – Windows.. Daten über Common Area: QITSTART /C=P /F=QPGASTAT /CL=Q /U=CPG /P=CPG LOG FCH DEL /O=W:\TESTPDF\ Daten über Common Area: QITSTART /C=P /F=QPGASTAT /CL=Q /U=CPG /P=CPG LOG FCH DEL /O=W:\TESTPDF\ TCP/IP LINK Z/VSE

9 COURSE CPGShell Connector.3 Lesen Temp. Storage: ‘QSHL‘ = Console vom Aufruf! CICS Linux – Windows.. CPGSHELLCPGShell USERPGM COBOL PL1 ASS CPG TCP/IP OUT> done, return value is 0 TS: QSHL LINK

10 COURSE QIT und Power Listen mit FCB Bis zum Release 2.4 wurde der FCB nicht für Kanalvorschübe interpretiert. Listen mussten mit einer entsprechenden Anzahl Leerzeilen erstellt werden. Interpretation der Power FCB Phase bei der Übertragung von Listen mit QIT.

11 COURSE QIT und Power Listen mit FCB Liste mit Interpretation des FCB‘sOhne Interpretation (*) FCB-Phasen müssen vom CICS ladbar sein, z.B. in der PRD2.CONFIG stehen.

12 COURSE Power Listen und PDF manuell Es wäre schön diese Listen ins PDF Format umzusetzen. Mit Spool2PDF von Lattwein kann man eine Liste ins PDF Format übertragen. Spool2PDF aufrufen und als Parameter die IP-Adresse des Java PDF Konverters eintragen, sowie den Source Pfad und den PDF Pfad und den Namen der Liste. Unterstützt sind z.Zt. Text Dateien und LST Dateien.

13 COURSE Power Listen und PDF manuell F:\Java\spl2pdf>java spl2pdfclient f:\qit\Qitpwr\ f:\qit\pdf\ “*“ Starting Connection to PDF_Maker f:\qit\Qitpwr\cicslw.txt.f:\qit\Qitpwr\.cicslw.txt f:\qit\Qitpwr\lc0ck.txt.f:\qit\Qitpwr\.lc0ck.txt START SPATH=f:\qit\Qitpwr\ PDFPATH=f:\qit\pdf\ SFILE=cicslw.txt DATAreceived: DONE SPATH=f:\qit\Qitpwr\ SFILE=lc0ck.txt DATA received: DONE QUIT F:\Java\spl2pdf>

14 COURSE Power Listen und PDF So sieht das aus:

15 COURSE PDF erstellen per Programm Aufruf  Mit CPGShell kann man auch Java Klassen aufrufen.  Dabei muss der Classpath angegeben werden. JAVASPLC DC CL8'JAVASPLC' JAVA AUFRUF * DC CL2'00' TCPIP_SYSID * DC CL50'java -cp F:\Java\spl2pdf\ spl2pdfclient ' * DC CL50' ' * DC CL29' :04799' * DC CL10' ',C'C' RESERVED,CONSOLMESSAGES*

16 COURSE Power Listen und PDF per Programm EDIT CPGCOM TYPE QIT. EXPR CPGSHELL. * 1. Aufruf QIT Powerliste übertragen * EDIT CPGCOM TYPE PDF. EXPR CPGSHELL. * 2. Aufruf: Alle Listen ins PDF Format -O. FIELD CPGCOM TYPE QIT. 10 'QITSTART ' 34 '/C=P /F=QPGASTAT /CL=Q ' 58 ' /U=CPG /P=CPG LOG FCH ' 82 'DEL /O=W:\testpdf\ ' FIELD CPGCOM TYPE PDF. 10 'JAVASPLC ' 34 ' w:\testpdf\ ' 58 ' w:\testpdf\pdf\ "*" '

17 COURSE CPG5 Performance Tool Bei Web Anwendungen sieht man immer als Transaktion: QTCL Wie kann man eine Zuordnung zu den QPG Programmen treffen ? Welche Hostzeiten treten bei CPGXML Anwendungen auf (Receive-Verarbeitung- Send ) ?

18 COURSE CPG5 Performance Tool CPG5/ CPGXML speichert interne Transaktions- daten in einem statischen Bereich. Bei Taskende wird diese Information auf Temporary Storage ausgegeben. Mit QTCT kann ähnlich wie bei CEMT INQ TASK auf die aktuellen Transaktionen geschaut werden:

19 COURSE CPG5 / CPGXML INQ TASK QTCT: Hier sieht man nur aktuell laufende Programme Anzeige QTCPMAIN Usage UHR TaskID Taskno Programm Libr TaskId Taskno Programm Libr AL T00160 PRG AL QTFANZ CPG AL CPGTDTS CPG AL 7.703

20 COURSE CPG5 Performance Tool Mit QTCS TRACE PER wird die Performance einer CPG5/CPGXML Task auf Konsole angezeigt. Angezeigt werden die Receive-Zeit, die Verarbeitungszeit und die Send-Zeit in Milli- Sekunden sowie der Name und die Library des aufgerufenen Programms. Das ist für die Entwicklungsumgebung gedacht!

21 COURSE CPG5 Performance Tool Performance Daten auf Konsole: Receive -C Send Gesamt Programm Lib Taskn F CON-TIME: ,731.6 QPGS CPG F CON-TIME: STARTMENPRG F CON-TIME: MAINL CPG F CON-TIME: DEBUG CPG F CON-TIME: MAINQDD CPG F CON-TIME: MAINL CPG F CON-TIME: MAINQDD CPG F CON-TIME: CPGTDTF CPG F CON-TIME: MAINQDD CPG F CON-TIME: CPGTDTS CPG

22 COURSE CPG5 Performance Tool Diese Daten werden intern in die Temporary Storage Queues QTCLSTAA oder QTCLSTAB gespeichert. Die Performance Records werden automatisch oder auf Anforderung auf SYSLST ausgegeben. Ausdruck/Switch erfolgt nach Transaktionen oder beim SHUTDOWN vom CICS.

23 COURSE CPG5 Performance Tool Mit der Transaktion QTCP können die TS Bereiche gedruckt oder gelöscht werden. Name der Liste QPGASTAT / QPGBSTAT, Power List Klasse Q. ***QTCSTLST*** QTCP A,SWITCH / QTCP B,SWI QTCP A,PRINT / QTCP B,PRI QTCP A,DROP / QTCP B,DRO

24 COURSE CPG5 / CPGXML Print (Statistik) C P G 5 / X M L Statistik CICSTEST :28:19 SEITE 1 Startzeit Task No. IP-ADRESSE CPGTIS Programm Lib Laufzeit FFFFFFFF STARTMEN PRG5 0,1838 Sec TPSN1 CPG5 0,0669 Sec FFFFFFFF TPSN1 CPG5 0,0234 Sec CICSLNK QPG 0,1321 Sec CICSLNK QPG 0,7297 Sec QTFB CPG5 0,2354 Sec QDD CPG5 0,0369 Sec QTFV CPG5 4,1487 Sec QPGDC QPG SORTQTFS QPG TPSN1 CPG5 0,0257 Sec QDD CPG5 0,0116 Sec QDD CPG5 0,0119 Sec QDD CPG5 0,0116 Sec

25 COURSE CPG5 Performance Tool In der CICS PLTSD den Eintrag setzen: DFHPLT TYPE=ENTRY,PROGRAM=QTCSTLST * PRINT CPG5 STATISTICS beim Shutdown

26 COURSE CPG5/CPGXML Temporary Storage Purge In der CICS PLTIN den Eintrag setzen: DFHPLT TYPE=ENTRY,PROGRAM=Q5TSQCLR * AKTIVIERT AUTO TSQUEUE PURGE alle 30 Minuten Löscht Temporary Storage Queues, deren CPGTIS seit 2,5 Stunden nicht mehr benutzt wurde.(*) – (*) Die Zeit kann im Q5TSQCLZ.A gesetzt werden. Dies bezieht sich auf CPG5 und CPGXML Storage Bereiche die mit der CPGTIS starten.

27 COURSE CPG5/CPGXML Temporary Storage Purge So sehen die Consol Ausgaben aus: F Q5TSQCLR ---> STARTET AT: 12:36:57 F Q5TSQCLR ---> STARTET AT: 13:06:57 F Q5TSQCLR ---> STARTET AT: 13:36:57 F Q5TSQCLR ---> TSQ DELETE: - CPG5 F Q5TSQCLR ---> TSQ DELETE: - TPTC F Q5TSQCLR ---> TSQ DELETE: - CPG5 F Q5TSQCLR ---> TSQ DELETE: - TPTC F Q5TSQCLR ---> TSQ DELETE: - CPG5

28 COURSE SOAP ist... (*) Der Begriff Soap (engl., für Seife) hat mehrere Bedeutungen: die Seifenoper (vom englischen: „Soap-Opera“) eine US-amerikanische Comedy-Serie, die in Deutschland unter dem Titel Soap – Trautes Heim im Fernsehen lief. Die Abkürzung SOAP bzw. Soap steht für: Simple Object Access Protocol (plattformunabhängiges Kommunikationsprotokoll bei Web Services) Snakes on a Plane, ein Film Subjective, Objective, Assessment, Plan, ein Dokumentationsschema in der Medizin das Grafikprogramm Soap der Firma MetaCreations (Kai Krause) * Aus Wikipedia.de Nicht 

29 COURSE Was ist ein Web Service ? Web Services sind aufrufbare Dienste im Internet. In Web Services ist die Kommunikation und die Methode standardisiert. Web Services sind registriert. Sie werden verwendet um einen Datenaustausch zwischen Programmen auf verschiedensten Rechnern auszuführen. Verwenden intern meist XML Format und HTTP Protokoll.

30 COURSE Was ist SOAP ? Steht für: Simple Object Access Protokoll. Ist ein Protokollstandard des W3C. Macht Anwendungen webfähig und ermöglicht die Kommunikation von verteilten Anwendungen und Objekten. SOAP ist ein RPC (Remote Procedure Call), der Daten in XML darstellt und meist HTTP als Übertragungsprotokoll verwendet.

31 COURSE Was ist SOAP ? (2) SOAP ist unabhängig von Betriebsystem, Programmiersprache und Objektmodell und kann leicht in verschiedene Plattformen implementiert werden. SOAP arbeitet sowohl mit Objekt orientierten als auch mit nicht- objektorientierten Programmiersprachen. Die von SOAP aufgerufenen Funktionen sind eher statische Methoden. Vorteile von SOAP sind Standardisierung, Plattformunabhängigkeit, sowie die robuste und skalierbare Implementierung.

32 COURSE Was ist SOAP ? (3) SOAP ist ein XML-basiertes Protokoll, das aus drei Teilen besteht: der Spezifikation für einen Umschlag (Envelope), der ein Regelwerk definiert, welches beschreibt, was in einer Nachricht enthalten ist, von wem es wie verarbeitet werden soll, und ob einzelne Daten optional sind oder enthalten sein müssen ein Satz von Kodier- und Ordnungsregeln (Serialization), welcher Instanzen von anwendungsspezifischen Datentypen beschreibt eine Konvention, um Remote Procedure Calls und eventuelle Antworten auf diese zu repräsentieren.

33 COURSE Ziele von SOAP E rweiterbarkeit Einfachheit Einsatz auf verteilten Systemen, auch durch Firewalls hindurch Das Rad nicht neu zu erfinden, sondern aktuelle Standards (HTTP und XML) zu nutzen

34 COURSE SOAP: Beispiele Beispiele für SOAP: eBay Price Watcher Checks current bid price of an eBay auction. Currency Exchange Rate Exchange rate between any two currencies Domain Name Checker Checks whether a domain name is available BabelFish Interface for AltaVista's Babelfish service. FedEx Tracker Access to FedEx Tracking information SOAP Web Search SOAP Interface to major search engines Text-To-Speech (TTS) A Text-To-Speech (TTS) web service. Airline Fare Checker Returns airfare/flight information. German Bank Code Lookup (BLZ) Lookups German bank codes for name, city and zipcode Stock Quote Stock quote service which actually provides more than just quote. Und viele mehr... siehe Internet.

35 COURSE SOAP: Applications Server Web Anwendungsserver: Zentrale Anwendung – leichter wartbar Keine SW auf Clients Zugriffe auf Datenbanken Netzwerkfähige Anwendungen –viele gleichzeitige Benutzer Das ist das was wir heute schon kennen HTTP: Intranet/ Internet

36 COURSE SOAP: Applications-Server Erweiterungen Web Anwendungsserver kann mit mehreren DB verbunden sein Internetverbindungen weltweit PC, Laptop, Handy, PDA,... Transaktion Management, Security, Load Balancing HTTP: Intranet/ Internet Firewall Application Server (IBM WebSphere, BEA,... ERP Systeme, i/z/p Series Database Server Oracle, DB2,...

37 COURSE SOAP: Webservices Web Services sind automatisierbare Dienste per Internet (oder Intranet) Dabei kommunizieren Applikationen, es werden also nicht HTML-Seiten zu einem Webbrowser geschickt, die von einem Menschen betrachtet werden, sondern Programme tauschen Daten und starten auf entfernten Rechnern Funktionen Die weltgrößten Softwarehersteller haben sich auf Prozeduren und Protokolle für Web Services geeinigt, nämlich: SOAP (Simple Object Access Protocol) WSDL (Web Services Description Language) UDDI (Universal Description, Discovery, and Integration) Intranet/ Internet Webservices Application-Server für SOAP... Firewall

38 COURSE SOAP: Webservices (2) Dadurch wird standardisiert, wie auf entfernten Rechnern Funktionen aufgerufen werden und wie automatisierbarer Datenaustausch erfolgt Das Besondere an SOAP Web Services ist die allgemeine Akzeptanz, Kommunikation ist sogar zwischen den beiden konträren Plattformen Sun / Java und Microsoft /.NET möglich Anwendungen mit SOAP-Schnittstelle lassen sich viel leichter kombinieren, als dies früher möglich war Kosten für Integrations-Middleware und EAI (Enterprise Application Integration) werden gesenkt Viele Web Services per SOAP werden bereits heute im Internet angeboten Intranet/ Internet Webservices Application-Server für SOAP... Firewall

39 COURSE SOAP: Webservices (3) Viele große Anwendungen, wie zum Beispiel mySAP®, aber auch viele Office- Programme, wie zum Beispiel Microsoft Project 2002 unterstützen Web Services per SOAP. Per Web Services als Dienste angebotene Geschäftsprozesse sind Voraussetzung für moderne IT-Konzepte, die zur Realisierung des agilen RTE (Real-time Enterprise) eine flexible SOA (Service Oriented Architecture) benötigen Intranet/ Internet Webservices Application-Server für SOAP... Firewall

40 COURSE SOAP: Anwendungsbeispiel Onlineshop Ein Kunde möchte in einem Onlineshop Artikel bestellen. Der Onlineshop ist in einen Applikationsserver realisiert.  Dieser Applikationsserver überprüft über den SOAP Web Service des Servers A, ob die angegebene Adresse gültig ist,  verifiziert über den SOAP-Dienst B die Kreditkartennummer,  ermittelt über den SOAP-Dienst C die für das jeweilige Land zu berechnenden Steuern (Umsatzsteuer, Luxussteuer,...),  erfragt beim SOAP-Dienst D tagesaktuelle Währungsumrechnungskurse, um den Endpreis korrekt berechnen zu können und  zeigt dem Benutzer alle Ergebnisse gesammelt im Webbrowser an. Intranet/ Internet Webservices Application-Server für SOAP... Firewall

41 COURSE SOAP: Anwendungsbeispiel Onlineshop Intranet/ Internet Web Applications-Server Firewall SOAP Dienst A SOAP Dienst C SOAP Dienst B Dienst A = Adresse prüfen Dienst B = Kreditkarte prüfen Dienst C = Steuern ermitteln Dienst D = Umrechnungskurs SOAP Dienst D

42 COURSE SOAP und z/VSE CICS2WS ist ein Java Programm um Programme zu erzeugen, die  auf Web Services zuzugreifen  oder von Webservices benutzt werden  Datenaustausch geht über die Common Area Generier- tes Ass. Zugriff (SOAP) CICS Anwendung Web Service A LINKSOAP Z/VSE Windows, Linux,... Common Area SOAP-XML

43 COURSE SOAP und CPG5 SOAP Anwendungen können heute schon einfach mit CPGXML VSE Anwendungen implementieren. Der Host wird als Server Komponente in die SOAP Anwendung eingebunden. CPGXML Anwendung Web Service A SOAP Z/VSE Windows, Linux,... SOAP-XML

44 COURSE VSAM Tuning

45 COURSE VSAM Katalog Check * $$ JOB LSM9,,,A * $$ LST CLASS=V,DEST=(*,VSEMAINT) // JOB MAASSEN // OPTION PARTDUMP // DLBL UCAT220,'UCAT220',,VSAM,CAT=UCAT220 // EXEC VSMLCAT,SIZE=(AUTO,64K) UCAT220 /* /& * $$ EOJ VSMLCAT ist bei Lattwein erhältlich

46 COURSE VSAM Katalog Check V S A M - C A T A L O G - M O N I T O R CAT = UCAT ********************* V O L U M E PRD220 ********************* C L U S T E R - N A M E F FORG CREATE EXPIRE OCC INS AVG MAX CISIZ KEYL KEYP C ASF.CLL.PROD C KSDS % ASF.CLL.PROD.DATA D ASF.CLL.PROD.INDEX I BESTAND.NOTA C KSDS % 0% BESTAND.NOTA.DATA D BESTAND.NOTA.INDEX I

47 COURSE Wie geht das mit – CPGJDBC ?  SELECT Befehl in Temp. Storage: ‘JDBC‘ schreiben.  EXEC CICS LINK COMMAREA(DBN) CPGJDBCCPGJDBCD ORACLE DB2 MYSQL MSSQL ACCESS EXCEL... USERPGM COBOL PL1 ASS CPG CICS Command: Select * From Kunden Command: Select * From Kunden TCP/IP LINK TS: JDBC Command: Select * From Kunden Command: Select * From Kunden

48 COURSE Wie geht das mit – CPGJDBC ? In Temporary Storage: ‘JDBD‘ stehen die Daten vom SELECT CPGJDBCCPGJDBCD ORACLE DB2 MYSQL MSSQL ACCESS EXCEL... USERPGM COBOL PL1 ASS CPG TCP/IP 0001;LATTWEIN; 0002;IBM ; 0003;BRUNATA ; 0004;WESSELS ; 0001;LATTWEIN; 0002;IBM ; 0003;BRUNATA ; 0004;WESSELS ; TS: JDBD LINK

49 COURSE Verbindungen schaffen...  s aus Online/ Batch Programmen, auch für COBOL, usw.  SMS aus Online/ Batch Programmen  MAIL2HOST – Der Host empfängt s und wertet diese aus.  J_QIT - ein QIT für alle Plattformen. Wurde bei der COURSE 2005 gezeigt !

50 COURSE Verbindungen schaffen...  CPGJDBC  Der Zugriff auf Datenbanken ausserhalb vom VSE  CPGSAPShell JCO Connector zu SAP/R3  CPGXML  VSE Daten in andere Anwendungen einbinden  CPG5  VSE Daten im Browser modern visualisieren Wurde bei der COURSE 2006 gezeigt !

51 COURSE Verbindungen schaffen...  CPGShell andere Plattformen vom VSE fernsteuern  Einfache PDF Dokumente aus Powerlisten erstellen  CPG5 Performance und Statistiken  CPG und Web Services

52 COURSE CPG5...der einfache Weg  Where do you want to go today?  Packen Sie es an, - wir helfen Ihnen -  Mit neuen Ideen - Schulung für Systemer  Mit neuen Produkten  Auf zSeries mit zOS, zVSE und Linux on Z, Windows, Linux on Intel,...  - und vor allem: gerne.

53 COURSE CPG5...der einfache Weg Vielen Dank für Ihre Aufmerksamkeit.


Herunterladen ppt "Z/VSE und CPG auf System z Neue Wege gehen COURSE TAGUNG 2007 in Würzburg vom 13.-15. Mai Heinz Peter Maassen Lattwein GmbH COURSE 2007."

Ähnliche Präsentationen


Google-Anzeigen