Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

State of the Art CPG – Heute und Morgen 44. Course Boppard 6.-8. Juni 2015 44. COURSE 7.-9. Juni 2015 in Boppard1.

Ähnliche Präsentationen


Präsentation zum Thema: "State of the Art CPG – Heute und Morgen 44. Course Boppard 6.-8. Juni 2015 44. COURSE 7.-9. Juni 2015 in Boppard1."—  Präsentation transkript:

1 State of the Art CPG – Heute und Morgen 44. Course Boppard Juni COURSE Juni 2015 in Boppard1

2 Trademarks 44. COURSE Juni 2015 in Boppard2 The following are trademarks of the International Business Machines Corporation in the United States, other countries, or both. The following are trademarks or registered trademarks of other companies. * All other products may be trademarks or registered trademarks of their respective companies. Notes: Performance is in Internal Throughput Rate (ITR) ratio based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput that any user will experience will vary depending upon considerations such as the amount of multiprogramming in the user's job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve throughput improvements equivalent to the performance ratios stated here. IBM hardware products are manufactured from new parts, or new and serviceable used parts. Regardless, our warranty terms apply. All customer examples cited or described in this presentation are presented as illustrations of the manner in which some customers have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics will vary depending on individual customer configurations and conditions. This publication was produced in the United States. IBM may not offer the products, services or features discussed in this document in other countries, and the information may be subject to change without notice. Consult your local IBM business contact for information on the product or services available in your area. All statements regarding IBM's future direction and intent are subject to change or withdrawal without notice, and represent goals and objectives only. Information about non-IBM products is obtained from the manufacturers of those products or their published announcements. IBM has not tested those products and cannot confirm the performance, compatibility, or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. Prices subject to change without notice. Contact your IBM representative or Business Partner for the most current pricing in your geography. For a complete list of IBM Trademarks, see *, AS/400®, e business(logo)®, DBE, ESCO, eServer, FICON, IBM®, IBM (logo)®, iSeries®, MVS, OS/390®, pSeries®, RS/6000®, S/30, VM/ESA®, VSE/ESA, WebSphere®, xSeries®, z/OS®, zSeries®, z/VM®, System i, System i5, System p, System p5, System x, System z, System z9®, BladeCenter® Not all common law marks used by IBM are listed on this page. Failure of a mark to appear does not mean that IBM does not use the mark nor does it mean that the product is not actively marketed or is not significant within its relevant market. Those trademarks followed by ® are registered trademarks of IBM in the United States; all others are trademarks or common law marks of IBM in the United States. Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered trademarks or trademarks of Adobe Systems Incorporated in the United States, and/or other countries. Cell Broadband Engine is a trademark of Sony Computer Entertainment, Inc. in the United States, other countries, or both and is used under license therefrom. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both. Microsoft, Windows, Windows NT, and the Windows logo are trademarks of Microsoft Corporation in the United States, other countries, or both. Intel, Intel logo, Intel Inside, Intel Inside logo, Intel Centrino, Intel Centrino logo, Celeron, Intel Xeon, Intel SpeedStep, Itanium, and Pentium are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries. UNIX is a registered trademark of The Open Group in the United States and other countries. Linux is a registered trademark of Linus Torvalds in the United States, other countries, or both. ITIL is a registered trademark, and a registered community trademark of the Office of Government Commerce, and is registered in the U.S. Patent and Trademark Office. IT Infrastructure Library is a registered trademark of the Central Computer and Telecommunications Agency, which is now part of the Office of Government Commerce.

3 Agenda  IBM z13 Neue Rechner im High End Umfeld  z/VSE 6.1 Erfahrungen mit dem neuen z/VSE  TCP/IP V 2.1  CICS TS 2.1Migration Hinweise  Wartezeit bei XML Anwendungen  Lattwein Produkte im neuen z/VSE Umfeld 44. COURSE Juni 2015 in Boppard3

4 IBM z13-Neue Rechner im High End Umfeld  IBM z13 Technologie  Bis zu 10 TB interner Speicher  Bis zu 141 Prozessoren  Konfiguration der Crypto Express 5S  Ficon Express 16 S mit bis zu 16 GB/Sec  Storage IBM TS7700, DS8700, Flash V COURSE Juni 2015 in Boppard4

