64
State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen . Lattwein GmbH . [email protected]

State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. [email protected]

Embed Size (px)

Citation preview

Page 1: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

State of the Art

CPG – Lösungen

43. Course Erfurt 26.-28. Mai 2013

Heinz Peter Maassen . Lattwein GmbH . [email protected]

Page 2: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

343. Course Erfurt 26.- 28. Mai 2013

• CPGJDBC - CPGSHELL

• Werbedesigner mit CPGXML nach VSAM und DB2 (i-Series )

• SAP - IDocs automatisch in eine MYSQL DB abstellen

• WebService Deutscher Wetterdienst für Energieausweise

• Kabis – WebService für Apotheken Großhandel

• Warenbestellungen im KFZ Handel

• Allgemeiner WebService bei einer BG

Agenda Course Erfurt

Page 3: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

• z/VSE Releases werden jetzt alle 2 Jahre aktualisiert (wie z/OS und z/VM).

• Alle Lattwein Produkte laufen auf den aktuellen z/VSE und z/OS Versionen.

• IBM Hursley arbeitet an einem neuen CICS/TS für z/VSE.

Neues von IBM

443. Course Erfurt 26.- 28. Mai 2013

Page 4: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

5

• Was ist CPG?

• Die Antworten lauten meist:

– RPG für Bildschirme

– Proprietäre Programmiersprache

CPG

43. Course Erfurt 26.- 28. Mai 2013

Page 5: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Aufgabe:• Schreibe in Zeile 12, Position 40 einen

Stern:

CPG

6

*

Page 6: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

C EXCPT 20

OBILD E E 20O AC 1240 ‘*‘

O = SchreibeA = Attribut Alpha ungeschützt

C = Cursor ins Feld setzen‘*‘ = Was geschrieben wird

CPG

7

1973

CPG

43. Course Erfurt 26.- 28. Mai 2013

Page 7: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• CPG setzt Anwendungsprogramme, die mit einer RPGII ähnlichen Syntax erstellt wurden, in Assembler Programme um.

• Diese Assembler Programme sind hocheffizient und performant.

CPG

8

Page 8: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Mit CPG5 visualisieren Anwendungen die Ergebnisse im Browser.

• Der Host kann als Datenserver für heterogene Plattformen einfach benutzt werden.

• Diese Schnittstellen heißen CPG5 und CPGXML.

CPG5 - heute

9

Page 9: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

Seminare

• Wir bieten Seminare an, bei Bedarf bitte anfragen.

– VSE Einführung (*) 5 Tage

– VSE/VSAM-Grundlagen 5 Tage

– VSE-Operating 5 Tage

– VSE-Kompakt  Teil 1:  VSE-Installation 5 Tage

– VSE-Kompakt  Teil 2:  VSE-Administration  5 Tage

– * Inside TCP/IP for VSE 3 Tage

• 4 Tage mit BSI Stack 4 Tage

– CICS Transaction Server 4 Tage

– Dump-Analyse 2 Tage

– Performance 3 Tage

– IBM Konnektoren 2 Tage

– z/VSE Security ( in Planung ) 2 Tage

10

(*) in Cooperation mit Integrata Seminare - nicht nur für System Programmierer ! 43. Course Erfurt 26.- 28. Mai 2013

Page 10: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• In der CPGURSI2 sollte das Millennium Fenster auf 50 gesetzt werden. (Alle < 50 = 20xx, Alle >= 50 = 19xx).

• Windows 7 oder 8 erfordern ein Update für Visual Basic 6. Das kann bei Lattwein angefordert werden. Damit laufen sowohl QIT als auch NetPage unter Windows 7 oder 8.

Hinweise

11

Page 11: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1243. Course Erfurt 26.- 28. Mai 2013

• Seit 1995 realisieren wir Lösungen, die anderen Plattformen (Linux-Unix-Windows) einfach in das VSE Umfeld zu integrieren.

