Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012

Dimension: px
Commencer à balayer dès la page:

Download "Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012"

Transcription

1 IBM Power Systems - IBM i IBM Rational Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012 S13 RPG IV - Les 10 choses qu'un développeur RPG doit connaître - Trucs et astuces Vendredi 6 avril h00-12h30 Philippe Bourgeois IBM France - pbourgeois@fr.ibm.com

2 Objectifs de la présentation Les 10 choses qu'un développeur RPG doit connaître Présenter les techniques de développement modernes ainsi que les meilleures pratiques pour développer des applications RPG aujourd hui Trucs et astuces RPG IV Compilation conditionnelle, structures de données qualifiées, tri de tableaux, OVERLAY d une DS 2

3 Les 10 choses qu'un développeur RPG doit connaître 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté 2. Utilisez des sous-procédures, en interne, comme en externe 3. Utilisez des prototypes pour tous les appels 4. Faites en sorte que votre logique RPG soit appelable de n importe où 5. Exploitez la puissance du SQL embarqué 6. Utilisez un environnement de développement moderne 7. Laissez DB2 travailler pour vous 8. Utilisez XML pour l échange de données 9. Connaissez les possibilités d interaction RPG / Web 10. Documentez-vous - Formez-vous 3

4 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Rappels - Pourquoi développer en RPG IV? Pour gagner en simplicité, lisibilité, rapidité, productivité, maintenabilité Parce qu il est plus facile, pour un jeune, de développer en RPG IV, en format libre et sous RDp qu en RPG/400 en mode colonné, sous SEU Parce que certaines fonctionnalités de l IBM i ou des outils de développement ne sont disponibles ou intéressantes que pour des programmes dont le source est de type RPGLE (xxxle) Parce que le RPG/400 a été annoncé en mars 2008 comme stabilisé (n évoluera plus). Seul le RPG IV évolue et continuera d évoluer Rappel : la commande CVTRPGSRC permet de convertir des sources RPG/400 en RPG IV (RPG RPGLE) Mais ce n est pas un outil de reengeenering du code 4

5 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Rappels - Le RPG IV versus le RPG/400-1/2 Spécifications D pour déclarer les zones, DS, tableaux Support des noms longs et des minuscules / majuscules Nouveaux types de données Support de la valeur indéfinie et des zones de longueur variable Possibilité de définir des modèles Extension des limites Lignes à blanc Mots-clés Nouveaux codes opération Expressions Format libre (y compris en SQL) Fonctions intégrées Support des zones de type date, heure et horodate Support des pointeurs 5

6 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Rappels - Le RPG IV versus le RPG/400 2/2 Options de compilation et compilation conditionnelle Environnement ILE - Procédures Structures de données qualifiées Interopérabilité avec Java Contrôle à la compilation et à l exécution des fichiers à ouvrir Génération PCML Sources dans l IFS Support XML en lecture Tri des DS Nouvelle gestion des erreurs Support du multi-threading Fichiers locauxs et fichiers en paramètre Lecture des Result Sets 6

7 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Rappels Extension des limites Description RPG/400 RPG IV Nom de zone, tableau, DS Nom de fichier, format 8 10 Longueur d une zone alphanumérique Longueur d une zone numérique 30 30/31/63 Nombre de positions décimales 9 30/31/63 Longueur d une constante Nombre de fichiers 50 *nomax Nombre de tableaux 200 *nomax Nombre de sous-routines 256 *nomax Nombre de postes d un tableau (*) Nombre de DS (*) (*) La taille totale ne doit pas dépasser octets 7

8 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Pour améliorer la lisibilité Du code plus lisible est plus facile à maintenir Du code plus lisible est plus facile à découvrir Lisibilité en RPG IV Mixez minuscules et majuscules Utilisez des noms longs, de 10 à 14 caractères (et plus si vous le désirez) Aérez votre source : ajoutez des lignes blanches Toutes les définitions de variables internes devraient se faire en spécifications D Utilisez la notation de longueur et non de position dans les DS Utilisez les expressions dans les calculs Codez en format libre (indentation ) 8

9 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Améliorer la lisibilité des spécifications D 9

10 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Améliorer la lisibilité des spécifications C 10

11 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Améliorer la lisibilité des spécifications C 11

12 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Supprimez les indicateurs! Ou au moins les indicateurs numérotés Utilisez des fonctions intégrées dans vos tests d E/S %EOF, %FOUND, %EQUAL, %LOOKUP, %ERROR Utilisez des indicateurs nommés (type de données : N) dans le reste de source Ces indicateurs peuvent être mappés pour remplacer les indicateurs utilisés dans les DDS En utilisant le mot-clé INDDS sur les spécifications F des fichiers écran (le mot-clé INDARA doit être indiqué au niveau du fichier écran) Attention, dans ce cas les indicateurs classiques (*INxx) ne peuvent plus être utilisés Une autre solution consiste à utiliser des constantes nommées comme alternative aux numéros d indicateur 12

13 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Les indicateurs *INxx ne peuvent plus être utilisés 13

14 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Les indicateurs *INxx peuvent toujours être utilisés 14

15 1. Faites du vrai RPG IV Pas juste du RPG/400 reformatté Utilisez les fonctions intégrées Pour expressions alphanumériques %TRIM, %TRIML, %TRIMR - %CHECK, %CHECKR, %XLATE %SCAN, %REPLACE, %SCANRPL, %SUBST %DATE, %TIME, %TIMESTAMP %DEC, %DECH, %INT, %INTH, %UNS, %UNSH, %FLOAT Pour expressions numériques %DEC, %DECH, %INT, %INTH, %UNS, %UNSH, %FLOAT %DIV, %ABS, %REM - %EDITC, %EDITW, %EDITFLT, etc. Pour expressions date, heure, horodate %DIFF, %SUBDT, %CHAR, %DEC %YEARS, %MONTHS, %DAYS, %HOURS, %MINUTES Pour remplacer les indicateurs %EOF, %EQUAL, %ERROR, %FOUND, %OPEN, %STATUS Pour expressions diverses %LEN, %SIZE, %ELEM, %XFOOT, %NULLIND, %LOOKUPxx, %SUBARR, %OCCUR, %FIELDS, %KDS, %PARMNUM, %OPEN, %XML, %HANDLER 15

16 2. Utilisez des sous-procédures, en interne, comme en externe Qu est-ce qu une sous-procédure? Un pont entre une sous-routine et un programme Comme une sous-routine Elle peut être codée dans le programme où elle est appelée Elle se place en fin des spécifications C Elle accède aux fichiers et variables du programme Elle est compilée avec le programme qui l appelle Elle s exécute avec des performances similaires Comme un programme Elle peut contenir ses propres fichiers et variables (spécifications F et D) Elle accepte des paramètres Elle peut être compilée séparément de l appelant pour des facilités de réutilisation Sous-procédure externe. Pas du duplication de code, ni au niveau source, ni au niveau objet 16