5 IBM z13-Neue Rechner im High End Umfeld

6 z/VSE wird COURSE Juni 2015 in Boppard6

7 z/VSE 6.1 – erste Erfahrungen  Ausnutzen, verwenden, verwerten der IBM System z13 Technologie  ALS (architectural level set) IBM System z10 und größer  CICS TS V 2.1 – nur mit z/VSE 6.1 und > nutzbar  Update und Control für CICS Explorer  Neues API um große Datenmengen auszutauschen (Channels und Container)  TCP/IP for VSE V 2.1 mit integrierter Firewall  IPv6 V 1.2 ebenfalls mit integrierter Firewall und SSL und TLS Support  zVSE 6.1 läuft nur unter z10, z196/z114, z12 und z COURSE Juni 2015 in Boppard7

8 z/VSE Erfahrungen mit CICS TS 2.1  Alle Programme laufen ohne Recompile oder Link  Erstellen aller Tabellen TCT, DCT, SIT mit neuem Release  Alte Tabellen sind nicht kompatibel!  Übernahme der CSD Definitionen erforderlich  Files  Programme  Transaktionen 44. COURSE Juni 2015 in Boppard8

9 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1  Wie kann man alle CEDA Definitionen übernehmen?  Am besten über einen vorhandenen Batch-Job.  Alle Einträge einer Startliste kann man mit dem Programm DFH0CBDC auflisten. Der Source Code steht in der PRD1.BASE. Der Link Job steht im Handbuch: CICS Customization Guide ( mit EXCI Include) !  Der Job dazu sieht so aus: 44. COURSE Juni 2015 in Boppard9

10 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1 * $$ LST CLASS=V,DEST=(*,VSEMAINT) // JOB EXE0CBDC CSD FILE EXTRACT WITH DFH0CBDC // LIBDEF *,SEARCH=(PRD2.SCEEBASE,PRD2.CONFIG,CPGLIB.CPG523ES) // ASSGN SYS002,X'FEE' VSELST2,LATTPRD1 // EXEC DFHCSDUP,SIZE=2000K EXTRACT LIST(LATTPRD1) USERPROGRAM(DFH0CBDC) OBJECTS /* EXTRACT LIST(CICSF7) USERPROGRAM(DFH0CBDC) OBJECTS /& 44. COURSE Juni 2015 in Boppard10

11 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1 EXTRACT LST A1 F 132 Trunc=132 Size=6690 Line=6 Col=1 Alt=0 ====> ! EXTRACT LIST(LATTWEIN) USERPROGRAM(DFH0CBDC) OBJECTS ADD GROUP(BACEMT24) LIST(LATTWEIN) DEFINE PROFILE(PRBACEMT) GROUP(BACEMT24) SCRNSIZE(DEFAULT) UCTRAN(NO) PRINTERCOMP(NO) JOURNAL(NO) MSGJRNL(NO) MSGINTEG(NO) ONEWTE(NO) PROTECT(NO) CHAINCONTROL(NO) DVSUPRT(ALL) INBFMH(NO) RAQ(NO) LOGREC(NO) NEPCLASS(0) RTIMOUT(NO) DEFINE PROGRAM(BACDLOC) GROUP(BACEMT24) LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL) USESVACOPY(NO) STATUS(ENABLED) CEDF(NO) DATALOCATION(BELOW) EXECKEY(USER) EXECUTIONSET(FULLAPI) 44. COURSE Juni 2015 in Boppard11 Die Satzlänge wird mit: SET LRECL 80 angepasst.