• Das Prinzip der IBM Konnektoren besser nutzbar zu machen war und bleibt unser Ziel.

• Daraus entstanden sind CPG5 + viele nützliche Tools.

• Leider sind nicht alle unseren Ideen gefolgt.

Andere Welten

Page 12: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1343. Course Erfurt 26.- 28. Mai 2013

• Mit Mail4Host können Emails einfach, wie auf einen Drucker ausgegeben, werden.

• Auch der Versand einer Email als SMS ist möglich.

• Email aus CICS Programmen und von Batch möglich.

• Alle Programmiersprachen sind unterstützt.

MAIL4Host

Page 13: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1443. Course Erfurt 26.- 28. Mai 2013

smptlistn

Mail versenden:

MAIL4Host

User Application(CPG, Cobol, PL1,

C,ASS, . .

@NEWMAILFROM: Mainframe Lattwein GMBH <[email protected]> TO: Hp.Maassen Lattwein GmbH<[email protected]> SUBJECT: Email Benachrichtigung

TD-Queue: MAIL

QCFTCPML

QCFTCPMA MAIL: 192.168.179.198:01416

tcp

WRITEQ TD

Trigger

Über Mail Serveran Empfänger

Page 14: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1543. Course Erfurt 26.- 28. Mai 2013

• Online mit QPG:

options dat -d

Kunde 30.-c Kunde = ‘ATLANTIC GmbH‘

'MAIL' LIST MAILMAS. * Ausgabe auf TD-Queue MAIL mapo qende

@NEWMAIL FROM: Mainframe Lattwein GMBH <[email protected]> TO: Hp.Maassen Lattwein GmbH<[email protected]> SUBJECT: Email Benachrichtigung X-PRIORITY: 1 (HIGHEST) @MAILID: 0000001 @MAILBODY Sehr geehrte Damen und Herren, hiermit teilen wir Ihnen mit, dass MAIL4Host erfolgreich installiert wurde. Mit freundlichen Grüßen Kunde §Kunde @ENDMAIL

MAIL4Host

QPG Programm EMAIL senden

Email Inhalt steht in einem QTF Dokument

Page 15: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Batch JCL - CPGQMAIL liest Daten von SYSIPT und sendet diese als Email weg.

// JOB MAILSND // DLBL QMAIL,'QMAIL.VSAM.TEMP',,VSAM,CAT=UCAT222 // EXEC CPGQMAIL @NEWMAIL FROM: [email protected]: [email protected]: Mit anhängender File@MAILBODY Das ist eine Email von CPGQMAIL. Mit Anhang Bestellt.csvGESENDET: VOM MAINFRAME @ATTACHMENT: "Bestellt.csv" ARTIKEL; MENGE; EINZELPREIS; GESAMTPREIS ART0001; 00001; 05,99; 05,99 ART0023; 00004; 16,99; 67,96 ART0159; 00012; 02,99; 35,88 @ENDMAIL/*/&

MAIL4Host

16

Page 16: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1743. Course Erfurt 26.- 28. Mai 2013

• CPGShell verbindet z/VSE mit Plattformen wie Windows oder Linux. Man kann auf jeder Plattform Programme oder Befehle aufrufen und ausführen.

• CPGShell startet auf einem PC eine .bat oder Command File, in der verschiedene Übergabe Parameter bereits gesetzt sind.

• CPGShell startet einen FTP von einem PC an den Host oder andersrum- in einem Jobstep.

CPGShell

Page 17: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1843. Course Erfurt 26.- 28. Mai 2013

• CPGShell ruft ein Programm auf dem PC auf und überträgt Parameter, die in der PC Anwendung verbucht werden. Es kann auch eine PC Datei mit den Parametern erstellt werden, die dann übergeben wird.

• Die Übertragung erfolgt mit TCP/IP was heute auf jedem z/VSE verfügbar ist.

• Der Programmierer braucht keine TCP/IP Kenntnisse.

CPGShell

Page 18: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

1943. Course Erfurt 26.- 28. Mai 2013

• Beispiel:

// EXEC CPGSHBAT,PARM='IPADDR=192.168.179.040:04799,MODUS=2' $$$$$$$$00E:\temp\UPD250_FT.qit $$$$$$$$00E:\temp\UPD250_MV.bat UPD250_FT.txt UPD250_FT.zip /* // DLBL QMAIL,'QMAIL.VSAM.TEMP',,VSAM,CAT=UCAT222 // EXEC CPGQMAIL @NEWMAIL From: Service der Lattwein GmbH <[email protected]> . . . @PCATTACHMENT: UPD250_FT.zip @ENDMAIL /* // EXEC BACEMT BWAIT 0005 /* // EXEC CPGSHBAT,PARM='IPADDR=192.168.179.040:04799,MODUS=2' $$$$$$$$00E:\temp\UPD250_ARC.bat UPD250_FT.zip /*

CPGShell

Page 19: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2043. Course Erfurt 26.- 28. Mai 2013

• UPD250_MV.BAT:rem Übertragen Datei nach C:\C:\Programme\Lattwein\Mail4Host\SMTP4Host\files\

C:\Programme\7-Zip\7z.exe a -tzip e:\Temp\%2 e:\Temp\%1move /Y e:\Temp\%2 C:\Programme\Lattwein\Mail4Host\SMTP4Host\filesexit

• UPD250_ARC.BAT:rem Uebertragen Datei von C:\Programme\Lattwein\Mail4Host\SMTP4Host\files\ ServerRem und umbenennen in jjjjmmdd_Datei

cd \for /f %%i in ('realdate.com /d') do (set logname=%%i)for /f %%i in ('realdate.com /t') do (set logname2=%%i)

move /Y C:\Programme\Lattwein\Mail4Host\SMTP4Host\files\%1 S:\Austausch\Maassen\Archiv\%logname%_%logname2%_%1

20130527_142537_UPD250_FT.zip

CPGShell

Page 20: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2143. Course Erfurt 26.- 28. Mai 2013

• Für z/OS wurde CPGShell erweitert und auf das CALL API von IBM umgestellt.

• Dieses API kann im z/VSE ab 4.1 und Source kompatibel unter z/OS eingesetzt werden.

• Unser neuer Kunde setzt CPGShel2 ein um Daten aus einer 3270 Anwendung an ein .Net Programm zu senden.

• CPGShell läuft auch unter Windows 7 und 8 sowohl im 32 als auch im 64 Bit Mode.

CPGShel2 für z/OS

Page 21: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2243. Course Erfurt 26.- 28. Mai 2013

• Ablauf CICS:

CPGShell / CPGShel2

User Applikation

QSHELLTB

CPGSHELL(ASM)

QITSTART /C=P /CL=Q /O=F:}Temp/

