IBM i: Unterschied zwischen den Versionen

Aus informatikvs
Wechseln zu: Navigation, Suche
(Befehlszeile)
Zeile 258: Zeile 258:
 
# $ ./tn5250 as400_1
 
# $ ./tn5250 as400_1
 
</pre>
 
</pre>
 +
== Schnittstellen ==
 +
[[NALPS]]

Version vom 18. Mai 2017, 12:43 Uhr

Modell B60
As400 main.png

... aka as/400 and iseries, is IBM's minicomputer platform introduced in 1988

Features

  1. Einspeicherkonzept (Hauptspeicher=RAM+Platten)
  2. Datenbank, Kommunikations- und Sicherheitssoftware im Betriebssystem enthalten
  3. Alles sind Objekte (Daten, Programme, Befehle, Profile, Einheiten, etc.pp)
  4. Objekte sind nicht Größenbeschränkt und werden über Namen (nicht Adressen) angesprochen

History

1988
erste Ankündigung der AS/400 am 20. Juni (Weiterentwicklung S/38 und S/36) mit Architektur einer VM, dem Technology Independent Machine Interface (TIMI)
1989
TCP/IP Support
1991
Multiprozessor-Support unter V2R1, ILE (ab V2R3)
1995
Umstellung auf POWER Architektur
1996
Umstellung von 48-Bit-CISC auf 64-Bit-RISC, IFS (ab V3)
1997
prozessortechnische Vereinheitlichung der Modellreihen RS/6000 und AS/400
1998
Einführung von light-weight threads ab V4R2 (hat bspw. java und lotus Domino ermöglicht)
1999
V4R4 - Virtualisierung, statisches LPAR, Datenverschlüsselung per VPN
2000
iSeries
2001
V5R1 - dynamisches LPAR, virtuelles LAN
2002
IPv6
2003
Power5
2004
ab V5R3M0 wird das Betriebssystem von OS/400 in i5/OS umbenannt
2005
Power5+
2007
Power6, offizieller Support von PHP, mySQL
2008
System i und System p-Familie werden zusammengeführt (Einsatz als Web-Server), mit V6R1 heisst das Betriebssystem nun IBM i 6.1 (seit 2004: i5/OS) - IBM i kann jetzt auch IBM i hosten;)
2010
Power7 mit IBM i 7.1
2012
Power i mit Live Partition Mobility als neuestes Merkmal
2013
am 30. September endet der offizielle Support von V5R4!

Befehlszeile

===> DSPNETA 	
... NETZWERKATTRIBUTE ANZEIGEN 	
===> WRKACTJOB 	
... MIT AKTIVEN JOBS ARBEITEN 	
===> WRKCFGSTS *DEV 	
... MIT KONFIGURATIONSSTATUS ARBEITEN 	
===> WRKDEVD 	
... MIT EINHEITENBESCHREIBUNGEN ARBEITEN 	
===> WRKFLR 	
... MIT ORDNERN ARBEITEN 	
===> WRKHDWRSC *STG 	
... MIT SPEICHERRESSOURCEN ARBEITEN 	
===> WRKLIND *ALL 	
... MIT LEITUNGSBESCHREIBUNGEN ARBEITEN 	
===> WRKLNK 	
... MIT OBJEKTVERBINDUNGEN ARBEITEN 	
===> WRKMODD 	
... MIT MODUSBESCHREIBUNGEN ARBEITEN 	
===> WRKOBJ *ALL 	
... MIT OBJEKTEN ARBEITEN 	
===> WRKSBS 	
... MIT SUBSYSTEMEN ARBEITEN 	
===> WRKSPLF 	
... MIT ALLEN SPOOL-DATEIEN ARBEITEN 	
===> WRKSYSSTS 	
... MIT SYSTEMSTATUS ARBEITEN 	
===> WRKSYSVAL *ALL 	
... MIT SYSTEMWERTEN ARBEITEN
===> DSPSYSVAL SYSVAL(QMODEL)   /*** E6B :-) ***/
...
===> dspmsg qsysopr
...
===> dspmsg dsp01
...

===> wrkjobq qpgmr 
...
===> wrksbsjob qpgmr
...