17 2. Utilisez des sous-procédures, en interne, comme en externe Les plus des sous-procédures Définition de variables locales et de fichiers locaux Possibilité de définir une variable de retour Analogie avec les méthodes Java ou les fonctions C, PHP, etc. : on peut se créer ses propres fonctions (comme les fonctions intégrées du RPGIV (BIF Build-In-Function) : If %eof(fic1) If ClientValide(numcli) Possibilité de passer des expressions en paramètre Passage de paramètres par référence, par valeur ou en lecture seule Passage optionnel de paramètres Possibilité d appeler un programme externe Possibilité de faire référence à une procédure externe (procédure C par exemple) Possibilité d appel récursif 17

18 2. Utilisez des sous-procédures, en interne, comme en externe Exemple de programme avec une sous-routine 18

19 2. Utilisez des sous-procédures, en interne, comme en externe Le même exemple avec une sous-procédure externe - 1/3 Le source contenant le prototype de la sous-procédure Sera inclus dans le source qui contient le code de la sous-procédure et dans le code qui appelle la sous-procédure La procédure renvoie un numérique de 1,0 Une date est passée en paramètre 19

20 2. Utilisez des sous-procédures, en interne, comme en externe Le même exemple avec une sous-procédure 2/3 Source contenant la sous-procédure Variables locales Renvoi du numéro du jour Réception du paramètre Ensuite : - compilation pour obtenir un module (CRTRPGMOD) - création d un programme de service contenant le module (CRTSRVPGM) - Création d un répertoire de liage contenant le programme de service (CRTBNDDIR) 20

21 2. Utilisez des sous-procédures, en interne, comme en externe Le même exemple avec une sous-procédure - 3/3 Le source du programme principal On fait référence au répertoire de liage par le mot-clé BNDDIR en spécification H On compile le code ci-dessous par un CRTBNDRPG Appel de la sous-procédure comme une fonction 21

22 2. Utilisez des sous-procédures, en interne, comme en externe Pour en savoir plus Se reporter à la session S5 - RPG IV Des sous-routines aux sous-procédures 22

23 3. Utilisez des prototypes pour tous les appels Les prototypes permettent d utiliser le code opération CALLP (CALL Prototypé) pour exécuter : Une sous-procédure Une procédure liée À la place de CALLB, en utillisant le mot-clé EXTPROC Un programme externe A la place de CALL, en utilisant le mot-clé EXTPGM En format libre CALLP est optionnel, on peut directement utiliser le nom de la procédure En utilisant le mot-clé CONST au niveau d un paramètre passé : Le paramètre pourra ne pas être une variable : ce pourra être par exemple une constante, une fonction intégrée, une expression Les valeurs passées n auront pas forcément les même type et longueur que celles attendues au niveau du prototype (packé/étendu, formats de date différents ) En utilisant le mot-clé CONST au niveau d un paramètre reçu : La valeur du paramètre ne peut pas être modifiée (lecture seule) 23

24 3. Utilisez des prototypes pour tous les appels Utilisation d un prototype pour appeler un programme externe Nom du programme à appeler Appel du programme par CALLP En format libre, CALLP est optionnel, on pourrait juste indiquer : pr_pgm2(z1:z2); 24

25 3. Utilisez des prototypes pour tous les appels Utilisation d un prototype dans le programme appelé Les *ENTRY PLIST et PARM sont remplacés par une interface de procédure (pi) 25

26 3. Utilisez des prototypes pour tous les appels Utilisation du mot-clé CONST Les valeurs passées n ont pas forcément les mêmes type et longueur que ceux définis dans le prototype On peut passer des expressions en paramètre Ici en 7.1 (sinon il faut déclarer le prototype) OU 26

27 4. Faites en sorte que votre logique RPG soit appelable de n importe où a. Restructurer Séparer la logique métier de l interface utilisateur Développement MVC (Modèle Vue Contrôleur) Indépendance back-office / front-office La même logique doit pouvoir être appelée de plusieurs interfaces b. Modulariser Réutilisation du code pour éviter la duplication et les tests Réduction de la complexité (lisibilité - Création et appel de fonctions, composants plus petits) Faciliter la maintenance (distribution des tâches) Créer des fonctions métier, des fonctions d accès aux données, assurer l unicité des fonctions créer des services 27

28 4. Faites en sorte que votre logique RPG soit appelable de n importe où Vous avez restructuré les programmes existants afin d isoler les fonctions métier dans des programmes ou des procédures RPG / COBOL Vous avez développé des nouvelles fonctions dans des programmes ou des procédures RPG / COBOL Comment les exposer afin qu ils(qu elles) puissent être appelé(e)s par d autres applications externes au System i (Java, PHP, VB,.NET, SQL ou autre)? Plusieurs solutions dont SQL : les procédures stockées et les fonctions utilisateur Les Services Web 28

29 4. Faites en sorte que votre logique RPG soit appelable de n importe où Procédures stockées externes Fonctions externes 29

30 4. Faites en sorte que votre logique RPG soit appelable de n importe où Services Web 30

31 4. Faites en sorte que votre logique RPG soit appelable de n importe où Pour en savoir plus Session S23 Des Services Web dans vos programmes RPG/COBOL Vendredi 6 avril 15h30 31

32 4. Faites en sorte que votre logique RPG soit appelable de n importe où Pour en savoir plus Evénement «Modernisation et développpement d applications IBM i» des 16 et 17 mai

33 5. Exploitez la puissance du SQL embarqué Pourquoi du SQL dans les programmes RPG / COBOL? Traitement de masse (manipulation de plusieurs enregistrements en une seule instruction) Gestion plus souple des sélections dynamiques Exploitation des fonctions SQL (fonctions scalaires, fonctions de colonne, groupage, sous-requêtes ) Evite de multiplier les vues Permet de réduire le lien programme fichier C est le langage «universel» d accès aux bases de données Qu est-ce qui peut être embarqué? Des instructions de manipulation des données (DML) SELECT, INSERT, UPDATE, DELETE Mais également des intructions de définition des structures CREATE TABLE Et puis des instructions de programmation propres à SQL DECLARE CURSOR, OPEN, CLOSE, FETCH 33

34 5. Exploitez la puissance du SQL embarqué SQL sans curseur, traitement de masse SQL avec curseur, traitement ligne à ligne 34

35 5. Exploitez la puissance du SQL embarqué Pour tester les instructions SQL : Fonction «Exécution de scripts SQL» de System i Navigator Testeur de code SQL de RDp 35

36 5. Exploitez la puissance du SQL embarqué Pour en savoir plus Se reporter à la session S3 - DB2/SQL Un tour d horizon des possibilités actuelles 36

37 5. Exploitez la puissance du SQL embarqué Pour en savoir plus Evénement «Modernisation et développpement d applications IBM i» des 16 et 17 mai

38 6. Utilisez un environnement de développement moderne C est-à-dire RDp : dans le monde IBM i c est le nom raccourci du produit IBM Rational Developer for Power Systems RPG and COBOL Development Tools for i C est le successeur Des ADTS Application Development Tool Set : SEU, PDM, SDA, RLU, ISDB De CODE/400 COoperative Development Environment for AS/400 De WDSC WebSphere Development Studio Client De RDi Rational Developer for IBM i C est un produit basé sur Eclipse Rappel : les ADTS n évoluent plus (les nouveautés IBM i 7.1 ne sont pas supportées dans SEU) 38

39 6. Utilisez un environnement de développement moderne Pourquoi utiliser RDp? Pour la productivité Par exemple, l éditeur de source : Au moins 2 fois plus de lignes à l écran Sources en couleur Commentaires différenciés Ouverture simultanée de plusieurs sources Vues multiples d un même source en édition Annuler/Rétablir (Undo/Redo) illimité Pas besoin de fermer le source pour sauvegarder ou compiler Aide en ligne contextuelle permettant d accéder aux manuels de référence Complétion de code Vue structure du programme : références croisées, fichiers, zones, sous-routine/sous-procédures Affichage des imbrications de bloc Vérification des erreurs et remontée automatique dans RDp etc. 39

40 6. Utilisez un environnement de développement moderne 40

41 6. Utilisez un environnement de développement moderne 41

42 6. Utilisez un environnement de développement moderne 42

43 6. Utilisez un environnement de développement moderne Pour en savoir plus Se reporter à la session S1 - RDp : vous n utiliserez plus jamais SEU! Session S17 RDp - Trucs et astuces Vendredi 6 avril 13h30 43

44 7. Laissez DB2 travailler pour vous Déplacement des règles métier au niveau de la base de données L objectif étant que ces règles soient vérifiées quelle que soit l interface d accès à la base (application 5250, application Web ) Evite la duplication de la logique Renforce l intégrité Comment? a) Générer automatiquement les clés (colonnes auto-incrémentées) Attribut IDENTITY CREATE TABLE employes (numemp INT GENERATED ALWAYS AS IDENTITY (START WITH 10, INCREMENT BY 10), nomemp CHAR(40)) INSERT INTO employes ( ROMETTY ) Objet SEQUENCE Pour disposer d une valeur auto-incrémentée extérieure à une table CREATE SEQUENCE s1 START WITH 1 NO MAXVALUE INSERT INTO employes VALUES(NEXT VALUE FOR s1, ROMETTY )) 44