QITSTART00D:\Programme\Lattwein\QIT\qit.exe 192.168.179.040:04799

CPGSHELL(Java)

QIT.exe /C=P /F=QPGASTAT /CL=Q /O=W:\TESTPDF\ . . .

EXEC CICS LINK

PC: IP=192.168.179.40

Page 22: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2343. Course Erfurt 26.- 28. Mai 2013

• Ist ein z/VSE Konnektor, der es ermöglicht aus allen Programmiersprachen JDBC Befehle an eine Nicht VSE Datenbank abzusetzen.

• Daten können von anderen Plattformen gelesen aber auch dorthin geschrieben werden.

• Es gibt sowohl eine Online (CICS) Schnittstelle, die über EXEC CICS LINK aufgerufen wird, als auch eine CALL Schnittstelle für Batch.

CPGJDBC

Page 23: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2443. Course Erfurt 26.- 28. Mai 2013

• Der Aufruf erfolgt mit einem Unterprogramm, das über TCP/IP mit einer Java Anwendung auf einem Server kommuniziert.

• Unterstützt sind heute: DB2/UB unter Linux, Windows, I-Series, Derbie, Oracle, MSSQL Server 2003/2005/2008, MYSQL, MS EXCEL, MS Access, Text Driver. Weitere können kurzfristig ergänzt werden. Dabei ist immer der volle Funktionsumfang der jeweiligen Datenbank vorhanden.