===> wrknetf *all
...
===> DSPLOG LOG(QHST) PERIOD((*AVAIL *BEGIN)) OUTPUT(*PRINT) /* Protokoll */
...
===> OVRPRTF FILE(print-file) DEVTYPE(*AFPDS) WSCST(*PDF) TOSTMF('/home/in4mat/my.pdf')
...
===>  CPYFRMIMPF FROMSTMF('/tmp/MS#W05.CSV')                    
                  TOFILE(TRANSFER/MS#W05) 
                  MBROPT(*REPLACE)        
                  TOCCSID(*FILE) 
                  RCDDLM(*CRLF) 
                  FLDDLM(';')     
                  DECPNT(*COMMA) 
                  FROMRCD(2) 
                  RPLNULLVAL(*FLDDFT)
... kopiert und konvertiert CSV-Datei von root/... nach QSYS.LIB in DB400-Datei (Tabelle)

===> CPYTOIMPF FROMFILE(QTEMP/TEST4711) 
                TOSTMF('/QDLS/TRANSFER/TEST4711.CSV') 
                MBROPT(*REPLACE) 
                STMFCODPAG(*PCASCII) 
                RCDDLM(*CRLF) 
                STRDLM(*NONE) 
                RMVBLANK(*TRAILING) 
                FLDDLM(';') 
                ADDCOLNAM(*SYS)                                                   
... kopiert und konvertiert DB400-Datei (Tabelle) vom QSYS.LIB nach QDLS


===> WRKSPLF SELECT(*ALL *ALL *ALL *ALL *ALL DRU5224P)  
... listet alle Bestellungen (via EK026D gedruckt)


===> RTVQMQRY QMQRY(TQPGM/QSSORT100) SRCFILE(SPONA/QDDSSRC) SRCMBR(V_SORT100) ALWQRYDFN(*YES)  
... konvertiert DB400-Query in SQL-Abfrage


===> CRTOUTQ OUTQ(MYPRT01) 
              RMTSYS('10.1.34.36') 
              RMTPRTQ(DSPRT720) 
              CNNTYPE(*IP)     
===> STRRMTWTR OUTQ(MYPRT01) 
... Ausgabewarteschlange für Druck auf entferntem System (Printer, QMSF, Remote, Drucker)

===> CHGOBJOWN OBJ(PGSPGM/FSU210BR) 
                OBJTYPE(*PGM) 
                NEWOWN(BRAINOWN)
... Objekteigner ändern

===> CHGCMDDFT CMD(SIGNOFF) NEWDFT('LOG(*NOLIST)') 
... Log / Joblog / Protoll ausschalten

===> DSPSYSVAL SYSVAL(QMODEL)  
... Systemmodellnummer anzeigen (z.B.: 'Modellnummer . . : E6B')


===> DSPSYSVAL SYSVAL(QSRLNBR)  
... Seriennummer des Systems anzeigen


===> SAVSECDTA DEV(*SAVF) SAVF(MYTMP/#SECDTA)   
===> RSTUSRPRF DEV(*SAVF) USRPRF(TESTUSER) 
                SAVF(MYTMP/#SECDTA) SECDTA(*PWDGRP)
... Benutzerprofil incl. Passwort sichern und zurücksichern


===> STRSEU SRCFILE(mysrclib/mysrcfile) SRCMBR(mysrc) OPTION(5)  
... Programmsource anzeigen 

===> SNDDST TYPE(*LMSG) TOINTNET(('01604721554@t-d1-sms.de')) DSTD(X) LONGMSG('Test 6 !!') DOCD('Start SAVECS')
... SMS;)                                                

===> CVTRPGSRC FROMFILE(CASPSRC/ROTSFMOD) FROMMBR(ROTMD$$UFA) TOFILE(SPONA/ROTSFMOD) 
... OPM - Sourcen - Quellen - umwandeln - konvertieren - RPG - RPGLE - ILE 

===> RTVQMQRY QMQRY(TQPGM/QSSORT100) SRCFILE(pgmlib/QDDSSRC) SRCMBR(V_SORT100) AL-WQRYDFN(*YES) 
... QUERY IN SQL KONVERTIEREN – UMWANDELN

===> CHGOBJOWN 
...  Berechtigung

===> wrkoutq qezdebug   
... Programm-Dump wird in diese OUTQ gestellt / Bsp. wenn Befehl in RPG: dump(a)

===> wrkusjob myusr01 *active

===> WRKDEVD DEVD(myusr*)

===> wrkcfgsts *dev rbil46* 
... Jumbos 

===> OVRPRTF FILE(print-file) DEVTYPE(*AFPDS) WSCST(*PDF) TOSTMF('/dir1/dir2/my-pdf-file.pdf') 
... Drucker - Spool - PDF - Druck - umwandeln - outq 

===> CPYSPLF FILE(TESTFONT) TOFILE(*TOSTMF) JOB(440179/myuser01/myuser01a) 
SPLNBR(000005) TOSTMF('/home/myuser01/TESTFONT.pdf') WSCST(*PDF)         

===> CHGCMDDFT CMD(SIGNOFF) NEWDFT('LOG(*NOLIST)')
... log–joblog–protokoll-deaktivieren 

===> DSPJOBLOG JOB(477723/myusr01/myusr01_a) OUTPUT(*PRINT)       

/* Brain Programm initialisierung Bibliotheken FSY230 */
CALL       PGM(SYSCLSCL) PARM(&SUFFIX &MODUS &LANGID &USECCM) 
CALL       PGM(SYSCLSCL) PARM(‘0’               ‘P’               ‘929’          ‘1’)
CALL       PGM(SYSPGRUD) PARM(*START)  
/* ENDE Brain Programm initialisierung */
                     
===> LPR RMTSYS('10.1.34.5') PRTQ(SPONA) FILE(QSYSPRT) JOB(224385/myusr/FSY301SOJO) SPLNBR(2)
... Optionaler Befehl um spool auf entferntes system zu senden */

===> CPYSPLF FILE(QPRINT) TOFILE(*tostmf) JOB(966111/PGRADM/myusr01_a) SPLNBR(1) tostmf('/qdls/transfer/my201603.pdf') wscst(*pdf)
...  spool -> pdf -> email 

===> SNDDST TYPE(*DOC) TOINTNET(('Max.Mueller@Test.de')) DSTD('HSFNDSTRC') MSG('myPDF') DOC('my201603.pdf') FLR('TRANSFER')                                                                    

===> SNDDST TYPE(*LMSG) TOINTNET(('Max.Mueller@Test.de')) DSTD('Test DSTD')
MSG('Test MSG') LONGMSG('Test LONGMSG')                                 

===>SNDM FROM('Max.Mueller@Test.de') TO(('Mimi.Mueller@kunert.de' TEST)) FILE(pgmlib/QCLSRC) MBR(HS000C) SUBJECT('test') ATTACHMENT('/tmp/CO1X0038.csv')      

===> CALL QP2TERM   /* Shell aufrufen - unterschied zu QSH  ? ***/          
===> STRTCPSVR SERVER(*HTTP)                
===> EDTRBDAP    QSYS        Wiederherstellung Zugriffspfad edit.                  
===> CRTDDMF FILE(SPONA/V7PPAA) RMTFILE(AUSZEICH/V7PPAA) RMTLOCNAME('10.1.1.1' *IP)              

===> CALL QSPENDWA WRITER_NAME 
... last resource to end printer (endwtr, strprtwtr, drucker, api)

mehr Befehle

wrklnk - dspdire - dspsyssts - wrkactjob - dspaspbrm - wrksyssts - wrkdsksts

edit

Editiercodebeschreibung KeinVorz. CR-Vorz. -Vorz.(R) Vorz.(L)
Trennzeichen und Nullinhalt 1 A J N
Trennzeichen 2 B K O
Nullinhalt 3 C L P
Keine Trennz./Kein Nullinhalt 4 D M Q
Benutzerdefinierte Editiercodes 5-9
Datumseditierung (4 Ziffern) W
Datumseditierung Y
Führende Nullen unterdrücken Z

5250 - Terminal Keyboard Mapping (Mochasoft)

  • Mochasoft: edit tn52keys.map in its directory
  • Client Access Express: look for as400std.kmp
  • Telnet: run dspvtmap/chgvtmap for display or change vt keyboard map (or GO CMDTELN)
  • tn5250: looks at configuration file tn5250rc :
as400_1 {
host = as400
map=273
env.DEVNAME=as400_1
env.TERM=IBM-5291-1
+ruler
+underscores
env.USER = MYUSER
env.IBMSUBSPW = MYPASSW
env.IBMPROGRAM = MYPGM
env.IBMMENU = MYMENU
env.IBMCURLIB = MYLIB
+local print key
font_80=Consolas
font_132=Consolas
}
# env.TERM=IBM-3477-FC 27x132 color
# env.TERM=IBM-3477-FG 27x132 mono
# env.TERM=IBM-3180-2  27x132 mono
# env.TERM=IBM-3179-2  24x80 color
# env.TERM=IBM-3196-A1 24x80 mono
# env.TERM=IBM-5292-2  24x80 color
# env.TERM=IBM-5291-1  24x80 mono
# env.TERM=IBM-5251-11 24x80 mono

# $ ./tn5250 as400_1

Schnittstellen

NALPS