45 7. Laissez DB2 travailler pour vous Déplacement des règles métier au niveau de la base de données Comment? (suite) b) Mettre en place les contraintes base de données De clé primaire et de clé unique Pour s assurer de l unicité de la clé D intégrité référentielle Pour établir des dépendances entre tables De vérification Pour s assurer du contenu d une colonne c) Mettre en place des triggers (déclencheurs) Exécution de logique avant et/ou après l insertion, la mise à jour ou la suppression d enregistrements Disponibles également niveau colonne et instruction S exécutent quelle que soit l interface d accès à la base 45

46 8. Utilisez XML pour l échange de données En V5R4 sont apparus des codes-opération et fonctions intégrées RPG permettant de traiter des flux/documents XML en lecture : XML-INTO, XML-SAX, %XML, %HANDLER Ces fonctionnalités ont été améliorées en IBM i 7.1 et plus récemment par PTF Syntaxe de XML-INTO : XML-INTO destination %XML(origine: options ) La fonction %XML - Origine : Une variable contenant du XML Un fichier IFS (donné sous forme de constante ou de variable) Destination : Une variable : Simple ou DS à n dimensions A utiliser si le nombre d éléments à traiter est connu à l avance Une procédure à appeler : Désignée par la fonction %HANDLER Qui sera invoquée autant de fois que d éléménts XML rencontrés A utiliser si le nombre d éléments à traiter est inconnu à l avance 46

47 8. Utilisez XML pour l échange de données Lecture d un fichier XML avec XML-INTO 47

48 8. Utilisez XML pour l échange de données Lecture d un fichier XML avec XML-INTO et un handler 48

49 8. Utilisez XML pour l échange de données Ecriture XML Le RPG ne dispose pas de codes-opération natifs pour créer un fichier XML Quelques solutions pour générer des fichiers XML en RPG : 1) Via une table SQL 2) Par des APIs IBM 3) Par des APIs du XML Toolkit 4) Par des APIs tierces 5) Par un appel à d autres langages (C, Java, PHP) En IBM i 7.1 : support XML natif intégré à DB2 for i Nouveau type de données : XML Lors de la définition d une colonne d une table - Pour stocker un document XML Le type XML peut également être défini pour un paramètre de procédure stockée et est supporté dans les interfaces de programmation (ODBC, JDBC, SQLRPG ) Décomposition de documents XML en colonnes d une table DB2 Génération de documents XML à partir de données de tables DB2 Déstockage d une colonne XML dans un fichier de l IFS : variables de type XML File Reference (XML_CLOB_FILE ) 49

50 8. Utilisez XML pour l échange de données Ecriture XML - En «natif», via une table SQL Le principe consiste à : Créer une table SQL avec 1 zone de type alphanumérique Alimenter cette table avec les balises XML Créer dans l IFS le fichier XML correspondant à la table par la commande CPYTOIMPF 50

51 8. Utilisez XML pour l échange de données Ecriture XML - En «natif», via une table SQL (suite) Le programme pourrait : - créer la table dans QTEMP, puis la supprimer - être un programme SQLRPG - ou une procédure stockée SQL 51

52 8. Utilisez XML pour l échange de données Pour en savoir plus Se reporter à la session S15 - XML sous IBM i - Le point sur les solutions 52

53 9. Connaissez les possibilités d interaction RPG / Web 1. Il est possible de développer des applications Web en RPG en développant en CGI (Common Gateway Interface) CGI permet de développer des applications Web en intégrant des APIs de gestion du HTML dans des programmes écrits en ILE RPG/COBOL 2. Un programme RPG peut appeler du code Java ou PHP sous IBM i Java : en JNI (Java Native Interface), par l appel de méthodes PASE, etc. PHP : par l appel d un script SHELL 3. Un programme RPG peut exécuter un Service Web Avec le «Integrated Web Services Client» Génération de procédures RPG à partir de fichiers WDSL Avec l outil HTTPAPI de Scott Klement 53

54 9. Connaissez les possibilités d interaction RPG / Web Nous n avons pas le temps d aborder ce sujets dans cette session Pour en savoir plus Session plénière Session S23 Des Services Web dans vos programmes RPG/COBOL Vendredi 6 avril 15h30 54

55 9. Connaissez les possibilités d interaction RPG / Web Pour en savoir plus Evénement «Modernisation et développpement d applications IBM i» des 16 et 17 mai

56 10. Documentez-vous Redbook SG

57 10. Documentez-vous 57

58 10. Documentez-vous 58

59 10. Documentez-vous 59

60 10. Formez-vous Centre de formation IBM de Noisy le Grand ou sur site client 60

61 Trucs et astuces RPG IV 61