CPGJDBC

Page 24: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2543. Course Erfurt 26.- 28. Mai 2013

• Es werden SQL Befehle und Stored Procedures zum Lesen und Update unterstützt.

• Die Daten werden über Temporary Storage oder VSAM ESDS Files (Batch) ausgetauscht.

• In die Logfile werden alle aufgetretenen Fehler gespeichert, so dass man diese analysieren kann.

CPGJDBC

Page 25: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2643. Course Erfurt 26.- 28. Mai 2013

CPGJDBC

• Daten holen von externer Datenquelle

CPGJDBC

Appl01

QJDBCGTO

LIN

K

MYSQL05A00:jdbc:mysql://192.168.179.23:3306/WebCM?user=USR01&&password=PWD01

SELECT KDNRA,FIRMA, PLZ,ORT,GPART FROM CPGDBA.PARTNERDB WHERE PLZ = ‘49090‘

QJDBCGTB

TS: termJDBC

MYSQL05A00

Page 26: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2743. Course Erfurt 26.- 28. Mai 2013

• Resultat aus MYSQLholen

CPGJDBC

Appl01

QJDBCGTO

LIN

K SELECT KDNRA,FIRMA, PLZ,ORT,GPART FROM CPGDBA.PARTNERDB WHERE PLZ = ‘49090‘

TS: termJDBC

MYSQL05A00

CPGJDBC00267:Wessels:49090:Osnabrück:SchuirmannTS: termJDBD

Page 27: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2843. Course Erfurt 26.- 28. Mai 2013

Werbedesigner:Ablauf der Datenbeschaffung

iSeriesDB2

z/VSE VSAM

QPG Programm

Benutzereingabe der ZAN

CPGXML(auf

Webserver)

CPGJDBC

Page 28: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

2943. Course Erfurt 26.- 28. Mai 2013

WerbedesignerC# Sourcecode: CPGXML-Aufruf

Page 29: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3043. Course Erfurt 26.- 28. Mai 2013

WerbedesignerC# Sourcecode: CPGXML-Daten

Page 30: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3143. Course Erfurt 26.- 28. Mai 2013

TS Daten auf : TASKNO + “JDBC”

defaults dec=, trz=_ maxrows=200select weja, wewo, wenr, bovkb from dbadm.EWERB where wezan = 20081508 and wefir = '36' and weabrd = 'B' and weja >= 2012-1 order by weja, wewo__________________________________________________________________________

-c. select cpgsin. * Tasknummer holen movel tskna to cpgtsn. * Storage-Name move 'JDBC' to cpgtsn. * Storage-Name dbname = 'BWDB2 '. * Datenbankname progn = 'QJDBCGTO'. * JDBC Programm edit cpgcom. * write jdbc segm opt. * defaults dec=,trz. write jdbc segm sel. * select weja,wewo,. program cicslnk qpg. * LINK QJDBCGTO

Werbedesigner:JDBC Programmcode

Page 31: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3243. Course Erfurt 26.- 28. Mai 2013

Werbedesigner: Daten Ansicht

Page 32: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3343. Course Erfurt 26.- 28. Mai 2013

• Für einen Kunden wurden SAP IDoc Daten in eine MYSQL DB geladen.

• Dies geschieht über eine zentrale C# Anwendung, die alle gesendeten IDoc Daten (z.B. Preisänderungen) analysiert und dynamisch in mehreren MYSQL Tabellen lädt. Das kann aber auch jede andere relationale Datenbank sein.

• Neue Felder werden den Tabellen automatisch hinzugefügt.

SAP IDoc Importer