12 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1 EXTRACT LST A1 F 80 Trunc=80 Size=6679 Line=0 Col=1 Alt=2 ====> * * * Top of File * * * ! DELETE GROUP(BACEMT24) ADD GROUP(BACEMT24) LIST(LATTWEIN) DEFINE PROFILE(PRBACEMT) GROUP(BACEMT24) SCRNSIZE(DEFAULT) UCTRAN(NO) PRINTERCOMP(NO) JOURNAL(NO) MSGJRNL(NO) MSGINTEG(NO) ONEWTE(NO) PROTECT(NO) CHAINCONTROL(NO) DVSUPRT(ALL) INBFMH(NO) RAQ(NO) LOGREC(NO) NEPCLASS(0) RTIMOUT(NO) DEFINE PROGRAM(BACDLOC) GROUP(BACEMT24) LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL) USESVACOPY(NO) STATUS(ENABLED) CEDF(NO) DATALOCATION(BELOW) EXECKEY(USER) EXECUTIONSET(FULLAPI) DEFINE PROGRAM(BACLU6) GROUP(BACEMT24) LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL) USESVACOPY(NO) STATUS(ENABLED) CEDF(NO) DATALOCATION(BELOW) EXECKEY(USER) EXECUTIONSET(FULLAPI) 44. COURSE Juni 2015 in Boppard12 Vor jedem ADD GROUP(XXXGRP) wird ein: DELETE GROUP(XXXGRP) eingefügt!

13 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1 // EXEC LIBR,PARM=‘ACC S=SP4U.UL20S‘ CATALOG CLATWEIN.CSD EOD=/+ REPLACE=YES DELETE GROUP(BACEMT24) ADD GROUP(BACEMT24) LIST(LATTWEIN) DEFINE PROFILE(PRBACEMT) GROUP(BACEMT24) SCRNSIZE(DEFAULT) UCTRAN(NO) PRINTERCOMP(NO) JOURNAL(NO) MSGJRNL(NO) MSGINTEG(NO) ONEWTE(NO) PROTECT(NO) CHAINCONTROL(NO) DVSUPRT(ALL) INBFMH(NO) RAQ(NO) LOGREC(NO) NEPCLASS(0) RTIMOUT(NO) DEFINE PROGRAM(BACDLOC) GROUP(BACEMT24) LANGUAGE(ASSEMBLER) RELOAD(NO) RESIDENT(NO) USAGE(NORMAL) USESVACOPY(NO) STATUS(ENABLED) CEDF(NO) DATALOCATION(BELOW) EXECKEY(USER) EXECUTIONSET(FULLAPI) ) 44. COURSE Juni 2015 in Boppard13 Dieses Member in eine User Library katalogisieren und ins neue System kopieren (FTP)

14 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1 * $$ JOB JNM=CPGCSD,CLASS=0,DISP=D * $$ LST CLASS=V,DEST=(*,VSEMAINT) // JOB CSD LOAD CPG5 // DLBL DFHCSD,'CICS.CSD',0,VSAM,CAT=VSESPUC // EXEC DFHCSDUP,SIZE=300K * $$ SLI MEM=CLATWEIN.CSD,S=SP4U.UL20S /* /& * $$ EOJ 14 Mit diesem Job alle Ressourcen im neuen CICS aktivieren ! Die Startliste eintragen. Man kann auch jede Gruppe einzeln erzeugen und dann mehrere SLI Books einfügen.

15 z/VSE 6.1 – Übernahme CSD ins CICS TS 2.1 // JOB CSD LOAD CPG5 // DLBL DFHCSD,'CICS.CSD',0,VSAM,CAT=VSESPUC // EXEC DFHCSDUP,SIZE=300K * $$ SLI MEM=BACEMT24.CSD,S=USER.UL20S * $$ SLI MEM=CPGPCT.CSD,S=USER.UL20S * $$ SLI MEM=CPGPPT.CSD,S=USER.UL20S * $$ SLI MEM=CPGFCT.CSD,S=USER.UL20S /* /& 44. COURSE Juni 2015 in Boppard15 Mit diesem Job alle Ressourcen im neuen CICS aktivieren ! Die Startliste eintragen.

16 BSCNTL File übernehmen  BSTCNTL File Übernahme von z/VSE 4.3  In ICCF Library 59 den Job SKBSTSAV anpassen und die Definitionen in ein Source Member in einer Sublibrary abspeichern.  Dieses Member z.B. über z/VM in z/VSE 6.1 übertragen und dort den Job SKBSTSAV so anpassen, dass ein LOAD der Definitionen ausgeführt wird. 44. COURSE Juni 2015 in Boppard16