62 Trucs et astuces RPG IV Compilation conditionnelle Structures de données qualifiées Tri de tableaux Divers OVERLAY d une DS Clés fractionnées en format libre MOVE en format libre Mot-clé OPTION de la spécification H 62

63 Compilation conditionnelle Des directives permettent de conditionner les instructions à ajouter ou omettre dans un source RPGLE Les noms des conditions peuvent être définies : Par le développeur : /define nom_condition /undefine nom_condition Ou prédéfinies par le compilateur (voir page suivante) L inclusion/omission se fait par des directives de test /if defined(nom_condition) /if not defined(nom_condition) /elseif defined(nom_condition) /elseif not defined(nom_condition) /endif La directive /eof permet d aller en fin de source 63

64 Compilation conditionnelle Exemple : comment inclure plusieurs types de spécification différents (H, D, C ) à partir d un seul membre COPY Le source du COPY (membre SPECIFS) : /if defined(specifs_c) C xxx C xxx /elseif defined(specifs_d) D xxx D xxx /undefine specifs_d /define specifs_c /else H xxx /define specifs_d /endif 64

65 Compilation conditionnelle Le source du programme /include QCPYSRC,SPECIFS <Seules les spécifications H seront copiées ici> F xxx F xxx /include QCPYSRC,SPECIFS <Seules les spécifications D seront copiées ici> D xxx D xxx /include QCPYSRC,SPECIFS <Seules les spécifications C seront copiées ici> C xxx C xxx 65