Page 33: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3443. Course Erfurt 26.- 28. Mai 2013

Das Datenformat ist XML mit beschreibenden XSD Informationen

Es werden folgende Strukturen geliefert:

• Artmas (Artikelhauptinformationen)83 Tabellen mit insg. 1879 Feldern, 82 Beziehungen

• Infrec (Lieferant- und Verpackungsinformationen)22 Tabellen mit insg. 324 Feldern, 21 Beziehungen

• Bommat (Stücklisten-, Pfandinformationen, etc.)10 Tabellen mit 187 Feldern, 9 Beziehungen

SAP IDoc Konverter

Page 34: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

Verdichtung

IDoc-Importer

Die Verarbeitung der IDocs

35

SAP-PI

XML-Dateie

n

Windows

Dienst

MySQL

Artmas

Bommat

Infrec

10 Tabellen

3 Tabellen

2 Tabellen

43. Course Erfurt 26.- 28. Mai 2013

Page 35: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3643. Course Erfurt 26.- 28. Mai 2013

Vorteile:

• Alle Daten können mit der CPGJDBC Schnittstelle im z/VSE gelesen werden.

• Die alte Datenbasis auf VSAM kann mit den aktuellen Daten aktualisiert/ergänzt werden.

• Ohne zusätzliche SAP Lizenzen kann die bestehende Anwendung auf diese Daten zugreifen.

• Es sind nur die bereitgestellten Daten einsehbar.

SAP IDoc Konverter

Page 36: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3743. Course Erfurt 26.- 28. Mai 2013

BrunataMünchenWebService

Klimafaktoren bei der Brunata

PL_KLIMA_FAKT(DB2)

Klimadaten DWD

BrunataHürthKlimaFaktorService

BrunataHürthCPG WebConnector

BrunataHürthBatch-Job1 x pro Wo

Brunata HürthEnergie-AusweisOnline

.

. Und andere

. Anwendungen

.

Page 37: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

38

Klimadaten DWD

Klimafaktoren bei der Brunata

43. Course Erfurt 26.- 28. Mai 2013

Page 38: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

3943. Course Erfurt 26.- 28. Mai 2013

BrunataMünchenWebService

Klimafaktoren bei der Brunata

Page 39: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

40

WebServiceKabisWS

z/VSE als Webservice Provider

CPGXML Inte

rnet

z/VSE

Der WebService Kabis (2007)nimmt Bestellungen von Apotheken entgegen oder gibt Auskunft über die Verfügbarkeit von Medikamenten.

43. Course Erfurt 26.- 28. Mai 2013

Page 40: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

4143. Course Erfurt 26.- 28. Mai 2013

z/VSE als Webservice Provider

WebServiceKabisWS

Inte

rnet

Der WebService KABIS wurde für die Firma Kapferer entwickelt, und konnte von allenApotheken Kunden aufgerufen werden.

KABIS war zunächst ein Auskunftssystem mit dem die Apotheke die Verfügbarkeit von bestimmten Medikamenten nachfragen konnte.

Alle aktuellen Daten lagen in VSAM Dateien und DB2 Datenbanken im zVSE.

Über CPGXML hat der Webservice KABIS auf die VSE Daten zugegriffen und im Internetbereit gestellt.

Page 41: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

4243. Course Erfurt 26.- 28. Mai 2013

z/VSE als Webservice Provider

WebServiceKabisWS

CPGXML

z/VSE

KabisWS wurde dann weiter ausgebaut und hat es auch ermöglicht Bestellungen über Internet abzusetzen.

Im zVSE war eine gewachsene Cobol Infrastruktur für 3270 Anwendungen vorhanden.

Die Datenkommunikation zwischen WebService und den Cobol Anwendungen erfolgte über CPG5 und QPG, die die Daten über die Common Area an die Cobol Anwendung übergeben haben sowie von dort empfangen haben.

QPG war die Datenverteiler Anwendung auf die angeschlossene Cobol Applikation.