17 BSCNTL File übernehmen (Migration ohne FSU) * $$ JOB JNM=BSTSAV,CLASS=0,DISP=D * $$ LST CLASS=Y,DISP=H // JOB BSTSAV SAVE CONTENTS OF BSTCNTL FILE * // GOTO LOAD // EXEC BSTSAVER,PARM='PRD2.CONFIG.BSTSAVE.JCL' /* // GOTO $EOJ /. LOAD // EXEC BSTADMIN * $$ SLI MEM=BSTSAVE.JCL,S=PRD2.CONFIG /* // EXEC BSTADMIN PERFORM DATASPACE REFRESH /* /& * $$ EOJ 17 Beim SAVE das * $$ SLI – Statement deaktivieren, um POWER-Fehlermeldungen zu vermeiden

18 CICS Explorer: Start Bild 44. COURSE Juni 2015 in Boppard18

19 CICS Explorer: Anmeldung 44. COURSE Juni 2015 in Boppard19

20 CICS Explorer: Terminals 44. COURSE Juni 2015 in Boppard20

21 CICS Explorer: Transaktionen 44. COURSE Juni 2015 in Boppard21

22 z/VSE Erfahrungen mit TCP/IP V 2.1  Übernahme der Definitionen aus V 1.5F.  Noch keine neuen Funktionen getestet.  Start mit V 2.1 problemlos- man merkt es nicht. 44. COURSE Juni 2015 in Boppard22

