pause-café
destinée aux informaticiens sur plateforme IBM i.
Pause-café #38
PHP, suite
Pour
accèder à votre base de
données
DB2/400, vous utiliserez les routines ODBC :
- sur Intel le plus simple
est d'installer Client Access (y compris la version linux) qui
contient un driver ODBC pour l'AS/400
- elles sont présentes en natif sous OS/400 sous le nom de CLI
la connexion ODBC se fait avec les attributs suivants :
- sur plateforme Intel
(Windows/Linux)
$db = odbc_connect($dsn , $user , $passwd)
ou $dsn contient la chaîne de connexion
"DRIVER=iSeries Access ODBC Driver;SYSTEM=AS400;DBQ=BIBLIOTHEQUE"
- dans le monde OS400
$db = odbc_connect($rdb , "" , "")
ou $rdb contient le nom de la base locale tel que définit dans WRKRDBDIRE
User et passwd sont ignorés, c'est le profil en cours (par défaut celui sur serveur Apache, sauf authentification)
le nom de la "database" (ou bibliothèque pour nous), doit être fourni ensuite par :
odbc_setoption($db, 1, SQL_ATTR_DBC_DEFAULT_LIB, $bibliotheque)
// If we
report the OS as AIX or OS400, assume we're
running under PASE $isPase = (PHP_OS == "AIX" || PHP_OS == "OS400"); if (!$isPase) { $dsn = "DRIVER=iSeries Access ODBC Driver;SYSTEM=$isdb_system;DBQ=$isdb_database"; $db = odbc_connect($dsn, $user, $pwd); } else { $db = odbc_connect($isdb_system, "", ""); odbc_setoption($db, 1, SQL_ATTR_DBC_DEFAULT_LIB, $isdb_database) } |
http://www-1.ibm.com/servers/eserver/iseries/linux/odbc/guide/demoindex.html
que vous pouvez tester ici
- L'avenir des accès base de données sous PHP, s'appelle probablement PDO et sera livré avec PHP 5.1
il s'agit d'un objet, masquant la complexité et les disparités des différents drivers.
il
offre le grand avantage (pour nous) de proposer un accès aux
procédures cataloguées avec gestion des
paramètres en sortie ou en entrée/sortie (comme
ADO ou .NET sous Windows)
Création d'une nouvelle instance de l'objet PDO
(cela créé la connexion)
|
Exécution d' une requête et affichage du résultat
$req = $db->prepare("select
* from fichier "); |
$req =
$dbh->prepare("CALL
procedure1(?)"); |
Voyez la liste des méthodes à http://fr.php.net/manual/fr/ref.pdo.php
et cette page IBM expliquant comment utiliser PDO avec DB2
Commander des PTFs sous Internet
Vous pouvez utiliser les sites du support IBM, pour tout ce qui est gestion de PTF.
- L'Option Technical Databasespermet d'accéder :
- aux problémes ouverts, ainsi qu'aux correctifs associés
- à la base des cumulatives et autres GROUP PTF (PSP ou Preventive Service Planning)
- aux lettres d'accompagnement des PTF
- et à des bases de connaissance techniques
Vous pouvez les examiner par version ou bien lancer une recherche par mot-clé.
la difficulté est d'utiliser les mêmes mots que les techniciens IBM ouvrant l'incident (ici mgtc pour Managment Central)
voyez ensuite si le résumé correspond, voyez le détail de l'APAR pour être certain et trouver la PTF.
dans ce cas, la SI19545.
dans la foulée, regardons la "Cover Letter" de cette PTF :
Utilisez l'option Search
- FixCentral permet de commander vos PTF.
Ici, vous avez le choix entre :
- customize PTF package (un ensemble personnalisé)
- customize cumulative PTF package (une cumulative en fonction de ce qui manque sur votre AS400)
- Group, Hyper, cumulatives fixes (une cumulative "normale")
- individual fixes (commande individuelle, ce que nous allons faire)
il faut ensuite vous signer avec votre ID IBM (voyez https://www-912.ibm.com/servlet/ProcessCust/newreg )
saisissez votre (vos) PTF, par le code SIxxxxxx
indiquez vos autres options
puis le type de téléchargement que vous souhaitez :
- Immédiate download (téléchargement immédiat, dans 5/10 minutes vous
appliquez vos ptf)
attention, la taille maxi est dépendante du débit que vous indiquez
- Download CD-ROM
Une (ou plusieurs) images de CD sont fabriquées et placées sur un serveur FTP
- Mail Order on CD-ROM
fabrication de CD physiques et envoi par courrier
Continuons notre commande individuelle, une applet est téléchargée sur votre poste et vous demande les moyens
de ce connecter à votre AS/400
Renseignez le nom ou l'adresse IP, et profil/mot de passe.
et hop, c'est parti.
la PTF est placée sur votre AS/400 en SAVF, comme le résultat d'un SNDPTFORD, il vous reste à :
- vérifier les conditions d'application sur la lettre d'accompagnement
- la charger par LODPTF
- et l'appliquer par APYPTF
signez vous
il faut la liste des PTF déjà présentes, de façon à faire la liste des PTF manquantes.
pour cela, l'application Java, va utiliser la notion de collecte de gestion centralisée.
Si aucune collecte n'est présente, ou si elle est trop ancienne, on vous propose de réactualiser
Indiquez ensuite le niveau à atteindre :
ici, la production d'images cd CD a été demandée, indiquez un nom de répertoire (sur le serveur IBM)
Pour terminer, une commande de cumulative "standard".
choisissez, soit la cumulative, soit un GROUP PTF
la SF995x0 doit être commandée seule, elle est livrée avec la dernière HYPER et le GROUP DATABASE.
Un écran récapitulatif est affiché (ici, la production d'images cd CD, ISO ou UDF, suivant la version)
vous recevrez rapidement, le mail suivant :
>> Do not reply to this note. It is from a
Service Machine ONLY << COERVER = 34-STATUS SOURCE = EMAIL COERNBR = 334831 PROBNBR = 17876 BO_NMBR = 999 CNTYNBR = 706 FRMNODE = BLDISDMC FRMUSER = R370ACK TO_NODE = NONE TO_USER = NONE RECDATE = 20050921084305 TEXT = SDF Order# B6268326 was Received at 08:43:05 09/21/2005 TEXT = *-*-*-*-*-*-*-*-*-* Internet Webpage *-*-*-*-*-*-*-*-*-* TEXT = If you have access to the Internet, IBM has a webpage TEXT = available for you to check your order's status. The URL TEXT = is- https://www14.software.ibm.com/webapp/ssos/order_status NBRDATA = 0017 |
puis, une fois les images disponibles :
COERVER = 34-STATUS SOURCE = EMAIL COERNBR = 334831 PROBNBR = 17876 BO_NMBR = 999 CNTYNBR = 706 FRMNODE = BLDISDMC FRMUSER = R370ACK TO_NODE = NONE TO_USER = NONE SHPDATE = 20050921084924 TEXT = TEXT = --> YOUR FIX PACKAGE IS READY <-- TEXT = TEXT = TEXT = SDF Order# B6268326 is ready 20050921 TEXT = TEXT = Thank you for using the FTP server for your support TEXT = needs. If you received this notice in error, please TEXT = disregard. You will not be receiving any additional TEXT = correspondence related to this transaction. TEXT = TEXT = ------------------------------------------------------ TEXT = Note: The fix package will be deleted in 48 hours. TEXT = ------------------------------------------------------ TEXT = TEXT = INFORMATION YOU WILL NEED TO RETRIEVE YOUR ORDER TEXT = TEXT = Your userid --> asj8nka TEXT = Your password --> tjn8ky6d TEXT = FTP server --> inetsd01.boulder.ibm.com TEXT = Transfer type --> ascii/binary TEXT = Directory on server --> /b6268326/334831/c TEXT = Files to get --> ftpSF99530.txt TEXT = --> ilstSF99530.txt TEXT = --> SF99530_1.bin TEXT = --> SF99530_2.bin TEXT = --> SF99530_3.bin TEXT = --> SF99530_4.bin TEXT = --> SF99530_5.bin TEXT = --> SF99530_6.bin TEXT = --> SF99530_7.bin TEXT = Notes: TEXT = 1) The ftpSF99530.txt file contains the number of bytes in TEXT = each file. TEXT = 2) The ilstSF99530.txt file contains information and TEXT = instructions for your order. TEXT = 3) Each " .bin" file contains one virtual CD image. TEXT = TEXT = ************************************************************* TEXT = * Vital PTF information: * TEXT = * Application of PTFs within this PTF package may disable * TEXT = * or render ineffective programs that use system memory * TEXT = * addresses not generated by the IBM translator, including * TEXT = * programs that circumvent control technology designed to * TEXT = * limit interactive capacity to purchased levels. These * TEXT = * PTFs may be prerequisites for future PTFs. By applying * TEXT = * these PTFs you authorize and agree to the foregoing. * TEXT = ************************************************************* TEXT = TEXT = HOW TO RETRIEVE YOUR FIX PACKAGE TEXT = TEXT = You may FTP the order to your system using any method TEXT = that you prefer. Three methods are listed below. TEXT = TEXT = o DOWNLOAD USING A WEB BROWSER TEXT = Click on the link below. TEXT = TEXT = ftp://asj8nka:tjn8ky6d@inetsd01.boulder.ibm.com/b6268326/334831/c TEXT = TEXT = Download the following files to your local PC drive (or to TEXT = a mapped drive on the IFS if you will be using image TEXT = catalogs): TEXT = ftpSF99530.txt TEXT = ilstSF99530.txt TEXT = SF99530_1.bin TEXT = SF99530_2.bin TEXT = SF99530_3.bin TEXT = SF99530_4.bin TEXT = SF99530_5.bin TEXT = SF99530_6.bin TEXT = SF99530_7.bin TEXT = TEXT = o DOWNLOAD USING OPERATIONS NAVIGATOR TEXT = If you select this option, you need to have an Operations TEXT = Navigator plug-in installed on your PC. The plug-in is TEXT = available at: TEXT = http://www-912.ibm.com/supporthome.nsf/document/27321011 TEXT = TEXT = After installing the plug-in, follow the steps below. TEXT = 1. Expand "Management Central". TEXT = 2. Expand "Endpoint Systems". TEXT = 3. Select the system where you want to apply the TEXT = fixes. TEXT = 4. Expand "Configuration and Services". TEXT = 5. Right click on "Fixes Inventory". TEXT = 6. Click on "Get fixes from IBM". TEXT = 7. Select "Download fixes" on the wizard, and enter TEXT = the following URL: TEXT = ftp://asj8nka:tjn8ky6d@inetsd01.boulder.ibm.com/b6268326/334831/c TEXT = TEXT = 8. Download the following files to your local PC drive (or TEXT = to a mapped drive on the IFS if you will be using image TEXT = catalogs): TEXT = ftpSF99530.txt TEXT = ilstSF99530.txt TEXT = SF99530_1.bin TEXT = SF99530_2.bin TEXT = SF99530_3.bin TEXT = SF99530_4.bin TEXT = SF99530_5.bin TEXT = SF99530_6.bin TEXT = SF99530_7.bin TEXT = TEXT = o DOWNLOAD USING THE FTP COMMAND FROM OS/400 TEXT = Select this method only if you will be using image catalogs. TEXT = In the example below, the directory is named "fixes". TEXT = You must store the files in a path within the "root" (/) TEXT = directory in IFS. TEXT = ftp inetsd01.boulder.ibm.com TEXT = ftp> Name: asj8nka TEXT = ftp> Password: tjn8ky6d TEXT = ftp> namefmt 1 TEXT = ftp> lcd /fixes TEXT = ftp> ascii TEXT = ftp> cd /b6268326/334831/c TEXT = ftp> get ftpSF99530.txt TEXT = ftp> get ilstSF99530.txt TEXT = ftp> binary TEXT = ftp> get SF99530_1.bin TEXT = ftp> get SF99530_2.bin TEXT = ftp> get SF99530_3.bin TEXT = ftp> get SF99530_4.bin TEXT = ftp> get SF99530_5.bin TEXT = ftp> get SF99530_6.bin TEXT = ftp> get SF99530_7.bin TEXT = ftp> quit TEXT = TEXT = HOW TO INSTALL THE FIXES TEXT = TEXT = Read the information in the ilstSF99530.txt file. Then TEXT = follow the instructions on how to install fixes at: TEXT = http://www-912.ibm.com/supporthome.nsf/document/27321011 TEXT = TEXT = INFORMATION ABOUT YOUR ORDER TEXT = TEXT = TEXT = Package contained 559 fixes with 4,053,242 Kilo-bytes of data TEXT = Total amount of data shipped was 675,283 Kilo-bytes TEXT = Package shipped on 002 CDROM volume(s) TEXT = SDF Order# B6268326 was Shipped at No:ne: 09/21/2005 NBRDATA = 0152 TEXT = TEXT = Your order that was placed can be viewed at: TEXT = http://www-912.ibm.com/eserver/support/fixes/OrderFixes?family=0&fixcart34831 TEXT = TEXT = TEXT = The list of PTFs that were ordered: TEXT = TEXT = ^MH00111 ^ PREREQ OF ^SI15234 ^Sup'd by MH00113 (suit la liste des PTF) |
Glossaire :
- PREREQ : Pre-Requisite
- PTF préalable à l'installation d'une autre PTF (ici SI15234)
- COREQ : Co-Requisite
- PTF devant impérativement être installée en même temps qu'une autre PTF
- Sup'd : Superseded
- PTF remplacant une autre PTF (pas forcement en erreur)
Que faire des images ISO
1/ Gravez les avec un produit PC
2/ utilisez la notion (récente) de CD-ROM virtuel sur OS/400 et de catalogue d'images
Nouvelles commandes (V5R20) liées aux objets *IMGCLG
CRTIMGCLG
par exemple :
CRTIMGCLG IMGCLG(cdimg) DIR('/img') CRTDIR(*YES)
puis ajout de CD par
ADDIMGCLGE IMGCLG(cdimg) FROMDEV(OPT01) (à exécuter x fois)
la commande PWRDWNSYS admet maintenant :
RESTART(*yes) IPLSRC(*IMGCLG) IMGCLG(cdimg)
et, VFYIMGCLG IMGCLG(cdimg) TYPE(*UPGRADE) vérifie que l'image
contient tout ce qui permet de changer de version correctement.
Pour tout autre utilisation, vous devez :
a/ créer une unité optique virtuelle
CRTDEVOPT
exemple : CRTDEVOPT DEVD(OPT02) RSRCNAME(*VRT) TYPE(632B)
b/ mettre l'unité VARY ON (WRKCFGSTS)
c/ monter l'image de CD sur cette unité virtuelle
LODIMGCLG
exemple : LODIMGCLG IMGCLG(cdimg) DEV(OPT02) OPTION(*LOAD)
(option accepte aussi *UNLOAD)
vous trouverez également les commandes suivantes :
RMVIMGCLGE, WRKIMGCLG, CHGIMGCLG, et DLTIMGCLG
Cette option est intéressante avec Fix Central.
- Téléchargez les fichiers (.bin) sur l'AS/400
- Passez les commandes suivantes
- CRTIMGCLG IMGCLG(PTFCATALOG) DIR('/ptfcatalog') CRTDIR(*YES)
TEXT('Catalogue d''images pour iPTF')
- ADDIMGCLGE IMGCLG(PTFCATALOG) FROMFILE(/iptf/iptfxxx.bin)
TOFILE(iptfxxx.bin)
- LODIMGCLG IMGCLG(ptfcatalog) DEV(OPT02) OPTION(*LOAD)
- VFYIMGCLG IMGCLG(ptfcatalog) TYPE(*PTF) SORT(*YES)
- installez vos ptf normalement, mais à partir de
OPT02
- pour défaire
LODIMGCLG IMGCLG(ptfcatalog) DEV(OPT02) OPTION(*UNLOAD)
vérifiez le N° (l'index) de votre(vos) fichiers image dans le catalogu
par WRKIMGCLGE ptfcatalog
enlevez l'image par
RMVIMGCLGE IMGCLG(PTFCATALOG) IMGCLGIDX(1) KEEP(*NO)
(autant de fois qu'il y a de fichiers images)
puis détruisez le répertoire contenant les fichiers .bin ou son contenu (/iptf, dans notre exemple).
Dernier point, disponible en V5R30 uniquement
--> générer des images de CD, suivez la procédure suivante :
CRTIMGCLG test DIR('/tmp')
ADDIMGCLGE test FROMFILE(*NEW) TOFILE(image.udf)
LODIMGCLG test DEV(optvir)
enfin
INZOPT DEV(optvir)
SAVLIB xxxx DEV(optvir)
- transférez le fichier en question sur votre poste, il est
au format UDF (iso 13346) et non ISO (iso 9660),
- trouvez un logiciel de gravure supportant ce format
- ou utiliser ISOBUSTER qui convertit UDF en ISO.
Dernière
minute, quelques rumeurs concernant la prochaine version.
|