Page 42: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

4343. Course Erfurt 26.- 28. Mai 2013

KABIS

Diese Folien hat Herr Roth,von der Firma Kapferer 2008erstellt.

Page 43: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

4443. Course Erfurt 26.- 28. Mai 2013

KABIS

Page 44: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

4543. Course Erfurt 26.- 28. Mai 2013

KABIS

Page 45: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

4643. Course Erfurt 26.- 28. Mai 2013

KABIS

Page 46: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

KABIS

4743. Course Erfurt 26.- 28. Mai 2013

Page 47: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013 48

TecCom Client

z/VSE als Webservice Client

Wesselsz/VSE

TecCom stellt einen zentralen Bestellservice für die Automobil Großhändler zur Verfügung.www.teccom.de

Aus mehrerenAnwendungen können Bestellungen über TecCom erfolgen.

z/VSE spricht über TCP/IP den TecCom Client an, der über WebServices bei den verschiedenen Lieferanten Bestellungen auslöst.

WebServiceTecCom

Lieferanten wie z.B. Hella, Bosch ..

43. Course Erfurt 26.- 28. Mai 2013

Page 48: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013 49

z/VSE als Webservice ClientTecCom

WBSS A(ECB)

ECB DS X‘00000000‘Pointer

TWA

Programm

Anwendung 1

INQU|ORDE

X‘40008000

TS

TDPO

ST

40C3D6C6F5 . .

43. Course Erfurt 26.- 28. Mai 2013

Page 49: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Über die PLTIN werden die Transaktionen WBSR und WBSS gestartet.

• WBSS schreibt in eine TSQUEUE die Adresse eines ECB (Event Control Blocks)

• Und wartet auf das Ereignis – jemand hat einen TD – Satz für Inquiry oder Order abgestellt und den ECB gepostet.

• Lesen TD –Satz und Senden an den WebService TecCom.

• Wenn alles OK – ECB Löschen und auf nächsten Event warten – sonst Konsol Meldung.

WBSS – Send

50

Page 50: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

51

z/VSE als Webservice ClientTecCom

WBSS

Programm INQU|

ORDE

TD

TecComWS

TCP/IP

40C3D6C6F5 . .

43. Course Erfurt 26.- 28. Mai 2013

Page 51: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

52

z/VSE als Webservice ClientTecCom

WBSR

TecComWS

TCPIP

User Taskzum

Verbuchen

TS Daten von

TecCom

ListenerStart TASK

Antwort Anfrage

DB2

VSAM

43. Course Erfurt 26.- 28. Mai 2013

Page 52: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

5343. Course Erfurt 26.- 28. Mai 2013

• WBSR wird als Listener gestartet (wartet auf Daten).

• Falls der WebService Daten gesendet hat wird der Listener aktiv und liest diese Daten

• WBSR schreibt diese Daten auf TS und startet die Transaktion die beim Senden der Anfrage/ Bestellung hierfür definiert wurde.

• WBSR wartet weiter auf Daten vom WebService TecCom.

WBSR - RECEIVE

Page 53: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013 54

z/VSE als Webservice Client

Warum 2 Transaktionen ?

Wir wissen nicht, wie lange eine Antwort vom TecComWS dauert.

Eine Rückmeldung kann auch zeitverzögert erst nach Minuten eintreffen.

Trotzdem können weitere Anfragen oder Bestellungen ausgelöst werden.

Asynchrone Verarbeitung !

Warum nicht einfach über TD starten?

Bei CICS TS kann es vorkommen, dass eine TD Queue nicht mehr getriggert wird. Das bedeutet: Es werden keine Bestellungen mehr ausgeführt.

Wir behalten die Kontrolle über TD, auch wenn eine Task abbricht, wird die

Transaktion WBSR oder WBSS wieder neu gestartet.

43. Course Erfurt 26.- 28. Mai 2013

Page 54: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

5543. Course Erfurt 26.- 28. Mai 2013