23 Wartezeit bei CPGXML Anwendungen RCV Prog SEND SUMME F CON-TIME: TXML013 TCPG (Windows F CON-TIME: TXML013 TCPG (Linux  Ein Kunde bemerkte bei seiner Web-Maschine erhebliche Wartezeiten bei der Dauer einer Anwendung (Task)  Die Untersuchung ergab:  Dieses Symptom trat auch bei uns auf  Zunächst keine Erklärung für dieses Verhalten 44. COURSE Juni 2015 in Boppard23

24 Wartezeit bei CPGXML Anwendungen  XML Anwendungen laufen unter Windows, Unix oder Linux  Die Kommunikation ruft ein C++ Programm auf das auf einem Webserver eingebunden ist  Dann wird über TCP/IP eine Anfrage an den Mainframe gesendet  Hier tritt eine Wartezeit von bis zu 200 ms je Send auf, bis die Host Task die Antwort sendet. 44. COURSE Juni 2015 in Boppard24

25 Wartezeit bei CPGXML Anwendungen  Im Webserver läuft bei Windows Umgebung die Kommunikation über die WinSock32.dll ab.  Bei Linux Systemen über C Standard Connect, Send, Receive Befehlen. 44. COURSE Juni 2015 in Boppard25.Net oder Java Anwendung CPGXML QTCListener  QPG Windows - Linuxz/VSE

26 Fehlersuche mit Auxtrace CETR Transaction and Terminal Trace CICT CICSTEST Type in your choices. Item Choice Possible choices Transaction ID ===> QTCL Any valid 4 character ID Transaction Status ===> STandard, SPecial, SUppressed Terminal ID ===> Any valid Terminal ID Netname ===> Any valid Netname Terminal Status ===> STandard, SPecial Terminal ZCP Trace ===> ON, OFf When finished, press ENTER. PF1=Help 3=Quit 9=Error List 44. COURSE Juni 2015 in Boppard26

27 Auxtrace Starten und Problem wiederholen CETR CICS Trace Control Facility CICT CICSTEST Type in your choices. Item Choice Possible choices Internal Trace Status ===> Start STArted, STOpped Internal Trace Table Size ===> 256 K 16K K Auxiliary Trace Status ===> START STArted, STOpped, Paused Auxiliary Trace Dataset ===> A A, B Auxiliary Switch Status ===> NO NO, NExt, All Master System Trace Flag ===> ON ON, OFf Master User Trace Flag ===> ON ON, OFf When finished, press ENTER. PF1=Help 3=Quit 4=Components 5=Ter/Trn 9=Error List

28 Auxtrace Drucken Ausdruck Auxiliary Trace: Mit CETR: Auxtrace STOP ! Dann diesen Job im VSE ablaufen lassen: // JOB DFHAUXPR PRINT CICS AUXILIARY FROM DISK // DLBL DFHAUXT,'CICSF5.AUXTRACE.A',0,VSAM,CAT=VSESPUC,DISP=(OLD,KEEP) // EXEC DFHTU410,SIZE=1880K,OS390 TRANID=(QTCL) ABBREV TIMESTAMP /* (Rot bitte anpassen) 44. COURSE Juni 2015 in Boppard28

29 Auxtrace Drucken CICS - AUXILIARY TRACE FROM 13/08/14 - APPLID CICSTEST PAGE CICS SELECTIVE TRACE PRINT PARAMETERS: TRANID=(QTCL) TIMESTAMP CICS - AUXILIARY TRACE FROM 13/08/14 - APPLID CICSTEST PAGE XM 1102 XMAT EXIT - FUNCTION(ATTACH) RESPONSE(OK) TASK KE_NUM-0022 TCB-0033C000 RET-8178CFC0 TIME-17:06: INTERVAL =000157= A B86C D8E3C3D3 * % QTCL* C * §* C *...§ * C0FB58 00A46EC * ä...u>D * AP EA00 TMP ENTRY FUNCTION(LOCATE) TABLE(PFT ) KEY(CPGDEF ) TASK KE_NUM-002C TCB-0033C000 RET-805C53FA TIME-17:06: INTERVAL =000179= A06A * * C3D7C7C4 C5C64040 *CPGDEF * AP EA01 TMP EXIT FUNCTION(LOCATE) TABLE(PFT ) KEY(CPGDEF ) ENTRY_ADDRESS(01AFFED0) RESPONSE(NORMAL) TASK KE_NUM-002C TCB-0033C000 RET-805C53FA TIME-17:06: INTERVAL =000180= A06A10 01AFFED * ü..... * C3D7C7C4 C5C64040 *CPGDEF * 44. COURSE Juni 2015 in Boppard29

30 Auxtrace Drucken Sehr unübersichtlich, zumal wenn man nur die Zeilen sucht, die einen Intervall Wert > Sekunden haben Viel Text verdeckt die Sicht auf die wichtigen Stellen im Trace Die sollte man sich maskieren: z.B. so: DS 0005 DSSR EXIT - FUNCTION(WAIT_OLDW) RESPONSE(OK) TASK KE_NUM-002C TCB-0033C000 RET C2 TIME-17:06: INTERVAL * =000803= B D1A595 * Jvn* D1A592 00E1B460 E2C9D5C7 D3C C5D2C3E6 C1C9E340 *.Jvk...-SINGLE EKCWAIT * B B * * 44. COURSE Juni 2015 in Boppard30

31 Auxtrace Drucken Dies ist aber mühsam, wenn die Liste mehrere 100 Seiten groß ist. Oder man analysiert die Liste per Programm: AP 00E1 EIP -00, ENTRY WAIT-EVENT REQ(0004) FIELD-A(0068B3F8...8) FIELD-B( ) SM 0401 SMSR-00, ENTRY - FUNCTION(INQUIRE_ACCESS) ELEMENT_ADDRESS(0068B624) ELEMENT_LENGTH(1) SM 0402 SMSR-00, EXIT - FUNCTION(INQUIRE_ACCESS) RESPONSE(OK) DSA_NAME(UDSA) ACCESS(USER) DS 0004 DSSR-00, ENTRY - FUNCTION(WAIT_OLDW) RESOURCE_NAME(SINGLE) RESOURCE_TYPE(EKCWAIT) ECB_ADDRESS(0068B625) PUR DS 0005 DSSR-00, ** EXIT - FUNCTION(WAIT_OLDW) RESPONSE(OK) AP 00E1 EIP -00, EXIT WAIT-EVENT OK REQ(00F4) FIELD-A( ) FIELD-B( ) AP 00E1 EIP -00, ENTRY START REQ(0004) FIELD-A(0068B3F8...8) FIELD-B( ) XM 0401 XMLD-00, ENTRY - FUNCTION(LOCATE_AND_LOCK_TRANDEF) TRANSACTION_ID(QTCL) DD 0301 DDLO-00, ENTRY - FUNCTION(LOCATE) DIRECTORY_TOKEN( ) ENTRY_NAME(01A072B8) DIRECTORY_NAME(TXD ) NAME( DD 0302 DDLO-00, EXIT - FUNCTION(LOCATE) RESPONSE(OK) DATA_TOKEN(01A204F0, D ) SM 0402 SMSR-00, EXIT - FUNCTION(INQUIRE_AC DS 0004 DSSR-00, ENTRY - FUNCTION(WAIT_OLDW) DS 0005 DSSR-00, ** EXIT - FUNCTION(WAIT_OLDW) AP 00E1 EIP -00, EXIT WAIT-EVENT OK AP 00E1 EIP -00, ENTRY START 44. COURSE Juni 2015 in Boppard31

32 CICS Auxtrace Resümee  Die Liste kann man auch analysieren- per Programm die kritischen Zeilen suchen  Oder Intervalle  Oder Abbrüche  Dann die Erkenntnisse nutzen um die Fehler zu finden. 44. COURSE Juni 2015 in Boppard32

33 CICS Auxtrace Resümee  In unserem Fall war es die Kommunikation zwischen einem CICS Programm und einem C++ Programm.  TCP/IP im Windows braucht beim Send etwa 0.6 Sekunden beim Send- bei einem Linux Sever etwa 0.02 Sekunden  Anders ausgedrückt: TCP SEND im zVSE braucht 30 – fache Zeit wenn das Server Programm unter Windows läuft ! ! !  Unter Windows XP gab es Parameter in der Registry die heute unter Windows 7 nicht mehr funktionieren: TcpDelAckTicks=0, TcpAckFrequency=1 (Disable), TcpNoDelay=1 (Disable) 44. COURSE Juni 2015 in Boppard33

34 CPGXML Anwendungen: Mit Wireshark unter Windows

35 CPGXML Anwendungen: Mit Wireshark unter Linux

36 Wartezeit bei CPGXML Anwendungen  Dies liegt am Windows Socket Aufruf- unter Linux tritt dieser Fehler nicht auf.  Zeit ist kaum spürbar, man sieht diese aber im TMON 44. COURSE Juni 2015 in Boppard36

37 Lattwein Produkte im neuen z/VSE Umfeld  CPG, CPG2 und HL1 – Compiler sind vollständig unterstützt im z/VSE 6.1  CPGMBK ( Methodenbank ) und CPGCLE (Command Level ESA Interface laufen sowohl ohne als auch mit Umwandlung unter z/VSE 6.1  QIT wurde unter z/VSE 6.1 getestet und ist vollständig verfügbar  CPGXML wurde unter z/VSE 6.1 getestet und läuft problemlos 44. COURSE Juni 2015 in Boppard37

38 Lattwein Produkte im neuen z/VSE Umfeld  QTF und QPG Programme laufen auch unter z/VSE 6.1 sowohl im Batch als auch Online  CPG5 (NetPage) Browser Anwendungen wurden unter z/VSE 6.1 getestet und laufen.  Auch die Features wie CICSSORT, HSORT, CPGShell, CPGJDBC sind unter z/VSE 6.1 getestet worden und funktionieren ohne Probleme 44. COURSE Juni 2015 in Boppard38

39 Lattwein Produkte im neuen z/VSE Umfeld  Allerdings müssen die Produkte, die TCP/IP verwenden noch gegen die neue Version 2.1 getestet werden.  Eigentlich sollten keine Probleme zu erwarten sein.  Fazit: Mit Lattwein Produkten können sie problemlos in die nächsten 50 Jahre z/VSE starten 44. COURSE Juni 2015 in Boppard39

40 CICS TS -TCP/IP-z/VSE 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! 44. COURSE Juni 2015 in Boppard40

41 Noch Fragen ?


Herunterladen ppt "State of the Art CPG – Heute und Morgen 44. Course Boppard 6.-8. Juni 2015 44. COURSE 7.-9. Juni 2015 in Boppard1."

Ähnliche Präsentationen


Google-Anzeigen