CVTSPLSTMF : pour que les spoules soient encore plus simples
par Peter Clifford
De nouveaux paramètres rendent cet utilitaire de publication de rapports AS/400
encore plus polyvalent
Dans un précédent article, " CVTSPLSTMF facilite les spoules ", NEWSMAGAZINE,
octobre 2000, j'expliquais comment ma commande CVTSPLSTMF (Convert Spooled File
to Stream File) pouvait aider à publier des rapports AS/400 classiques dans les
formats suivants : texte ASCII, HTML ou PDF (Portable Document Format) Adobe.
Cet article a suscité des messages électroniques aussi nombreux qu'agréables,
mais certains lecteurs ont relevé quelques soucis et limitations de CVTSPLSTMF.
Nombreux sont notamment ceux qui ont subi une corruption des sources de programmes
pendant le téléchargement ou l'installation. Ceux qui ont eu du mal à lire les
fichiers PDF ou HTML créés par la commande CVTSPLSTMF, les indications figurant
dans l'encadré " Corriger la corruption de la source de CVTSPLSTMF " pourront
aider à détecter et à corriger ce problème.
Même si ma description originale de l'utilitaire évoquait clairement ses limitations,
ces lacunes ont agacé certains lecteurs, suscitant cette nouvelle version de CVTSPLSTMF.
Ainsi, l'option permettant de convertir des rapports en PDF traite désormais correctement
de larges rapports et des formats de page autres que A4 à l'italienne.
La commande est aussi accompagnée d'un texte d'aide, grâce à Jeff Kinzer.
On peut télécharger la nouvelle version de CVTSPLSTMF depuis le site Web de Systems
Journal, à l'adresse http://www.mysystemsjournal.com. Cet article résume certaines
modifications, sans montrer le nouveau code. Important : pour le téléchargement
du source en format PC ZIP, il faut lire ma mise en garde concernant la corruption
du code source dans l'encadré " Corriger la corruption du source de CVTSPLSTMF
".
| Corriger la corruption du source de CVTSPLSTMF Si l'on a du mal à ouvrir les fichiers PDF et HTML créés à l'aide de CVTSPLSTMF, il est probable que le source à partir duquel les programmes RPG ont été compilés, ait été corrompu pendant le téléchargement. PDF et HTML utilisent tous deux des caractères de contrôle spéciaux : des quotes dans PDF, et des parenthèses angulaires en HTML. Malheureusement, il y a un risque de traduction incorrecte de ces caractères quand on déplace le source entre PC et AS/400 (conversion ASCII-EBCDIC) ou entre AS/400 (conversion CCSID). Pour vérifier la présence de ce problème, il faut ouvrir le source du programme ILE RPG dans SEU et regarder la ligne contenant la phrase : /PDF /Text Cette ligne doit apparaître ainsi : CALLP WritePDF('[/PDF /Text]') Autrement dit, la phrase /PDF /Text doit se trouver entre quotes. S'il y a autre chose qu'une paire de quote (un signe pourcent et un point d'exclamation, par exemple), le source a été corrompu. On peut corriger ce problème de deux manières. On peut remplacer les caractères incriminés par les bons, en effectuant un scan/replace de tout le source du programme puis en recompilant. On peut également télécharger à nouveau les programmes depuis http://www.mysystemsjournal.com. Je conseille de télécharger les programmes déjà compilés dans un fichier de sauvegarde, on évitera ainsi très probablement le problème de mauvaise traduction du source. PC |
Les fonctions de CVTSPLSTMF ont été améliorées par l'ajout de paramètres Lire l'article
Les Bugbusters de Rochester
par Joanna Moore
A Rochester, une armée de clients en bêta-test traque les imperfections dans le
nouveau matériel et logiciel avant que l'utilisateur final ne les découvre.
Protocoles de sécurité : un état des lieux
par Mel Beckman
Sécurisez vos transactions électroniques en suivant de près l'évolution des protocoles
de sécurité du commerce électronique
Lorsque le protocole SSL (Secure Sockets Layer) est arrivé sur le marché il y
a 6 ans, les experts y ont vu la solution au problème de sécurité du commerce
électronique. Et il est vrai que SSL a beaucoup contribué à rassurer les internautes
utilisant leurs numéros de cartes de crédit pour les achats en ligne, faisant
ainsi exploser les ventes grand public sur le Web. SSL remplit bien sa fonction
de cryptage des données circulant entre l'acheteur et le vendeur, pour déjouer
l'interception par les voleurs des informations contenues sur les cartes de crédit.
Si la sécurité du commerce électronique se limitait à cela, SSL aurait donc résolu
la totalité des problèmes. Mais si la protection des numéros de cartes de crédit
et d'autres informations sensibles dans les transactions HTTP est le problème
le plus visible, ce n'est que le sommet de l'iceberg. Toutes les composantes d'une
transaction de paiement électronique ne passent pas par HTTP. Le vendeur peut
utiliser d'autres protocoles (courrier électronique, FTP (File Transfer Protocol),
LDAP (Lightweight Directory Access Protocol) par exemple) comme moyen de règlement
et pour s'assurer que l'argent aboutit bien dans son compte en banque. Une fois
le numéro de carte de crédit reçu par le vendeur, il faut valider le numéro, faire
approuver l'achat par l'organisme émetteur de la carte, et débiter l'organisme
financier de l'acheteur (figure 1).
L'ensemble du processus de transaction n'a pas de protection standard. Pis encore,
une faille du dispositif de sécurité peut intervenir dans l'une des étapes suivant
la commande HTTP sans que l'acheteur n'en ait connaissance. Les acheteurs en ligne
se croient donc plus en sécurité qu'ils ne le sont réellement.
Heureusement, les standards des protocoles Internet sont en train de changer pour
combler ces lacunes en matière de sécurité. Malheureusement, ils ne changent pas
assez vite et aucun standard de sécurité à lui seul ne répond aujourd'hui à tous
les besoins. SSL est en train de devenir un transport multiprotocoles et a été
rebaptisé TLS (Transport Layer Security) mais son adaptation au cryptage autre
que HTTP pose des problèmes. L'autre principal protocole de sécurité, SET (Secure
Electronic Transactions), est très efficace mais tellement lourd à mettre en oeuvre
que peu d'entreprises l'utilisent.
Pour arriver à une bonne sécurité des transactions, il est important de bien comprendre
les avantages et les limites de chaque protocole. De plus, une petite connaissance
de l'historique de chaque protocole donne un peu plus d'éclairage et peut aider
à choisir le cryptage le mieux adapté au commerce électronique. Enfin, il est
bon de savoir ce que l'AS/400 propose dans ce domaine.
Objectif: 100% Linux en 2005
par Isabelle Nougier
Linux constitue aujourd'hui une priorité au sein du département Informatique du
Ministère de la Culture, le DOSI (Département de l'Organisation et des Systèmes
d'Information). En effet, l'objectif fixé à l'horizon 2005 vise l'intégration
de Linux à l'ensemble de tous les serveurs de ses 200 sites.
Les 4 facteurs clés des performances d’Exchange Server
par Paul Robichaux
Dans les chaînes de restauration rapide, il est généralement possible de commander
un menu « plus ». Le principe est simple : vous obtenez plus de nourriture pour
une somme supplémentaire symbolique. Pourquoi ne pas appliquer cette logique à
notre marché ?
Imaginez la conversation suivante entre vous et votre fournisseur de systèmes
:
Vous : " J'aimerais acquérir un serveur bi-processeur Pentium III Xeon avec 512
Mo de RAM et un disque de 9 Go s'il vous plait. "
Le constructeur : " Désirez-vous essayer notre serveur super spécial de la semaine
? Pour seulement 100 Francs de plus, vous obtenez une grappe RAID 5 de 3 disques
de 18 Go et une copie gratuite de Quake III ? "
Si seulement il était possible d'acquérir des systèmes Exchange Server de cette
façon… Une des raisons pour lesquelles il est si difficile de maximiser les performances
d'Exchange Server, est qu'il est très difficile d'isoler un unique facteur qui,
à lui seul, est en mesure de modifier sensiblement les performances. De nombreuses
personnes pensent que les performances d'un ordinateur dépendent exclusivement
de la vitesse d'horloge de son processeur ? à l'ancienne époque, lorsqu'un processeur
8086 cadencé à 4 MHz était considéré comme puissant, cette conviction était peut-être
vraie. Mais avec les ordinateurs et les systèmes d'exploitation actuels, les performances
dépendent généralement de 4 ressources - la CPU, la mémoire, le sous-système de
disques et le réseau - et de la façon dont les applications d'un ordinateur cible
utilisent ces ressources. En comprenant ces ressources et processus, on peut apprendre
comment booster chacune des ressources (et donc les performances qu'on peut en
obtenir) pour en tirer l'efficacité maximum.
ISA Server : le proxy pare-feu de Windows 2000
par Sean Daily
Avec Proxy Server 1.0, Microsoft faisait sa première incursion dans deux nouveaux marchés alors balbutiants : la sécurité Internet et l'accès rapide au Web. Bien que n'assurant que des fonctions de sécurité de base et ne supportant pas plusieurs protocoles Internet répandus, la version initiale de Proxy Server connut un rapide succès parmi les organisations basées sur NT qui avaient besoin d'un contrôle d'accès des utilisateurs aux services Internet, d'une fonctionnalité de pare-feu Internet et de l'accès rapide au Web.Dans Proxy Server 2.0, Microsoft a remédié à plusieurs défauts de la première version en incluant la possibilité de contrôler le trafic entrant et sortant et en ajoutant le support d'un plus grand éventail de protocoles Internet et d'applications pour les clients supportant les proxy. Microsoft a également amélioré les fonctionnalités de sécurité du produit pour inclure une fonction sophistiquée de filtrage de paquets qui permet aux administrateurs de définir et de contrôler le flux de types de trafic spécifiques à travers le système Proxy Server. Pour beaucoup de grandes organisations, les principaux avantages de Proxy Server sont la capacité de s'appuyer sur la base de données des comptes d'utilisateurs NT pour contrôler l'accès des utilisateurs aux services Internet et la possibilité d'utiliser les fonctions de mise en mémoire cache pour optimiser les performances des connexions Internet. Mais malgré ses améliorations en matière de sécurité, il manque à Proxy Server 2.0 beaucoup de fonctions assurées par les autres pare-feux. Les grandes organisations sont donc nombreuses à douter de pouvoir en faire leur pare-feu primaire.
Etre accepté comme produit de sécurité Internet autonome, tel était donc le défi à relever pour Proxy Server. Microsoft a ainsi ciblé la prochaine version sur l'intégration des fonctions de sécurité qui font défaut à Proxy Server 2.0 et s'est fixé comme objectif de remédier également à un certain nombre d'autres inconvénients de Proxy Server 2.0, tels que l'absence de support de protocoles très répandus et l'obligation d'installer un logiciel sur le client pour l'accès à Proxy Server. La phase Beta 1 et béta 2 de la lignée de Proxy Server 2.0 ont été baptisées Comet par Microsoft, mais la beta 3 porte le nom de Microsoft Internet Security and Acceleration (ISA) Server, qui exprime mieux les capacités du produit et sa cible : le marché des pare-feux Internet.
Comment optimiser Net.Data avec JavaScript
par Jef Sutherland
Apprenez à faire une validation de formulaires côté client et à créer des formulaires
de courrier électronique avec Net.Data et JavaScript
Dans
les articles “ Utilisation de formulaires HTML avec Net.Data ”,
NEWSMAGAZINE, juin 1999 et “ Using RPG with Net.Data”, NEWS/400, mars
1999, nous avons vu comment utiliser Net.Data avec des programmes AS/400 et des
formulaires HTML (Hypertext Markup Language) pour créer des pages Web
interactives. Cet article s'intéresse à l'utilisation du langage JavaScript
avec les macros Net.Data et les formulaires HTML pour faire une validation de
formulaires côté client et créer une formulaire de courrier électronique. Si
Net.Data est une nouveauté pour vous, visitez la home page Net.Data d'IBM (http://www.as400.ibm.com/netdata)
pour plus d'informations.
Au préalable, il est bon de définir
quelques termes Java pour mieux comprendre où JavaScript s'inscrit dans la structure
Java.
- Java, comme vous ne l'ignorez certainement pas, est un langage de programmation évolué répandu, de Sun Microsystems, présent sur de nombreuses plates-formes dont l'AS/400.
- Les applets Java sont des objets source Java compilés. On peut les exécuter comme programmes natifs ou intégrés dans un document HTML et exécutés dans un navigateur Java.
-
JavaScript est un langage
de scripting orienté objet, développé par Netscape, qui s'exécute sur un
navigateur pour offrir des fonctions améliorées n'existant pas en HTML standard.
Ainsi, JavaScript peut accéder à un navigateur, et le contrôler pour créer
de nouvelles fenêtres, cadres et messages pop-up (comme le message d'erreur
de l'exemple de macro Net.Data de cet article). JavaScript est fréquemment
utilisé pour l'animation et le contrôle d'images sur des sites Web, ainsi
qu'avec les “ cookies ”, de petits fragments d'informations sur l'utilisateur
du Web, stockés sur l'ordinateur d'un client.
Contrairement à un programme CGI (Common Gateway Interface) ou une passerelle (Net.Data par exemple), qui s'exécute et est traité sur le serveur, le code JavaScript fait partie du document HTML et s'exécute côté client. JavaScript est une fonction avancée que certains navigateurs ne reconnaissent pas. Donc, assurez-vous que votre navigateur peut interpréter et exécuter ce langage de scripting. J'ai utilisé JavaScript avec les dernières versions de Netscape Navigator et de Microsoft Internet Explorer et ai constaté que les deux supportent certaines fonctions JavaScript de manière différente. D'où l'intérêt de tester vos documents HTML JavaScript avec différents navigateurs.
Comme JavaScript effectue le traitement côté client, les zones des formulaires HTML peuvent sauter la validation côté serveur, pour alléger l'application. Pour illustrer l'utilisation de JavaScript, nous verrons une macro Net.Data avec des formulaires HTML imbriqués et JavaScript (pour plus d'informations sur les formulaires HTML imbriqués, voir “ Utilisation de formulaires HTML avec Net.Data ”). La figure 1 montre la totalité du fichier de macros Net.Data de notre exemple. Le projet
- utilise une macro Net.Data pour afficher un formulaire HTML comportant une zone de saisie de numéro de pièce (figure 2) ;
- utilise une fonction JavaScript pour s'assurer de la saisie du numéro de pièce ;
- utilise un programme AS/400 pour extraire des informations supplémentaires sur la pièce de l'AS/400 au moment de la saisie de son numéro (remarque : il n'est fait référence à cette partie de l'application que dans le code source. Le code de cet article est purement illustratif et ne représente pas une application complète.) ;
- affiche un second formulaire Lire l'article
Attention! Méthode de Bugbuster
par Jeremy Likness
Les vrais professionnels analysent les problèmes de manière exhaustive avant de
recourir au débogueur ILE.
Les informaticiens professionnels chargés de repérer et d'éradiquer les bogues
ont une priorité : éliminer les problèmes techniques aussi rapidement que possible.
Par conséquent, ils ont tendance à s'en remettre énormément au débogueur ILE RPG.
Mais, éradiquer des bogues sur un AS/400 représente bien plus qu'une simple question
de commodité. Une bonne stratégie de déboguage implique au moins une part d'analyse
manuelle des données et/ou du code source afin de déterminer exactement comment
un bogue a pu se glisser entre les mailles du filet. Il est également recommandé
de conduire des opérations de suivi afin d'identifier et d'éliminer tout problème
potentiel révélé par le processus de déboguage.
En adoptant une stratégie de déboguage exhaustive plutôt qu'une approche de type
"le plus rapidement possible", on améliore sa maîtrise de l'AS/400 et de son environnement
applicatif. Fort de cette expertise, lorsque vous utiliserez effectivement le
débogueur, vous gagnerez énormément de temps. Pour une introduction au "code de
conduite de l'exterminateur de bogues averti", consultez l'encadré "Critters 101".
Dans le présent article, je fournis une méthode de base pour le déboguage des
systèmes, et présente plusieurs ressources importantes. Pour de plus amples renseignements
sur le déboguage sur AS/400, consultez les articles "ILE à l'oeuvre : le débogueur",
NEWSMAGAZINE, octobre 1997 et "Le déboguage des batchs sans peine", NEWSMAGAZINE,
mai 1997.
Les informaticiens professionnels ont tendance à s'en remettre énormément
au débogueur ILE RPG
Pour un management informatique efficace
par Jeremy Likness
Apprenez à constituer une équipe et à maintenir sa productivité
Dans l'univers sportif, les entraîneurs de football mettent à la disposition de
leurs joueurs d'une part des séances d'entraînement et une équipe d'encadrement,
et d'autre part, ils leurs communiquent des stratégies ciblant l'objectif ultime,
à savoir : remporter la victoire.
Pour atteindre cet objectif, les joueurs assument leurs rôles respectifs, marquant
des points ou bloquant les avancées de l'équipe adverse.
En raison des changements rapides dans les technologies de l'information, une
équipe compétente et motivée est essentielle au succès et à la croissance d'une
entreprise. Aussi, les directeurs informatiques (entraîneurs dans l'univers informatique)
doivent encourager leurs équipes afin de travailler à un niveau optimal. Mais
comment motiver une équipe pour qu'elle donne le meilleur d'elle-même ?
Voici quelques stratégies clés pouvant contribuer à vous aider à devenir un meilleur
chef d'équipe informatique.
CRYPTage et secrets de l’AS/400
par Gene Gaunt
L'utilitaire CRYPT simplifie le cryptage DES (Data Encryption Standard) bidirectionnel
dans les programmes ILE et OPM.
Il y a deux façons économiques de mettre en oeuvre le standard de cryptage DES
(Data Encryption Standard) dans les logiciels AS/400 :
- La fonction intégrée ILE (Integrated Language Environment) _CIPHER permet le cryptage unidirectionnel dans les programmes ILE.
- Le programme CRYPT, présenté dans cet article, permet le cryptage bidirectionnel, à la fois dans les programmes OPM (Original Program Model) et ILE.
Une copie de cette publication a servi à rédiger le programme CRYPT.
Un processeur DES permet un cryptage unidirectionnel ou bidirectionnel Lire l'article
Une rentrée rayée jaune et bleu
Une manifestation dédiée à Domino AS/400 pour les partenaires Lotus et Domino,
et de nombreuses autres initiatives ont marqué la rentrée.
La manifestation appelée “ Victory 99 EMEA ”, qui s'est tenue à Cannes au tout
début septembre, a remporté un franc succès puisque environ 2600 IBMers et partenaires
s'y étaient donné rendez-vous.
L'AS/400 figurait en bonne place dans cette manifestation consacrée à l'ensemble
de la gamme serveurs d'IBM Des ténors de la plate-forme comme Tom Jarosh, Tony
Madden ou encore Malcolm Haynes figuraient en tête de l'affiche. C'est aussi à
l'occasion de cette manifestation que s'est faite l'annonce de la cession à Cisco
Systems de l'offre “ réseaux ” d'IBM.
Mais après une conclusion en grande pompe de Victory 99 EMEA, avec notamment une
immense soirée sur la plage du Carlton le mercredi, c'est par un événement beaucoup
plus confidentiel mais néanmoins important que s'est poursuivie la semaine : IBM
et Lotus avaient en effet convié leurs BP (Business Partners) et LBP (Lotus Business
Partners) à un séminaire marketing baptisé Victory AS/400, sur le thème : “ Les
clés du succès pour vendre Domino AS/400 ”. Vaste programme !
Une soixantaine de représentants des ces deux “ espèces ” se sont alors réunis
au long des deux jours restants de la semaine, pour mieux comprendre et connaître
l'AS/400 pour les LBP, Lotus Domino pour les BP, ceci dans le but avoué de se
donner les moyens de “ booster ” les installations Domino sur AS/400. L'objectif
de la réunion était double : fournir à tous les arguments de vente sur Domino
pour AS/400, et réunir les partenaires AS/400 et Lotus pour développer du Business
commun sur Domino pour AS/400.
Et sur ce dernier point, force est de constater qu'il y avait fort à faire. L'initiative
a non seulement montré qu'un rapprochement entre partenaires Lotus et IBM et une
meilleure connaissance du domaine de compétences de l'autre étaient indispensables,
mais a largement oeuvré dans le sens de rapprochements effectifs. Les tendances
de la rentrée étaient donc sans conteste à l'alternance des couleurs, aux rayures
jaune Lotus et bleu IBM.
L'AS/400 est devenu la seconde plate-forme d'installation de Domino en
termes de nombre de serveurs
Contraintes d’intégrité et Triggers: vers une chronologie parfaite
par Paul Conte
Maîtrisez la chronologie d'exécution des contraintes et des triggers des bases
de données
DB2 Universal Database for AS/400 (DB2 UDB) comporte plusieurs fonctions importantes
qui d'une part assurent l'intégrité des données et d'autre part, étendent les
fonctions des bases de données. Deux de ces fonctions, les contraintes d'intégrité
référentielle et les triggers (ou programmes déclencheurs) peuvent être définis
par un administrateur de bases de données (ou un utilisateur autorisé) pour se
protéger des mises à jour susceptibles de générer des données invalides ou incohérentes.
On peut également utiliser des triggers pour exécuter des tâches qui ne sont pas
intégrées dans DB2 UDB (comme afficher des informations sélectionnées sur des
mises à jour de bases de données dans une table de journalisation définie par
un utilisateur par exemple).
Du fait qu'une opération sur une base de données peut entraîner DB2 UDB à évaluer
une ou plusieurs contraintes et appeler un ou plusieurs triggers, il est essentiel
de maîtriser la chronologie des différentes opérations d'insertion, de modification
et de suppression dans les bases de données. Le présent article apporte quelques
informations sur la chronologie des contraintes et des triggers afin de vous permettre
de concevoir des applications fonctionnant de manière efficace.
Pour commencer, examinons rapidement les concepts de base des contraintes d'intégrité
référentielles et des triggers (pour plus de plus amples informations, veuillez
consulter l'encadré "Bibliographie").
Les contraintes d'intégrité référentielle et les triggers peuvent protéger des
données invalides ou incohérentes
Quoi de neuf ? Un digest des dernières nouveautés
L'architecte des sécurités de l'AS/400 recense les nouveautés et améliorations des V4R2 et V4R3
Deux
releases de l'OS/400 (V4R2 et V4R3) ont été annoncées depuis ma dernière
revue en matière de sécurités. Toutes deux renforcent les sécurités dans
deux domaines principaux.
Les
améliorations
-
permettent de mieux maîtriser la configuration de l'environnement TCP
-
facilitent la protection et la gestion du e-business
-
permettent de mettre en place un plan de sécurité initial tout en découvrant des possibilités plus détaillées
Lire l'article
Le blues du hardware
Windows 2000 a la réputation de supporter plus de périphériques grâce au support de Plug and Play et à l'ajout d'une grande quantité de drivers. Pourtant, partir du principe que vos périphériques matériels seront supportés par Windows 2000 est peut-être une erreur. Mon expérience de la connexion de périphériques à un système Windows 2000 ne m'a pas franchement rassuré sur le support hardware de Windows 2000. D'autant que ces matériels exploitent des drivers Windows NT 4.0. Les matériels que j'ai essayé de faire fonctionner avec un système Windows 2000 sont une imprimante/scanner/fax HP OfficeJet 710 et un contrôleur SCSI Future Domain TMC-850 MER.
Lire l'article
Offrez la
Le module RPG IV CallerID permet d'identifier le programme ayant provoqué une
modification d'une base de données.
Vous êtes-vous jamais demandé ce qui se cachait à l'autre bout de l'appel d'un
programme trigger ? Eh bien, il est maintenant possible d'installer "CallerID"
(gratuitement) pour permettre aux programmes trigger de déceler l'origine des
modifications survenues dans la base de données.
Techniquement, des opérations internes sur les fichiers OS/400 telles que QDBPUT
(Database add a record) et QDBUDR (Database update, delete, or release a record)
entraînent l'appel d'un programme trigger. Toutefois, avec l'aide de quelques
API de gestion des messages, il est possible d'identifier le programme qui se
cache derrière ces opérations.
La connaissance de l'origine des modifications de la base de données peut se révéler
fort utile. Envisageons les scénari suivants :
Attention: inondation. Etant donné que
les triggers interceptent toutes les modifications effectuées dans un fichier
base de données, ils peuvent se révéler efficaces pour assurer la cohérence des
données dans une ou plusieurs applications. Mais, un fichier qui change fréquemment
peut imposer une charge très importante à un programme trigger. Aussi, afin de
limiter le surcroît de travail de ce type de programme, on peut choisir de filtrer
certaines des modifications pour que le programme trigger n'exécute pas l'intégralité
de sa routine à chaque fois qu'une modification est effectuée.
Supposons que vous utilisiez un programme trigger pour introduire des modifications
démographiques effectuées par une application sur une autre, et que l'application
effectuant les modifications stocke des informations démographiques et financières
dans le même fichier. Supposons également que vous ayez un traitement de nuit
sur ce fichier, qui ne met à jour que les informations financières mais agit sur
un grand nombre d'enregistrements. Plutôt que de comparer systématiquement les
images de chaque champ "démographie" avant et après que le programme trigger ait
été appelé, vous pouvez simplement filtrer les modifications effectuées par le
traitement de nuit.
Surveiller toutes les issues. Peut-être
essayez-vous de faire un contrôle qualité en surveillant la fréquence à laquelle
il est nécessaire de "glisser" des modifications dans une base de données du fait
de limitations des applications existantes. Il est possible de calculer le nombre
de fois que DFU (Data File Utility ), SQL ou un utilitaire base de données quelconque
a été utilisé pour modifier certains fichiers de la base. Même si vos applications
standards sont excellentes, vous pouvez souhaiter garder une trace des interventions
réalisées sur les fichiers sans utiliser d'application, pour identifier des violations
de sécurités potentielles, ou d'éventuels besoins en formation.
Eviter les boucles sans fin. Imaginons
que vous utilisiez des programmes triggers pour transmettre des modifications
démographiques entre une application A et une application B. Quand un fichier
est mis à jour dans l'application A, le programme trigger met à jour le fichier
associé de l'application B, et vice versa. Ce processus paraît clair et simple.
Cependant, il se pose un problème lorsque le programme trigger de l'application
A met à jour un fichier de l'application B, obligeant le trigger de cette dernière
à mettre à jour l'enregistrement original qui a été modifié dans l'application
A. Ce cas de figure peut provoquer l'appel récursif du programme trigger de l'application
A, d'où risque de bouclage.
Des boucles inutiles peuvent également poser problème lorsqu'une interface EDI
(Echange de Données Informatisées) est utilisée entre deux systèmes. Une modification
de la base de données d'un système se répercuter de système en système jusqu'à
ce que le système récepteur sache que la modification provient du système émetteur,
et que par conséquent il n'est pas nécessaire de lui renvoyer la modification.
Par où commencer avec les jointures SQL/400
Le coding de base des jointures SQL est simple ; voici comment procéder
Une opération de jointure sur la base de données combine des lignes (c'est-à -dire
des enregistrements) provenant de deux ou plus tables (c'est-à -dire des fichiers)
pour produire une table résultat utilisable ensuite pour d'autres opérations.
DB2 Universal Database for AS/400 (UDB/400) permet les opérations jointes par
l'intermédiaire de plusieurs mécanismes :
- fichiers logiques joints définis en DDS
- les paramètres FILE et FLD de la commande OPNQRYF (Open Query File)
- les clauses FROM et WHERE d'une sous-selection SQL
Tirez la quintessence de votre base de données grâce à RPG & SQL !
Aidez-vous des résultats de nos tests pour accroître la vitesse et de l'efficacité de vos applications.Qu'il s'agisse de développer de nouvelles "e-applications" ou d'améliorer d'anciennes "t-applications " (applications traditionnelles), les performances de la base de données est souvent le facteur prépondérant dans la rapidité du logiciel. La satisfaction de la direction et des clients est proportionnelle à la rapidité d'obtention des données. Avec DB2 Universal Database for AS/400 (DB2 UDB), on peut améliorer considérablement les performances applicatives (éventuellement en multipliant plusieurs fois le débit de l'application non optimisée) en choisissant judicieusement la méthode de mise en œuvre et de configuration.
La satisfaction de la direction et des clients est proportionnelle à la rapidité d'obtention des données
Pour obtenir des données concrètes à l'appui de ces types de décisions, j'ai effectué de nombreux benchmarks en utilisant les versions V4R4 de RPG IV et SQL. Certaines constatations sont étonnantes et mettent à nu la manière dont ces langages et DB2 UDB pratiquent l'accès aux bases de données.
Après avoir étudié ces résultats et en avoir discuté avec les IBMers de Rochester, j'ai conclu que les seuls manuels AS/400 ne sont pas suffisants pour optimiser les performances des bases de données. Tandis qu'avec les données et les analyses comparatives de cet article, vous pourrez pousser vos applications dans leurs derniers retranchements. Et aussi comparer les performances des I/O intégrées et du SQL imbriqué dans le RPG IV. (Si vous découvrez le coding SQL, voyez l'encadré " Quelques canevas SQL pour programmeurs RPG", qui fournit des information sur un article en ligne démontrant les techniques de coding SQL/400 pour programmeurs RPG.)
Sécuriser les transactions électroniques par cartes de crédit
Votre entreprise a très probablement décidé de tirer profit du potentiel d'Internet
en prenant un nom de domaine et en développant un site Web pour faire la promotion
de ses produits et services. Les consommateurs qui cherchent des informations
sur les produits en se connectant sont bien informés pour acheter ; le meilleur
moment pour encourager un achat en ligne est celui où les internautes visitent
un site. Pourtant, si ces visiteurs ne peuvent réaliser toute la transaction,
notamment le paiement, vous risquez de perdre des ventes.
Le commerce électronique permet d'assurer le paiement en temps réel des commandes
des clients sur votre site Web, en leur évitant l'obligation d'entreprendre une
démarche supplémentaire, comme, par exemple, faire une commande séparée par fax
ou par téléphone. Vos clients reçoivent immédiatement la confirmation de leur
commande et vous n'avez plus besoin de vérifier manuellement des informations
de contact et de paiement.
Dans cet article je donne un aperçu du processus de paiement du commerce électronique
et je décris un puissant freeware - CyberCash, qui peut s'utiliser avec Internet
Information Server - permettant d'accepter des paiements par carte sur Internet.
(Bien que CyberCash fonctionne avec les précédentes versions d'IIS, je me réfère
dans cet article à IIS 4.0). Une fois que vous avez démarré une activité de commerce
électronique, le logiciel d'administration CashRegister de CyberCash vous aide
à maintenir les transactions de votre site.
Dopez les performances de Domino R5 !
par Kim Greene
Grâce à ces quelques conseils, rendez la R5 de Domino encore plus performante
Domino R5 vise surtout à l'amélioration des performances. Parmi les améliorations
les plus notables de cette version, on trouve une nouvelle structure de base de
documents, une meilleure évolutivité dans une partition unique, le pooling des
" threads " (unités d'exécution), de meilleures performances de la pile TCP/IP,
et des réglages sur la taille mémoire allouée par utilisateur. Ces améliorations
donnent aux utilisateurs AS/400 encore plus d'évolutivité qu'avec Domino R4.6.x
pour AS/400. Examinons les principales améliorations de performances et quelques
techniques permettant de les utiliser pour obtenir le maximum de performances
de R5 sur l'AS/400.
Un projet tout Java
Par Isabelle Nougier
C'est en misant sur le futur et en optant pour un changement radical de technologie que la Cavamac refond intégralement son système
d'information La Cavamac est une caisse de retraite et de prévoyance pour les
agents généraux d'assurance sous tutelle de la Sécurité Sociale. Elle gère de
l'ordre de 20000 cotisants et 30000 retraités, pour un effectif d'environ 80
personnes. Au moment du passage à l'an 2000, cette caisse de retraite s'est
vue confrontée à un dilemme : fallait-il refondre complètement le système d'information
ou fallait-il simplement modifier l'existant ? A ce moment précis, le problème
ne s'est pas posé très longtemps, les délais imposés par une refonte du système
étant trop importants pour l'échéance "An 2000".
Le passage à l'An 2000 s'est donc fait en modifiant l'existant, mais l'idée
de la refonte n'était pas écartée puisque le système d'information commençait
à vieillir ; sa fiabilité diminuait, il avait de nombreuses carences, il datait
de la fin des années 70 et avait vu passer toutes les générations de midrange
IBM, en passant par le 38 jusqu'à l'AS/400, des morceaux de programmes avaient
été rajoutés au fur et à mesure des différents besoins, et il n'avait de ce
fait jamais constitué une entité et pour ne pas se trouver confronter au même
dilemme pour le passage à l'Euro, la décision de la refonte du système a été
prise courant du premier trimestre 1999.
Une vingtaine de propositions ont été reçues, parmi lesquelles
deux intégralement en Java
Du fait de son statut, la Cavamac a pour obligation d'émettre un appel d'offres
public. Cet appel d'offres a été lancé au milieu de l'année 1999; il imposait
principalement deux contraintes, à savoir celle de délais qui devaient être
compatibles avec le passage à l'Euro, et l'utilisation de l'AS/400 comme serveur
central, cette plate-forme ayant largement fait ses preuves jusqu'alors. Le
projet, baptisé NSI pour "Nouveau Système d'Information " (lire "Nessie", comme
le fameux monstre qui se cache -paraît-il- dans les tréfonds du Loch Ness. Cherchez
l'erreur !) dont le logo représente un éléphant (une référence à la mémoire,
paraît-il…) avait trois objectifs principaux : qualité, sécurité et productivité.
Une vingtaine de propositions ont été reçues, parmi lesquelles deux intégralement
en Java, dont une proposée par IBM.
UTI s'est tout de suite dirigée vers une solution entièrement
Java, malgré le peu de recul que comptait cette technologie
La Cavamac n'a alors que peu hésité, malgré le risque que cela pouvait engendrer
d'utiliser des technologies nouvelles, et en septembre 1999, c'est la proposition
d'UTI (Union Technologies Informatique) en Java qui a été retenue. Cette société
de services de 600 personnes aujourd'hui, à forte connotation AS/400, n'était
pas inconnue de la Cavamac puisque c'est elle qui, en son temps, avait assuré
le passage à l'An 2000. A la lecture du cahier des charges imposé par la Cavamac,
UTI s'est tout de suite dirigée vers une solution entièrement Java malgré le
peu de recul que comptait cette technologie, puisque à l'époque il n'y avait
qu'une trentaine de projets entièrement conçus en Java. Plusieurs raisons ont
influencé ce choix, entre autres l'objectif de constituer un système pérenne
(plus de 10 ans), d'avoir un système très souple en ce qui concerne les différentes
compatibilités, avoir une maintenance aisée, et de plus UTI avait déjà une expérience
en interne, ce qui lui permettait de cerner parfaitement les avantages et les
inconvénients de cette technologie.
Les plus consultés sur iTPro.fr
- Anticiper la nouvelle génération d’agents d’IA : concevoir des systèmes autonomes sécurisés, fiables et conformes
- L’épuisement professionnel touche les experts de la cybersécurité
- Toute infrastructure devient une infrastructure d’IA
- Mesures de cybersécurité à mettre en place d’ici 2030
- Projets d’IA : la maîtrise prime sur la vitesse