• WebService benutzen von zVSE zum Drucken aus Batch und Online benutzen.

• Anwendung ist komplett in PL1 entwickelt

• Alle Listen werden von einem WebService in PCL5/6 umgewandelt, mit Formularen versehen und sowohl zentral archiviert als auch gedruckt.

• Zunächst war dieser WebService nur aus Windows, Linux und Unix aufrufbar.

• Die Lattwein GmbH hat eine offene Schnittstelle geschaffen, die diesen WebService auch vom z/VSE bedienen kann.

z/VSE als Webservice Client

Page 55: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Erkenntnis (1)

• Wir brauchen

eine wirklich zentrale Lösung auf der Hostseite,

für die Interaktion mit allen Webservices,

die zuverlässig, performant,

übersichtlich und praktikabel ist.

z/VSE als Webservice Client

Seite 56

Die nachfolgenden Folien stammen von Herrn Hellmann, BGHW Mannheim, Mai 2009

Page 56: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Erkenntnis (2)

• und ganz wichtig einen Partner

der hält was er verspricht,

der weiß wovon er spricht,

der kurze Wege hat und

der flexibel und schnell agiert.

z/VSE als Webservice Client

Seite 57

Page 57: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013 Seite 58

Die Idee

z/VSE als Webservice Client

Page 58: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Von nun an geht es Schlag auf Schlag

– Telefonat nach Düren

– Die Anforderungen werden kurz umrissen

– Kurzfristige Terminabsprache für eine Demo der Firma Lattwein

– Zum Termin steht ein Prototyp der überzeugt

Seite 59

z/VSE als Webservice Client

Page 59: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Gemeinsam (1)

– mit den Spezialisten der Firma Lattwein werden die Anforderungen konkretisiert

– für die Hostseite• eine Komponente für die

Kommunikation aus CICS• eine Komponente zur Kommunikation

aus Batch– Jeweils zu beliebigen Webservices

z/VSE als Webservice Client

Seite 60

Page 60: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Gemeinsam (2)

• für die OpenSystemseite

– eine Listenerkomponente

– Als Dienst unter Windows

– Alternativ als Linuxvariante

– Wichtig: Multisessionfähig

z/VSE als Webservice Client

Seite 61

Page 61: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Für die „CICS-Komponente“

• werden vereinbart

– Aufruf mit EXEC CICS Link

– Datenübergabe über TS-Q und Commarea

– TS-Q für die „Arbeitsdaten“ des Webservices

– Vereinbarte Länge max. 12500 Bytes

– Commarea für die „Steuerungsdaten“

• Für die „Batchkomponente“

• werden vereinbart

– Aufruf mit Call

– 5 Übergabeparameter

– Analog zur „CICSkomponente“

z/VSE als Webservice Client

Seite 62

Page 62: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

43. Course Erfurt 26.- 28. Mai 2013

• Zeitachse Dezember 2008

• Die Lattwein-Lösung ist bei uns implementiert

– Aufwand für die Hostkomponente max. 2 Stunden

– Aufwand für Listener Komponente max. 30 Minuten

– Die ersten Dialogprogramme sind umgestellt

– Die Kommunikation mit dem DMS-System klappt

z/VSE als Webservice Client

Seite 63

Page 63: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

6443. Course Erfurt 26.- 28. Mai 2013

Fazit:

• Suchen Sie einen kompetenten Partner?

• Für spezielle Lösungen im heterogenen Umfeld

• Fragen Sie doch einfach mal bei Lattwein nach

• Andere Firmen haben schon davon profitiert!

z/VSE als Webservice Client

Page 64: State of the Art CPG – Lösungen 43. Course Erfurt 26.-28. Mai 2013 Heinz Peter Maassen. Lattwein GmbH. Hp.maassen@lattwein.de

6543. Course Erfurt 26.- 28. Mai 2013

Noch Fragen ?

DANKE FÜR IHRE AUFMERKSAMKEI

T