66 Compilation conditionnelle Conditions prédéfinies *CRTBNDRPG/*CRTRPGMOD : teste la commande de compilation utilisée *VxRyMz : teste le niveau de compilateur (à partir de la V4R4M0) /if defined(*crtbndrpg) H dftactgrp(*no) actgrp(*new) /endif /if defined(*v5r4m0) callp detailclientv5r4(); /else callp detailclientv6r1(); /endif 66

67 Structures de données qualifiées Mots-clés QUALIFIED et LIKEDS Les sous-zones de différentes DS peuvent porter le même nom La qualification se fait par l utilisation du point (.) Avec LIKEDS la DS hérite de toutes les zones de la DS nommée Noms, types, longueurs, attributs (mais pas les mots-clés DIM et OCCURS) On peut utiliser INZ(*LIKEDS) pour cloner les valeurs d initialisation 67

68 Structures de données qualifiées Tableaux et structures de données peuvent s imbriquer 68

69 Structures de données qualifiées Tableaux et structures de données peuvent s imbriquer 69

70 Tri de tableaux IBM Power Systems - IBM i - IBM Rational Pour trier des tableaux sur différentes clés : Avant la version 7.1 Définissez le tableau dans une DS Indiquez le mot-clé ASCEND ou DESCEND au niveau du tableau Utilisez le code-opération SORTA 70

71 Tri de tableaux IBM Power Systems - IBM i - IBM Rational Pour trier des tableaux sur différentes clés : Depuis la version 7.1 Définissez le tableau comme une DS Utilisez le code-opération SORTA(A) ou SORTA(D) 71

72 Tri de tableaux - Exemple : tri de sous-fichiers Objectif : trier un sous-fichier statique sur différentes colonnes Dans cet exemple, sur le type, la date, l état Etapes 1. Charger les données dans un tableau Peut être facilité par l utilisation de LIKEREC sur le fichier BD et EVAL-CORR 2. Charger le sous-fichier à partir du tableau 3. Afficher le sous-fichier 4. Récupération du critère de tri de l utilisateur (ex: récupération de la position du curseur par RTNCSRLOC + touche de fonction) 5. Tri du tableau par SORTA comme vu précédemment 6. Retour à l étape 2 72

73 OVERLAY d une DS Le mot-clé OVERLAY peut s appliquer non seulement à des sous-zones d une DS mais également à la DS elle-même Les sous-zones de la DS n ont pas besoin d être nommées mais peuvent être initialisées par le mot-clé INZ Offre une alternative aux tableaux chargés à la compilation Sans qu il soit nécessaire de se positionner en fin du source 73

74 Clés fractionnées en format libre En format fixe En format libre On indique directement les clés entre parenthèses, séparées par : Possibilité de passer des constantes et des expressions 74

75 MOVE en format libre MOVE et MOVEL ne sont pas supportés en format libre Correspondances Caractère vers caractère EVAL est équivalent à MOVEL (P) EVALR est équivalent à MOVE (P) Utiliser %SUBSTR en cas de longueurs différentes sans remise à blanc %substr(char10:1:6) = char6; est équivalent à MOVEL char6 char10 %substr(char10:5:6) = char6; est équivalent à MOVE char6 char10 Numérique vers numérique Utiliser EVAL Numérique vers caractère Utiliser %CHAR, %EDITC, %EDITW et si nécessaire %SUBSTR Caractère vers numérique Utiliser %INT, %DEC et %DECH 75

76 MOVE en format libre Quelques exemples 76

77 Mot-clé OPTION de la spécification H H option(*srcstmt:*nodebugio) *srcstmt : les numéros de ligne du module (statement numbers) utilisés lors de l exécution/débogage correspondent aux numéros de ligne source Les lignes ne sont pas renumérotées lors de la compilation Facilite le support utilisateur (en cas d erreur) et le débogage *nodebugio : permet, lorsque l on fait du pas à pas en débogage, de ne s arrêter qu une seule fois lors d une opération d entrée/sortie sur un fichier, et non plus pour chaque zone d entrée/sortie 77

IBM Power Systems - IBM i IBM Rational

IBM Power Systems - IBM i IBM Rational IBM Power Systems - IBM i IBM Rational Modernisation et développement d applications IBM i Stratégies, technologies et outils S1 RD Power (Rational Developer for Power Systems) : un environnement de développement

Plus en détail

S1 Boostez votre productivité avec la version 9 des solutions Rational pour IBM i

S1 Boostez votre productivité avec la version 9 des solutions Rational pour IBM i Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes S1 Boostez votre productivité avec la

Plus en détail

Modernisation et développement d applications IBM i

Modernisation et développement d applications IBM i Modernisation et développement d applications IBM i Stratégies, technologies et outils 16 et 17 mai 2011 IBM Forum de Bois-Colombes Session plénière Lundi 16 mai 10h00/13h00 Philippe Bourgeois - pbourgeois@fr.ibm.com

Plus en détail

Modernisation et développement d applications sur IBM Power System i : où en est-on aujourd hui?

Modernisation et développement d applications sur IBM Power System i : où en est-on aujourd hui? IBM Power Systems IBM i Modernisation et développement d applications sur IBM Power System i : où en est-on aujourd hui? Stratégies, technologies et outils Philippe Bourgeois pbourgeois@fr.ibm.com Agenda

Plus en détail

Modernisation et développement d applications IBM i Technologies, outils et nouveautés 2012/2013. Volubis.fr

Modernisation et développement d applications IBM i Technologies, outils et nouveautés 2012/2013. Volubis.fr Modernisation et développement d applications IBM i Technologies, outils et nouveautés 2012/2013 8 et 9 Avril 2013 IBM Forum de Bois-Colombes Volubis.fr Conseil et formation sur OS/400, I5/OS puis IBM

Plus en détail

Modernisation et développement d applications IBM i Stratégies, technologies et outils

Modernisation et développement d applications IBM i Stratégies, technologies et outils IBM Power Systems IBM i Modernisation et développement d applications IBM i Stratégies, technologies et outils S5 Développement d'applications Web sous IBM i : comparaison des solutions CGI-PHP-Java-EGL

Plus en détail

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL

Langage propre à Oracle basé sur ADA. Offre une extension procédurale à SQL Cours PL/SQL Langage propre à Oracle basé sur ADA Offre une extension procédurale à SQL PL/SQL permet d utiliser un sous-ensemble du langage SQL des variables, des boucles, des alternatives, des gestions

Plus en détail

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014. Volubis.fr

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014. Volubis.fr Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes Volubis.fr Conseil et formation sur OS/400,

Plus en détail

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS

Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS Module Administration BD Chapitre 1 : Surcouche procédurale dans les SGBDS 1. Introduction Nous allons aborder la notion de surcouche procédurale au sein des SGBDS relationnels tels que Oracle (PLSQL)

Plus en détail

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012 Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012 5 et 6 avril 2012 IBM Forum de Bois-Colombes Session plénière Jeudi 5 avril 10h00/13h00 Philippe

Plus en détail

Création et Gestion des tables

Création et Gestion des tables Création et Gestion des tables Version 1.0 Z Grégory CASANOVA 2 Sommaire 1 Introduction... 3 2 Pré-requis... 4 3 Les tables... 5 3.1 Les types de données... 5 3.1.1 Les types de données Sql Server... 5

Plus en détail

S8 - Sécurité IBM i : nouveautés 6.1 et 7.1

S8 - Sécurité IBM i : nouveautés 6.1 et 7.1 Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes S8 - Sécurité IBM i : nouveautés 6.1

Plus en détail

Éditorial. N 2 - Octobre 2010. Les nouveaux outils de développement d'ibm i V7.1 2. Les nouveaux systèmes Power7. La version 5 des produits PHL

Éditorial. N 2 - Octobre 2010. Les nouveaux outils de développement d'ibm i V7.1 2. Les nouveaux systèmes Power7. La version 5 des produits PHL N 2 - Octobre 2010 Le magazine de la modernisation des applications IBM i (AS/400) Éditorial La vitalité d'une communauté se mesure à ses capacités d'innovation et d'adaptation. Cela concerne aussi bien

Plus en détail

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i

S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Modernisation IBM i Nouveautés 2014-2015 IBM Power Systems - IBM i 19 et 20 mai 2015 IBM Client Center, Bois-Colombes S7 Le top 10 des raisons d utiliser PHP pour moderniser votre existant IBM i Mardi

Plus en détail

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012

Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012 IBM Power Systems - IBM i IBM Rational Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2011/2012 S9 RDP/RTC et ARCAD : comment adopter un standard pour

Plus en détail

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines) Module 1 : Programmer une application informatique Durée

Plus en détail

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL

ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL ISC21-1 --- Système d Information Architecture et Administration d un SGBD Compléments SQL Jean-Marie Pécatte jean-marie.pecatte@iut-tlse3.fr 16 novembre 2006 ISIS - Jean-Marie PECATTE 1 Valeur de clé

Plus en détail

Le langage SQL pour Oracle - partie 1 : SQL comme LDD

Le langage SQL pour Oracle - partie 1 : SQL comme LDD Le langage SQL pour Oracle - partie 1 : SQL comme LDD 1 SQL : Introduction SQL : Structured Query Langage langage de gestion de bases de donn ees relationnelles pour Définir les données (LDD) interroger

Plus en détail

Algorithmique et Programmation, IMA

Algorithmique et Programmation, IMA Algorithmique et Programmation, IMA Cours 2 : C Premier Niveau / Algorithmique Université Lille 1 - Polytech Lille Notations, identificateurs Variables et Types de base Expressions Constantes Instructions

Plus en détail

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 SQL Sommaire : COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2 COMMANDES DE MANIPULATION DE DONNEES... 2 COMMANDES DE CONTROLE TRANSACTIONNEL... 2 COMMANDES DE REQUETE DE DONNEES... 2 COMMANDES

Plus en détail

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr)

Programmer en JAVA. par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Programmer en JAVA par Tama (tama@via.ecp.fr( tama@via.ecp.fr) Plan 1. Présentation de Java 2. Les bases du langage 3. Concepts avancés 4. Documentation 5. Index des mots-clés 6. Les erreurs fréquentes

Plus en détail

Notes de cours : bases de données distribuées et repliquées

Notes de cours : bases de données distribuées et repliquées Notes de cours : bases de données distribuées et repliquées Loïc Paulevé, Nassim Hadj-Rabia (2009), Pierre Levasseur (2008) Licence professionnelle SIL de Nantes, 2009, version 1 Ces notes ont été élaborées

Plus en détail

SQL Historique 1982 1986 1992

SQL Historique 1982 1986 1992 SQL Historique 1950-1960: gestion par simple fichier texte 1960: COBOL (début de notion de base de données) 1968: premier produit de sgbdr structuré (IBM -> IDMS) 1970-74: élaboration de l'outil d'analyse

Plus en détail

1. Base de données SQLite

1. Base de données SQLite Dans ce TP, nous allons voir comment créer et utiliser une base de données SQL locale pour stocker les informations. La semaine prochaine, ça sera avec un WebService. On repart de l application AvosAvis

Plus en détail

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples

Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation 24 octobre 2007impérative 1 / 44 et. structures de données simples Cours d Algorithmique-Programmation 2 e partie (IAP2): programmation impérative et structures de données simples Introduction au langage C Sandrine Blazy - 1ère année 24 octobre 2007 Cours d Algorithmique-Programmation

Plus en détail

Bases de données avancées

Bases de données avancées Bases de données avancées Jean-Yves Antoine LI - Université François Rabelais de Tours Jean-Yves.Antoine@univ-tours.fr UFR Sciences et Techniques IUP SIR Blois Master 1 Bases de Données avancées IUP Blois,

Plus en détail

Sommaire Livre blanc CGIDEV2 pour RePeGlio

Sommaire Livre blanc CGIDEV2 pour RePeGlio Sommaire Livre blanc CGIDEV2 pour RePeGlio 1. CGIDEV2 d IBM : un must pour les développeurs RPG?... 2 2. Ce que les écrans en mode caractères ne savent pas faire... 2 3. La solution CGIDEV2 d IBM... 3

Plus en détail

TP Contraintes - Triggers

TP Contraintes - Triggers TP Contraintes - Triggers 1. Préambule Oracle est accessible sur le serveur Venus et vous êtes autorisés à accéder à une instance licence. Vous utiliserez l interface d accés SQL*Plus qui permet l exécution

Plus en détail

Bases de Données relationnelles et leurs systèmes de Gestion

Bases de Données relationnelles et leurs systèmes de Gestion III.1- Définition de schémas Bases de Données relationnelles et leurs systèmes de Gestion RAPPELS Contraintes d intégrité sous Oracle Notion de vue Typage des attributs Contrainte d intégrité Intra-relation

Plus en détail

UE Programmation Impérative Licence 2ème Année 2014 2015

UE Programmation Impérative Licence 2ème Année 2014 2015 UE Programmation Impérative Licence 2 ème Année 2014 2015 Informations pratiques Équipe Pédagogique Florence Cloppet Neilze Dorta Nicolas Loménie prenom.nom@mi.parisdescartes.fr 2 Programmation Impérative

Plus en détail

1/ Présentation de SQL Server :

1/ Présentation de SQL Server : Chapitre II I Vue d ensemble de Microsoft SQL Server Chapitre I : Vue d ensemble de Microsoft SQL Server Module: SQL server Semestre 3 Année: 2010/2011 Sommaire 1/ Présentation de SQL Server 2/ Architerture

Plus en détail

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation Base de données S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :

Plus en détail

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.

Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige. : JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL

Plus en détail

OpenPaaS Le réseau social d'entreprise

OpenPaaS Le réseau social d'entreprise OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3

Plus en détail

INTRODUCTION A JAVA. Fichier en langage machine Exécutable

INTRODUCTION A JAVA. Fichier en langage machine Exécutable INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du

Plus en détail

Présentation du langage et premières fonctions

Présentation du langage et premières fonctions 1 Présentation de l interface logicielle Si les langages de haut niveau sont nombreux, nous allons travaillé cette année avec le langage Python, un langage de programmation très en vue sur internet en

Plus en détail

PROJET 1 : BASE DE DONNÉES REPARTIES

PROJET 1 : BASE DE DONNÉES REPARTIES PROJET 1 : BASE DE DONNÉES REPARTIES GESTION D UNE BANQUE Elèves : David Bréchet Frédéric Jacot Charles Secrétan DONNÉES DU PROJET SSC - Bases de Données II Laboratoire de Bases de Données BD réparties

Plus en détail

Configurer la supervision pour une base MS SQL Server Viadéis Services

Configurer la supervision pour une base MS SQL Server Viadéis Services Configurer la supervision pour une base MS SQL Server Référence : 11588 Version N : 2.2 : Créé par : Téléphone : 0811 656 002 Sommaire 1. Création utilisateur MS SQL Server... 3 2. Configuration de l accès

Plus en détail

IBM System i. DB2 Web Query for System i : le successeur de Query/400? Oui, mais bien plus!!!

IBM System i. DB2 Web Query for System i : le successeur de Query/400? Oui, mais bien plus!!! DB2 Web Query for System i : le successeur de Query/400? Oui, mais bien plus!!! Stéphane MICHAUX Philippe BOURGEOIS Christian GRIERE stephane_michaux@ibi.com pbourgeois@fr.ibm.com cgriere@fr.ibm.com Les

Plus en détail

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique

Plus en détail

Le langage SQL (première partie) c Olivier Caron

Le langage SQL (première partie) c Olivier Caron Le langage SQL (première partie) 1 Plan Le S.G.B.D. postgres Le langage SQL Langage de manipulation de données Langage de requêtes 2 Quelques mots sur Postgres (1/2) Travaux de Stonebraker (Univ. Berkeley)

Plus en détail

Présentation du module Base de données spatio-temporelles

Présentation du module Base de données spatio-temporelles Présentation du module Base de données spatio-temporelles S. Lèbre slebre@unistra.fr Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes

Plus en détail

Les solutions ARCAD Software et Profound Logic pour la Modernisation d Entreprise sur IBM i

Les solutions ARCAD Software et Profound Logic pour la Modernisation d Entreprise sur IBM i Enterprise Modernization Les solutions ARCAD Software et Profound Logic pour la Modernisation d Entreprise sur IBM i «Grâce à la modernisation de leurs applications d entreprise, les organisations sur

Plus en détail

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.

Les Triggers SQL. Didier DONSEZ. Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes. Les Triggers SQL Didier DONSEZ Université de Valenciennes Institut des Sciences et Techniques de Valenciennes donsez@univ-valenciennes.fr 1 Sommaire Motivations Trigger Ordre Trigger Ligne Condition Trigger

Plus en détail

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object)

Quelques patterns pour la persistance des objets avec DAO DAO. Principe de base. Utilité des DTOs. Le modèle de conception DTO (Data Transfer Object) Quelques patterns pour la persistance des objets avec DAO Ce cours présente des modèles de conception utilisés pour effectuer la persistance des objets Université de Nice Sophia-Antipolis Version 1.4 30/8/07

Plus en détail

Administration des bases de données. Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/

Administration des bases de données. Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ Administration des bases de données Jean-Yves Antoine http://www.info.univ-tours.fr/~antoine/ Administration des bases de données II Objets avancés dans les bases de données OBJECTIFS 2.1. NOTIONS 2.1.1.

Plus en détail

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51

DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 DE L ALGORITHME AU PROGRAMME INTRO AU LANGAGE C 51 PLAN DU COURS Introduction au langage C Notions de compilation Variables, types, constantes, tableaux, opérateurs Entrées sorties de base Structures de

Plus en détail

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données

Jérôme FESSY. IUT de Paris 5. Base de Données. Cours Introductif. Base de Données Base de Données Cours Introductif Base de Données Quelques chiffres Évolution annuelle moyenne 2004/2000 15% +20% 12% 5% 0.5% 2000 2004 L3G IA SG mono poste : Part de marché 5% 5% 10% Paradox 65% SG 15%

Plus en détail

Introduction au langage C

Introduction au langage C Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les

Plus en détail

Oracle Database SQL Developer Guide D'Installation Release 4.0 E38928-06

Oracle Database SQL Developer Guide D'Installation Release 4.0 E38928-06 Oracle Database SQL Developer Guide D'Installation Release 4.0 E38928-06 Pour accéder à la documentation détaillée de SQL Developer : voir Oracle Database SQL Developer Installation Guide Installer Oracle

Plus en détail

Mysql. Les requêtes préparées Prepared statements

Mysql. Les requêtes préparées Prepared statements Mysql Les requêtes préparées Prepared statements Introduction Les prepared statements côté serveur sont une des nouvelles fonctionnalités les plus intéressantes de MySQL 4.1 (récemment sorti en production

Plus en détail

ECLIPSE ET PDT (Php development tools)

ECLIPSE ET PDT (Php development tools) ECLIPSE ET PDT (Php development tools) Eclipse Eclipse est un IDE (Integrated Development Environment)).C estun projet de la Fondation Eclipse visant à développer tout un environnement de développement

Plus en détail

PROJET ALGORITHMIQUE ET PROGRAMMATION II

PROJET ALGORITHMIQUE ET PROGRAMMATION II PROJET 1 ALGORITHMIQUE ET PROGRAMMATION II CONTENU DU RAPPORT A RENDRE : o Fiche signalétique du binôme o Listing des différents fichiers sources o CD sources o Il sera tenu compte de la présentation du

Plus en détail

Licence ST Université Claude Bernard Lyon I LIF1 : Algorithmique et Programmation C Bases du langage C 1 Conclusion de la dernière fois Introduction de l algorithmique générale pour permettre de traiter

Plus en détail

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

Langage SQL (1) 4 septembre 2007. IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes Langage SQL (1) Sébastien Limet Denys Duchier IUT Orléans 4 septembre 2007 Notions de base qu est-ce qu une base de données? SGBD différents type de bases de données quelques systèmes existants Définition

Plus en détail

Langage SQL : créer et interroger une base

Langage SQL : créer et interroger une base Langage SQL : créer et interroger une base Dans ce chapitre, nous revenons sur les principales requêtes de création de table et d accès aux données. Nous verrons aussi quelques fonctions d agrégation (MAX,

Plus en détail

Module BD et sites WEB

Module BD et sites WEB Module BD et sites WEB Cours 8 Bases de données et Web Anne Doucet Anne.Doucet@lip6.fr 1 Le Web Architecture Architectures Web Client/serveur 3-tiers Serveurs d applications Web et BD Couplage HTML-BD

Plus en détail

Conventions d écriture et outils de mise au point

Conventions d écriture et outils de mise au point Logiciel de base Première année par alternance Responsable : Christophe Rippert Christophe.Rippert@Grenoble-INP.fr Introduction Conventions d écriture et outils de mise au point On va utiliser dans cette

Plus en détail

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012

EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 EP60.92 Projet d application pluridisciplinaire La chasse aux trésors 2011-2012 I. Objectifs Mettre en œuvre les compétences acquises ou en cours d acquisition en: o Modélisation UML, Réseau, Base de données,

Plus en détail

Présentation du PL/SQL

Présentation du PL/SQL I Présentation du PL/ Copyright Oracle Corporation, 1998. All rights reserved. Objectifs du Cours A la fin de ce chapitre, vous saurez : Décrire l intéret du PL/ Décrire l utilisation du PL/ pour le développeur

Plus en détail

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France

Développement d applications Internet et réseaux avec LabVIEW. Alexandre STANURSKI National Instruments France Développement d applications Internet et réseaux avec LabVIEW Alexandre STANURSKI National Instruments France Quelles sont les possibilités? Publication de données Génération de rapports et de documents

Plus en détail

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP

Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Module Com231A - Web et Bases de Données Notion 5 : Formulaires et utilisation des Bases de Données avec PHP Au cours de ce TP, vous allez voir comment PHP permet aux utilisateurs, une interaction avec

Plus en détail

Présentation Serveur Apache et pour RePeGlio

Présentation Serveur Apache et pour RePeGlio Serveur APACHE 1 Présentation Serveur Apache et pour RePeGlio I. Présentation générale du serveur Apache... 2 1. Fonction du serveur Apache... 2 2. Fonction du programme RPG relativement au serveur Apache....

Plus en détail

Application web de gestion de comptes en banques

Application web de gestion de comptes en banques Application web de gestion de comptes en banques Objectif Réaliser une application Web permettant à un client de gérer ses comptes en banque Diagramme de cas d'utilisation 1 Les cas d'utilisation Connexion

Plus en détail

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP)

Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Magasins et entrepôts de données (Datamart, data warehouse) Approche relationnelle pour l'analyse des données en ligne (ROLAP) Définition (G. Gardarin) Entrepôt : ensemble de données historisées variant

Plus en détail

Les chaînes de caractères

Les chaînes de caractères Les chaînes de caractères Dans un programme informatique, les chaînes de caractères servent à stocker les informations non numériques comme par exemple une liste de nom de personne ou des adresses. Il

Plus en détail

Java DataBaseConnectivity

Java DataBaseConnectivity Java DataBaseConnectivity JDBC JDBC est une API Java (ensemble de classes et d interfaces défini par SUN et les acteurs du domaine des SGBD) permettant d accéder aux bases de données à l aide du langage

Plus en détail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

Plus en détail

Bases de Données Avancées PL/SQL

Bases de Données Avancées PL/SQL 1/170 Bases de Données Avancées Thierry Hamon Bureau H202 - Institut Galilée Tél. : 33 1.48.38.35.53 Bureau 150 LIM&BIO EA 3969 Université Paris 13 - UFR Léonard de Vinci 74, rue Marcel Cachin, F-93017

Plus en détail

Olivier Mondet http://unidentified-one.net

Olivier Mondet http://unidentified-one.net T-GSI Ch.4 Le Langage SQL LDD, LCD Cet exercice guidé reprend le plan suivis lors de l intervention de formation faite pour l académie de Versailles. L objectif principal visait en la présentation du langage

Plus en détail

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40

Langage et Concepts de ProgrammationOrientée-Objet 1 / 40 Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr

Plus en détail

FileMaker Server 12. publication Web personnalisée avec XML

FileMaker Server 12. publication Web personnalisée avec XML FileMaker Server 12 publication Web personnalisée avec XML 2007-2012 FileMaker, Inc. Tous droits réservés. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker et Bento sont

Plus en détail

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if

Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Éléments d informatique Cours 3 La programmation structurée en langage C L instruction de contrôle if Pierre Boudes 28 septembre 2011 This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike

Plus en détail

Compte Rendu d intégration d application

Compte Rendu d intégration d application ISMA 3EME ANNEE Compte Rendu d intégration d application Compte Rendu Final Maxime ESCOURBIAC Jean-Christophe SEPTIER 19/12/2011 Table des matières Table des matières... 1 Introduction... 3 1. Le SGBD:...

Plus en détail

APIs de table pour SQL Server

APIs de table pour SQL Server 2013 D - Pratique APIs de table pour SQL Server Établissement: HEG Arc Haute école Arc Gestion Réalisé par: M. Informaticien de gestion 2009-2013 S adresse à: M.Fabrice Camus Date de début et de fin du

Plus en détail

Devoir Data WareHouse

Devoir Data WareHouse Université Paris XIII Institut Galilée Master 2-EID BENSI Ahmed CHARIFOU Evelyne Devoir Data WareHouse Optimisation, Transformation et Mise à jour utilisées par un ETL Mr R. NEFOUSSI Année 2007-2008 FICHE

Plus en détail

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées

Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées Licence de MIDO - 3ème année Spécialités Informatique et Mathématiques Appliquées ANNEE 2014 / 2015 Désignation de l enseignement : Bases de données Nom du document : TP SQL sous PostgreSQL Rédacteur :

Plus en détail

S9 - Contrôle des sources, gestion des demandes de changement et travail en équipe sous IBM i avec le produit RTC (Rational Team Concert)

S9 - Contrôle des sources, gestion des demandes de changement et travail en équipe sous IBM i avec le produit RTC (Rational Team Concert) IBM Power Systems IBM i - IBM Rational Modernisation et développement d applications IBM i Stratégies, technologies et outils S9 - Contrôle des sources, gestion des demandes de changement et travail en

Plus en détail

Présentation Windows Azure Hadoop Big Data - BI

Présentation Windows Azure Hadoop Big Data - BI Présentation Windows Azure Hadoop Big Data - BI Sommaire 1. Architecture Hadoop dans Windows Azure... 3 2. Requête Hive avec Hadoop dans Windows Azure... 4 3. Cas d études... 5 3.1 Vue : Administrateur...

Plus en détail

TP1 : Initiation à Java et Eclipse

TP1 : Initiation à Java et Eclipse TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les

Plus en détail

Laboratoires de bases de données. Laboratoire n 6. Programmation SQL. par Danièle BAYERS et Louis SWINNEN

Laboratoires de bases de données. Laboratoire n 6. Programmation SQL. par Danièle BAYERS et Louis SWINNEN Département Informatique Laboratoires de bases de données Laboratoire n 6 Programmation SQL par Danièle BAYERS et Louis SWINNEN Ce document est disponible sous licence Creative Commons indiquant qu il

Plus en détail

Les bases de l optimisation SQL avec DB2 for i

Les bases de l optimisation SQL avec DB2 for i Les bases de l optimisation SQL avec DB2 for i Christian GRIERE cgriere@fr.ibm.com Common Romandie 3 mai 2011 Les fleurs et les requêtes Lorsque l on veut planter de nouvelles fleurs dans un jardin il

Plus en détail

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12

Procédures Stockées WAVESOFT... 12 ws_sp_getidtable... 12. Exemple :... 12. ws_sp_getnextsouche... 12. Exemple :... 12 Table des matières Les Triggers... 2 Syntaxe... 2 Explications... 2 Les évènements déclencheurs des triggers... 3 Les modes de comportements des triggers... 4 Les pseudo tables... 5 Exemple... 6 Les procédures

Plus en détail

CREATION WEB DYNAMIQUE

CREATION WEB DYNAMIQUE CREATION WEB DYNAMIQUE IV ) MySQL IV-1 ) Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requêtes vers les bases de données relationnelles. Le serveur de

Plus en détail

TP 1. Prise en main du langage Python

TP 1. Prise en main du langage Python TP. Prise en main du langage Python Cette année nous travaillerons avec le langage Python version 3. ; nous utiliserons l environnement de développement IDLE. Étape 0. Dans votre espace personnel, créer

Plus en détail

Oracle Le langage procédural PL/SQL

Oracle Le langage procédural PL/SQL Oracle Le langage procédural PL/SQL Denis Roegel roegel@loria.fr IUT Nancy 2 1998/1999 Sommaire 1 Introduction 3 2 Création de packages 3 2.1 Procédures groupées.........................................

Plus en détail

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr

Cours intensif Java. 1er cours: de C à Java. Enrica DUCHI LIAFA, Paris 7. Septembre 2009. Enrica.Duchi@liafa.jussieu.fr . Cours intensif Java 1er cours: de C à Java Septembre 2009 Enrica DUCHI LIAFA, Paris 7 Enrica.Duchi@liafa.jussieu.fr LANGAGES DE PROGRAMMATION Pour exécuter un algorithme sur un ordinateur il faut le

Plus en détail

Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational

Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational IBM Software Group Industrialiser la chaîne complète de fabrication 1ère partie - Les bénéfices de la solution logicielle IBM VisualAge Pacbase / Rational Fernard Bonaguidi fernand.bonaguidi@fr.ibm.com

Plus en détail

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par

Plus en détail

Encryptions, compression et partitionnement des données

Encryptions, compression et partitionnement des données Encryptions, compression et partitionnement des données Version 1.0 Grégory CASANOVA 2 Compression, encryption et partitionnement des données Sommaire 1 Introduction... 3 2 Encryption transparente des

Plus en détail

Introduction à MATLAB R

Introduction à MATLAB R Introduction à MATLAB R Romain Tavenard 10 septembre 2009 MATLAB R est un environnement de calcul numérique propriétaire orienté vers le calcul matriciel. Il se compose d un langage de programmation, d

Plus en détail

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com

Cours Plugin Eclipse. Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com Cours Plugin Eclipse Université Paris VI / Parcours STL / Master I Pierre-Arnaud Marcelot - Iktek - pamarcelot@iktek.com 1 Qui suis-je? Ancien étudiant de Jussieu - Paris VI Diplomé du Master Technologies

Plus en détail

Cours d Algorithmique et de Langage C 2005 - v 3.0

Cours d Algorithmique et de Langage C 2005 - v 3.0 Cours d Algorithmique et de Langage C 2005 - v 3.0 Bob CORDEAU cordeau@onera.fr Mesures Physiques IUT d Orsay 15 mai 2006 Avant-propos Avant-propos Ce cours en libre accès repose sur trois partis pris

Plus en détail

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web.

TP JEE Développement Web en Java. Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. ASTRIUM - Toulouse JEE Formation 2013 TP JEE Développement Web en Java Dans ce TP nous commencerons la programmation JEE par le premier niveau d une application JEE : l application web. Figure 1 Architecture

Plus en détail

Java et les bases de données

Java et les bases de données Michel Bonjour http://cuiwww.unige.ch/~bonjour CENTRE UNIVERSITAIRE D INFORMATIQUE UNIVERSITE DE GENEVE Plan Introduction JDBC: API SQL pour Java - JDBC, Java, ODBC, SQL - Architecture, interfaces, exemples

Plus en détail

Le Langage De Description De Données(LDD)

Le Langage De Description De Données(LDD) Base de données Le Langage De Description De Données(LDD) Créer des tables Décrire les différents types de données utilisables pour les définitions de colonne Modifier la définition des tables Supprimer,

Plus en détail

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles)

1/24. I passer d un problème exprimé en français à la réalisation d un. I expressions arithmétiques. I structures de contrôle (tests, boucles) 1/4 Objectif de ce cours /4 Objectifs de ce cours Introduction au langage C - Cours Girardot/Roelens Septembre 013 Du problème au programme I passer d un problème exprimé en français à la réalisation d

Plus en détail

Mysql avec EasyPhp. 1 er mars 2006

Mysql avec EasyPhp. 1 er mars 2006 Mysql avec EasyPhp 1 er mars 2006 Introduction MYSQL dérive directement de SQL (Structured Query Language) qui est un langage de requètes vers les bases de données relationnelles. Il en reprend la syntaxe

Plus en détail

S10 - Automatisez la compilation et le déploiement de vos applications IBM i avec Arcad Pack for Rational

S10 - Automatisez la compilation et le déploiement de vos applications IBM i avec Arcad Pack for Rational Modernisation, développement d applications et DB2 sous IBM i Technologies, outils et nouveautés 2013-2014 13 et 14 mai 2014 IBM Client Center Paris, Bois-Colombes S10 - Automatisez la compilation et le

Plus en détail