Novembre 2024 | Lun | Mar | Mer | Jeu | Ven | Sam | Dim |
---|
| | | | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | | Calendrier |
|
|
| ISAM toujours ISAM | |
| | |
Auteur | Message |
---|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: ISAM toujours ISAM Lun 7 Sep 2015 - 0:37 | |
| @ Klaus Petit souci avec isam Rassures toi le schmilblick est surement de mon fait. J' essai d' afficher les enregistrements d' une base selon la valeur d' un champ. En plus clair, les articles se rapportant à un auteur or j' ai tout les articles qui sont pris en compte et je ne veux que ceux de l' auteur. ma base est ainsi faite : ID Article | ID Mag | ID Rubrique | ID Auteur | Nom Article ART0001 | 0001 | 0001 | 0001 | Mon_Article.pdf je veux voir les articles de la cle 4 qui ont la même valeur et seulement ceux là . J' ai donc fait cette procédure : - Code:
-
SUB AffichListeArt(item%) dim_local i%,res%,fill$,v1$,v2$,v3$,v4$,v5$,key$,a$ Clear ListeArt% Clear ListeUrl% if cle%=1 key$ = "ART"+right$(string$(4,"0")+str$(item%),4) Art_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Art_Isam_ID%,adr(Art_ISAM_rec$),1,adr(key$)) res% = dll_call0("GetIsamOk") if res%=0 v1$=string$(7," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,1,adr(Art_ISAM_rec$),adr(v1$),adr(fill$)) a$=a$+v1$ v2$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,2,adr(Art_ISAM_rec$),adr(v2$),adr(fill$)) a$=a$+v2$ v3$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,3,adr(Art_ISAM_rec$),adr(v3$),adr(fill$)) a$=a$+v3$ v4$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,4,adr(Art_ISAM_rec$),adr(v4$),adr(fill$)) a$=a$+v4$ v5$=string$(255," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,5,adr(Art_ISAM_rec$),adr(v5$),adr(fill$)) a$=a$+v5$ item_add ListeArt%,v5$ item_add ListeUrl%,a$ v1$="" : v2$="" :v3$="" :v4$="" :v5$="" : a$="" end_if else key$ = right$(string$(4,"0")+str$(item%),4) for i%=1 to Art_inbase% res% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$)) res% = dll_call0("GetIsamOk") if res%=0 v1$=string$(7," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,1,adr(Art_ISAM_rec$),adr(v1$),adr(fill$)) a$=a$+v1$ v2$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,2,adr(Art_ISAM_rec$),adr(v2$),adr(fill$)) a$=a$+v2$ v3$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,3,adr(Art_ISAM_rec$),adr(v3$),adr(fill$)) a$=a$+v3$ v4$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,4,adr(Art_ISAM_rec$),adr(v4$),adr(fill$)) a$=a$+v4$ v5$=string$(255," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,5,adr(Art_ISAM_rec$),adr(v5$),adr(fill$)) a$=a$+v5$ if cle%=2 :if v2$<>key$ : exit_for : end_if: end_if if cle%=3 :if v3$<>key$ : exit_for : end_if: end_if if cle%=4 :if v4$<>key$ : exit_for : end_if: end_if item_add ListeArt%,v5$ item_add ListeUrl%,a$ v1$="" : v2$="" :v3$="" :v4$="" :v5$="" : a$="" end_if next i% end_if END_SUB Seulement, j' ai tout les articles qui s' affichent, certes ils sont triés par ordre des auteurs mais ce n' est pas ce que je veux. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Lun 7 Sep 2015 - 1:23 | |
| Plusieurs remarques:
1. Pour lire les enregistrements pour un auteur, tu utilises bien la clé 4 ? Si j'ai bien compris, la variable clé% est une variable globale qui est chargée avant l'appel de ta procédure. Si c'est bien le cas, ça va.
2. Dans le cas de la clé 4: tu veux bien tous les éléments dont la valeur de la clé 4 est identique à la valeur du paramètre item% ? Dans ce cas, tu as fait une erreur d'analyse. Il faut commencer par faire une lecture par ReadIsamRecordByKey en spécifiant la valeur de cette clé et le numéro de la clé 4. Si le code erreur est différent de 0, ou si la clé de l'enregistrement lu est différente de item%, alors il n'y a aucun enregistrement pou cette valeur de clé. Si par contre, tu as un enregistrement et la clé est bonne, tu mémorise cet enregistrement, et tu continues la lecture dans une boucle avec la fonction ReadNextIsamRecord.
3. ne fais pas ta boucle par une boucle FOR de 1 au nombre total d'enregistrements. C'est inutile et trop long. Par la procédure que le t'ai indiquée en (2), tu te pointes par la première lecture directement sur le premier enregistrement de la valeur de clé recherchée. Puis tu fais ta boucle de lecture par REPEAT..UNTIL ou WHILE..END_WHILE, en prenant comme critère de fin l'erreur sur la lecture (fin de fichier) ou valeur de clé différente.
Et là, tu lis uniquement les enregistrements qui t'intéressent, directement, sans avoir à passer par tout le fichier. C'est justement l'intérêt des clés... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Sep 2015 - 1:47 | |
| Je vais regarder tout ca demain matin...heu...tout à l' heure. Et je mettrai un zip sur mon webdav aussi. Je suis en train de faire la visionneuse pour les articles du mag à partir de bases Isam. Je préfère m' y mettre tant que le nombre d' article est encore raisonnable. En tout cas, merci je pense y voir un peu plus clair. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Sep 2015 - 13:24 | |
| Je ne sais pas comment j' ai fait... ...mais çà fonctionne ! | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Lun 7 Sep 2015 - 13:34 | |
| Je suis content que ça fonctionne. Mais le côté "je ne sais pas comment j'ai fait" m'inquiète un peu... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Sep 2015 - 16:56 | |
| @ Klaus, J' ai coupé la procédure en deux. Une qui cherche et l' autre qui...affiche. Voilà ce que cela donne : - Code:
-
SUB AffichListeArt(item%) dim_local i%,res%,fill$,v1$,v2$,v3$,v4$,v5$,key$,a$ Clear ListeArt% Clear ListeUrl% if cle%=1 key$ = "ART"+right$(string$(4,"0")+str$(item%),4) Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ") Art_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Art_Isam_ID%,adr(Art_ISAM_rec$),1,adr(key$)) res% = dll_call0("GetIsamOk") if res%=0 WriteARTinListe() end_if else key$ = right$(string$(4,"0")+str$(item%),4) Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ") Art_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$)) res% = dll_call0("GetIsamOk") if res%=0 WriteARTinListe() end_if while Art_ISAM_NbRec% >0 Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ") res% = dll_call4("CreateIsamKey",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$)) Art_ISAM_NbRec% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),cle%,adr(key$)) caption 0,key$ if Art_ISAM_NbRec% >0 if val(key$)=item% WriteARTinListe() end_if end_if end_while end_if END_SUB
SUB WriteARTinListe() dim_local res%,fill$,v1$,v2$,v3$,v4$,v5$,key$,a$ v1$=string$(7," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,1,adr(Art_ISAM_rec$),adr(v1$),adr(fill$)) a$=a$+v1$ v2$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,2,adr(Art_ISAM_rec$),adr(v2$),adr(fill$)) a$=a$+v2$ v3$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,3,adr(Art_ISAM_rec$),adr(v3$),adr(fill$)) a$=a$+v3$ v4$=string$(4," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,4,adr(Art_ISAM_rec$),adr(v4$),adr(fill$)) a$=a$+v4$ v5$=string$(255," ") : fill$ =" " res% = dll_call5("ExtractIsamField",Art_Isam_ID%,5,adr(Art_ISAM_rec$),adr(v5$),adr(fill$)) a$=a$+v5$ item_add ListeArt%,v5$ item_add ListeUrl%,"http://panoramiclemag.magix.net/public/Articles/"+a$ v1$="" : v2$="" :v3$="" :v4$="" :v5$="" : a$="" END_SUB T' inquiètes tu toujours autant ?... | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Lun 7 Sep 2015 - 17:51 | |
| Non, bien sûr que non... c'était juste une boutade. Ca me semble tout à fait correct, comme ça. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Sep 2015 - 19:26 | |
| J' avais bien compris. La visionneuse fonctionne, elle n' est pas très esthétique mais elle fonctionne... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 28 Sep 2015 - 3:46 | |
| J' ai un petit souci avec une fonction de mon appli et les fonctions ISAM. J' ai mis le zip sur mon webdav, la fonction est ligne 280 du fichier "FCT_htm.bas" la fonction est sensé recréer ceci: Rubrique 1 -article -article ... Rubrique 2 -article ...etc sauf que j' ai bien les rubriques mais la rubrique 1 a tous les articles la rubrique 2 tous les articles sauf ceux de la rubrique 1 et ainsi de suite Je ne vois pas du tout ce qui ne va pas je pars sur la recherche du premier article de la rubrique puis j' utilise la fonction "readnext..." dans une boucle while...end_while avec ISAM_NbRec%>0 comme condition mais on dirait que la valeur de la clé est changé en cours de route... Pour activer la toolbar, il faut sélectionner une base Puis cliquer sur le bouton 4 pour lancer la création des fichiers Le fichier résultat est un "Articles.txt" dans le sous dossier "Site". Il est dépouillé du code html pour l' instant... Pourrais tu y jeter un coup d' oeil, dès fois que le tien y voit mieux que les deux miens ? | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Lun 28 Sep 2015 - 11:59 | |
| J'ai chargé ton projet et je l'ai fait exécuter. Il n'y a pas de plantage.
J'ai vu dans le source de FCT_htm.bas, 2 points qui m'intriguent:
1. Après une lecture par clé, tu testes bien par GetIsamOk s'il n'y a pas d'erreur. Mais s'il y a une erreur, tu continues en ligne, sans avoir chargée les champs. Ne faudrait-il pas arrêter en cas d'erreur ?
2. à partir de la ligne 335, tu cherches les articles suivants de la rubrique. Pourquoi effaces-tu l'enregistrement, avant de faire la lecture du suivant ? La routnie CreateIsamKey ne prendra que des espaces pour faire la clé...
Difficile, en l'état, d'en dire plus sans passer beaucoup plus de temps sur ce grand projet... | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 28 Sep 2015 - 12:48 | |
| Je ne comprends pas ta deuxième remarque. La variable effacée est L$ qui est le variable de concaténation et d' affichage. Si je ne l' initialise pas, je vais avoir ceci
art1 art1 art2 art1 art2 art3 etc...
Ce que je ne comprends pas c' est que la valeur de la clé change
Art_ISAM_NbRec% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),3,adr(key2$))
Art_ISAM_NbRec% devrait être =0 en fin de lecture de la liste des articles correspondant à la rubrique.
Ma demarche est celle ci:
recherche des rubriques de la base article dans la liste des rubriques par une boucle for...next
si la rubrique est une rubrique de la base article recherche des articles de la rubrique recherche du premier par : Art_ISAM_NbRec% = dll_call4("ReadIsamRecordByKey",Art_Isam_ID%,adr(Art_ISAM_rec$),3,adr(key2$)) recherche des suivant par : Art_ISAM_NbRec% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),3,adr(key2$)) dans une boucle while...end_while sur Art_ISAM_NbRec%>0 | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Lun 28 Sep 2015 - 13:10 | |
| - Citation :
- La variable effacée est L$ qui est le variable de concaténation et d' affichage.
Pas exactement: - Code:
-
' recherche des articles suivant ayant l' ID de la rubrique en champ n°3 while Art_ISAM_NbRec%>0 Art_ISAM_rec$ = string$(Art_ISAM_reclen%," ") : ' <======== c'est le record, pas une variable d'affichage res% = dll_call4("CreateIsamKey",Art_Isam_ID%,adr(Art_ISAM_rec$),3,adr(key2$)) Art_ISAM_NbRec% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),3,adr(key2$)) res% = dll_call0("GetIsamOk") if res%=0 - Citation :
- Ce que je ne comprends pas c' est que la valeur de la clé change
Art_ISAM_NbRec% = dll_call4("ReadNextIsamRecord",Art_Isam_ID%,adr(Art_ISAM_rec$),3,adr(key2$))
Art_ISAM_NbRec% devrait être =0 en fin de lecture de la liste des articles correspondant à la rubrique. A priori, la logique semble bonne. Il faut que je plonge plus avant dans la structure des clés pour comprendre. Je te tiendrai informé. | |
| | | Invité Invité
| Sujet: Re: ISAM toujours ISAM Lun 28 Sep 2015 - 13:18 | |
| Bonjour, Une parenthèse, mais ça concerne isam: J'étais intervenu sur isam, en pensant que cela ne servirait qu'à un nombre réduit de personne de ce forum, et moi en premier. A la lecture de toutes les questions, et aux vues des réponses qui sont faites, cela semble bien intéressant!.
Mais voila, avec les fréquentes interventions de Ygeronimi cela semble bien compliqué. Je ne peux tester cet apport pour le moment. Je trouve difficilement le temps de coder, et je suis sur un programme complexe (pour mes propres cellules grises), et je me dis que le jour que je voudrais m'y coller, je vais me retrouver avec les mêmes problèmes. Et il faudra de nouveau poser des questions similaires à Ygeronimi pour s'en sortir.
Alors ne serait-il pas possible, peut-être par l'intermédiaire du Mag, d'avoir une approche, et des exercices, pour que chacun d'entre-nous, le jour qu'il veut utiliser cet outils, puisse s'en sortir sans avoir à intervenir, et occuper ton temps là dessus, même si cela ne semble pas te déranger.
Je sais que si je veux m'y coller à utiliser isam, j'aurai les mêmes problèmes. Pour moi, il me semble évident qu'un vrai cours avec peut-être des exercices serait le bien venu. On ne peut pas suivre chaque poste, ou alors il faut n'avoir rien à faire. |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 28 Sep 2015 - 13:29 | |
| J' ai mis la ligne en REM Je n' ai plus que le résultat de la recherche du premier article de la rubrique et la seule fois ou la boucle "while...end_while" est prise en compte, le résultat est un article de la rubrique 5 placé dans la rubrique 4 - Code:
-
Langage ART0003000100010002definition_des_termes_employes.pdf Temoignages ART0001000100020001le_basic_et_panoramic.pdf Tutoriels ART0012000300030003calculatrice.pdf 2D 22/0005/0005/0005 ART0017000400050011camera_3d.pdf 3D ART00100002000500113d_chain.pdf Colorisation ART0015000300060010un_peu_de_couleur.pdf Graphisme ART0018000400070003fractales_I.pdf Binaire ART0053001400080005arithmetique_binaire.pdf Ligne de commande ART0020000400090005la_ligne_de_commande.pdf Outils ART0002000100100005premier_contact_avec_panoramic.pdf Conseils ART0004000100110005conseil_de_programmation_avec_panoramic.pdf Jeux ART0013000300120002tuto_pacman_I.pdf Robotique ART0021000500130007vous_avez_dit_arduino.pdf résultat sans la ligne en rem : - Code:
-
Langage ART0003000100010002definition_des_termes_employes.pdf 12/0001/0001/0001 ART0007000200010005structures_de_programmation.pdf 13/0001/0001/0001 ART0008000200010003les_directives.pdf 14/0001/0001/0001 ART0009000200010004comprehension_des_routines_evenement_en_panoramic.pdf 44/0001/0001/0001 ART0039000900010005astuces.pdf 47/0001/0001/0001 ART0042001000010005panoramic_et_les_api_windows.pdf 49/0001/0001/0001 ART0044001000010005recursivite.pdf 52/0001/0001/0001 ART0047001100010002algorithmique.pdf 55/0001/0001/0001 ART0050001200010008la_liaison_serie_avec_domoticom.pdf 57/0001/0001/0001 ART0052001300010010panoramic_au_secours_du_pedagogue.pdf 61/0001/0001/0001 ART0056001400010008panoramic_pour_android.pdf 66/0001/0001/0001 ART0061001600010003compilateur_I.pdf 67/0001/0001/0001 ART0062001600010008pour_ne_pas_perdre_le_nord.pdf 69/0001/0001/0001 ART0064001700010003compilateur_II.pdf 70/0001/0001/0001 ART0065001700010003compilateur_III.pdf 71/0001/0001/0001 ART0066001800010003compilateur_IV.pdf 73/0001/0001/0001 ART0068001900010003compilateur_V.pdf 74/0001/0001/0001 ART0069001900010008les_systemes_a_onglets.pdf 77/0001/0001/0001 ART0072002000010003compilateur_VI.pdf 78/0001/0001/0001 ART0073002000010003compilateur_VII.pdf 80/0001/0001/0001 ART0075002100010003compilateur_VIII.pdf 82/0001/0001/0001 ART0077002200010003compilateur_IX.pdf 6/0002/0002/0002 ART0001000100020001le_basic_et_panoramic.pdf 10/0002/0002/0002 ART0005000100020010tribulations_d_un_touriste_panoramicien.pdf 17/0003/0003/0003 ART0012000300030003calculatrice.pdf 37/0003/0003/0003 ART0032000700030004comment_creer_une_toolbar.pdf 38/0003/0003/0003 ART0033000700030004dynamicallyloaddll.pdf 40/0003/0003/0003 ART0035000800030003panoramic_et_c.pdf 41/0003/0003/0003 ART0036000800030004utilisation_des_fonctions_impression.pdf 50/0003/0003/0003 ART0045001000030006creer_un_site_en_html_avec_panoramic.pdf 51/0003/0003/0003 ART0046001100030003nombres_complexes.pdf 60/0003/0003/0003 ART0055001400030010panopeda_1.pdf 62/0003/0003/0003 ART0057001500030004menu_dynamique_vertical.pdf 63/0003/0003/0003 ART0058001500030010panopedeux.pdf 75/0003/0003/0003 ART0070001900030002theorie_des_collisions.pdf 76/0003/0003/0003 ART0071002000030002theorie_des_collisions_II.pdf 81/0003/0003/0003 ART0076002100030004utilisation_des_fichiers_isam.pdf 83/0003/0003/0003 ART0078002200030002theorie_des_collisions_III.pdf 15/0005/0005/0005 ART00100002000500113d_chain.pdf 22/0005/0005/0005 ART0017000400050011camera_3d.pdf 46/0005/0005/0005 ART0041001000050002creons_de_la_3d.pdf 20/0006/0006/0006 ART0015000300060010un_peu_de_couleur.pdf 32/0006/0006/0006 ART0027000600060003hsv.pdf 23/0007/0007/0007 ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Temoignages ART0001000100020001le_basic_et_panoramic.pdf 10/0002/0002/0002 ART0005000100020010tribulations_d_un_touriste_panoramicien.pdf 17/0003/0003/0003 ART0012000300030003calculatrice.pdf 37/0003/0003/0003 ART0032000700030004comment_creer_une_toolbar.pdf 38/0003/0003/0003 ART0033000700030004dynamicallyloaddll.pdf 40/0003/0003/0003 ART0035000800030003panoramic_et_c.pdf 41/0003/0003/0003 ART0036000800030004utilisation_des_fonctions_impression.pdf 50/0003/0003/0003 ART0045001000030006creer_un_site_en_html_avec_panoramic.pdf 51/0003/0003/0003 ART0046001100030003nombres_complexes.pdf 60/0003/0003/0003 ART0055001400030010panopeda_1.pdf 62/0003/0003/0003 ART0057001500030004menu_dynamique_vertical.pdf 63/0003/0003/0003 ART0058001500030010panopedeux.pdf 75/0003/0003/0003 ART0070001900030002theorie_des_collisions.pdf 76/0003/0003/0003 ART0071002000030002theorie_des_collisions_II.pdf 81/0003/0003/0003 ART0076002100030004utilisation_des_fichiers_isam.pdf 83/0003/0003/0003 ART0078002200030002theorie_des_collisions_III.pdf 15/0005/0005/0005 ART00100002000500113d_chain.pdf 22/0005/0005/0005 ART0017000400050011camera_3d.pdf 46/0005/0005/0005 ART0041001000050002creons_de_la_3d.pdf 20/0006/0006/0006 ART0015000300060010un_peu_de_couleur.pdf 32/0006/0006/0006 ART0027000600060003hsv.pdf 23/0007/0007/0007 ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Tutoriels ART0012000300030003calculatrice.pdf 37/0003/0003/0003 ART0032000700030004comment_creer_une_toolbar.pdf 38/0003/0003/0003 ART0033000700030004dynamicallyloaddll.pdf 40/0003/0003/0003 ART0035000800030003panoramic_et_c.pdf 41/0003/0003/0003 ART0036000800030004utilisation_des_fonctions_impression.pdf 50/0003/0003/0003 ART0045001000030006creer_un_site_en_html_avec_panoramic.pdf 51/0003/0003/0003 ART0046001100030003nombres_complexes.pdf 60/0003/0003/0003 ART0055001400030010panopeda_1.pdf 62/0003/0003/0003 ART0057001500030004menu_dynamique_vertical.pdf 63/0003/0003/0003 ART0058001500030010panopedeux.pdf 75/0003/0003/0003 ART0070001900030002theorie_des_collisions.pdf 76/0003/0003/0003 ART0071002000030002theorie_des_collisions_II.pdf 81/0003/0003/0003 ART0076002100030004utilisation_des_fichiers_isam.pdf 83/0003/0003/0003 ART0078002200030002theorie_des_collisions_III.pdf 15/0005/0005/0005 ART00100002000500113d_chain.pdf 22/0005/0005/0005 ART0017000400050011camera_3d.pdf 46/0005/0005/0005 ART0041001000050002creons_de_la_3d.pdf 20/0006/0006/0006 ART0015000300060010un_peu_de_couleur.pdf 32/0006/0006/0006 ART0027000600060003hsv.pdf 23/0007/0007/0007 ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf 2D 22/0005/0005/0005 ART0017000400050011camera_3d.pdf 46/0005/0005/0005 ART0041001000050002creons_de_la_3d.pdf 20/0006/0006/0006 ART0015000300060010un_peu_de_couleur.pdf 32/0006/0006/0006 ART0027000600060003hsv.pdf 23/0007/0007/0007 ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf 3D ART00100002000500113d_chain.pdf 22/0005/0005/0005 ART0017000400050011camera_3d.pdf 46/0005/0005/0005 ART0041001000050002creons_de_la_3d.pdf 20/0006/0006/0006 ART0015000300060010un_peu_de_couleur.pdf 32/0006/0006/0006 ART0027000600060003hsv.pdf 23/0007/0007/0007 ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Colorisation ART0015000300060010un_peu_de_couleur.pdf 32/0006/0006/0006 ART0027000600060003hsv.pdf 23/0007/0007/0007 ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Graphisme ART0018000400070003fractales_I.pdf 29/0007/0007/0007 ART0024000500070003fractales_II.pdf 31/0007/0007/0007 ART0026000600070003fractales_III.pdf 35/0007/0007/0007 ART0030000700070003fractales_IV.pdf 39/0007/0007/0007 ART0034000800070003fractales_V.pdf 43/0007/0007/0007 ART0038000900070003fractales_VI.pdf 48/0007/0007/0007 ART0043001000070003fractales_VII.pdf 53/0007/0007/0007 ART0048001100070005math_pour_graphisme_2d_3d.pdf 54/0007/0007/0007 ART0049001200070003fractales_VIII.pdf 56/0007/0007/0007 ART0051001300070003fractales_IX.pdf 59/0007/0007/0007 ART0054001400070003fractales_X.pdf 79/0007/0007/0007 ART0074002000070005coordonnees_polaires.pdf 58/0008/0008/0008 ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Binaire ART0053001400080005arithmetique_binaire.pdf 25/0009/0009/0009 ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Ligne de commande ART0020000400090005la_ligne_de_commande.pdf 72/0009/0009/0009 ART0067001800090005entree_sortie_en_ligne_de_commande.pdf 7/0010/0010/0010 ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Outils ART0002000100100005premier_contact_avec_panoramic.pdf 11/0010/0010/0010 ART0006000200100002presentation_de_panoramic_editor.pdf 16/0010/0010/0010 ART0011000300100001je_debute_avec_panoramic_I.pdf 21/0010/0010/0010 ART0016000400100001je_debute_avec_panoramic_II.pdf 30/0010/0010/0010 ART0025000500100001je_debute_avec_panoramic_III.pdf 33/0010/0010/0010 ART0028000600100001je_debute_avec_panoramic_IV.pdf 34/0010/0010/0010 ART0029000700100001je_debute_avec_panoramic_V.pdf 36/0010/0010/0010 ART0031000700100003dll.pdf 42/0010/0010/0010 ART0037000900100011cercles.pdf 9/0011/0011/0011 ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Conseils ART0004000100110005conseil_de_programmation_avec_panoramic.pdf 18/0012/0012/0012 ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Jeux ART0013000300120002tuto_pacman_I.pdf 19/0012/0012/0012 ART0014000300120002tuto_pacman_II.pdf 24/0012/0012/0012 ART0019000400120002creer_le_document_conceptuel_d_un_jeu.pdf 28/0012/0012/0012 ART0023000500120002creer_un_jeu.pdf 45/0012/0012/0012 ART0040000900120002tuto_pacman_III.pdf 64/0012/0012/0012 ART0059001500120002panorabric_pc_v2.pdf 65/0012/0012/0012 ART0060001600120012le_solitaire.pdf 68/0012/0012/0012 ART0063001700120002tetris.pdf 26/0013/0013/0013 ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf Robotique ART0021000500130007vous_avez_dit_arduino.pdf 27/0013/0013/0013 ART0022000500130002faire_clignoter_une_led.pdf
| |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Lun 28 Sep 2015 - 14:10 | |
| @Cosmos70: J'avais fait un tuto pour ISAM, mais je ne me rappelle plus où il a été publié. Je n'arrive pas à le trouver sur le Mag (honte à moi...). Alors, sur mon WebDav, j'ai fait un nouveai dossier "Tutos" et je l'ai placé dedans. Cela donne la description générale, et un exemple complet et fonctionnel de réalisation d'une application avec ISAM.
@Ygeronimi: Comme je l'ai dit: je dois me plonger plus profondément dans ton code. En particulier, comprendre les définitions des clés et leur utilisation. On verra ça ce soir. Là, je dois partir. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 28 Sep 2015 - 14:20 | |
| Il n' y a pas de honte. Il est dans les articles, rubrique "Tutoriels" | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 28 Sep 2015 - 22:54 | |
| J' ai trouvé une parade avec deux boucles for...next imbriquées. C' est pas beau mais cela fonctionne. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mer 30 Sep 2015 - 11:06 | |
| Un petit truc assez cocasse... j' ai ajouté une base à mon schmilblick def$="3,4,30" les fichiers se sont bien créés. Je me suis rendu compte que cela n' était pas adapté à mon usage et je voulais 3 champs 4,30,255 j' ai donc supprimé les deux fichiers et modifié def$ en def$="4,4,30,255". or, depuis, il me recré à chaque fois une base en def$="3,4,30" | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Mer 30 Sep 2015 - 14:02 | |
| | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: ISAM toujours ISAM Mer 30 Sep 2015 - 15:16 | |
| Ce don n’est pas donné à tout le monde, Bugman . | |
| | | Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: ISAM toujours ISAM Mer 30 Sep 2015 - 15:20 | |
| | |
| | | papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: ISAM toujours ISAM Mer 30 Sep 2015 - 15:47 | |
| Vite, faites de vos Mini BUG man des marques déposées. Vous serez tranquilles de la sorte. | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 1 Oct 2015 - 16:06 | |
| Je crois pouvoir dire qu' il y a un souci avec la fonction "ReadNextIsamRecord" d' ISAM. Si cette fonction est utilisé dans une boucle simple, tout va bien. Maintenant, si elle est utilisé dans des boucles imbriqués où elle fait partie des deux boucles, Il y a un souci. La variable clé / key$ est perturbé à moins que cela vienne d' ailleurs. en fait le résultat démarre bien avec la valeur de la clé mais passe à la valeur suivante en fin de liste des enregistrements correspondant à la clé au lieu de s' arrêter et de renvoyer "0". ce qui donne en gros, visuellement : a1,a2,a3,a4 a2,a3,a4 a3,a4 a4 au lieu de : a1 a2 a3 a4 D' où l' importance de bien penser les clés au tout début de la conception du programme avec des clés contenant plusieurs champs ( ce qui n' a pas été mon cas, malheureusement ). Pour mon programme actuel, je vais contourner le problème ( Je n' ai pas le courage de tout reprendre, refaire les bases, etc... ) Mais pour les prochains, je prendrai un peu plus de temps pour la réflexion, c' est sûr. | |
| | | Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: ISAM toujours ISAM Jeu 1 Oct 2015 - 16:40 | |
| Si tu as une structure du genre suivant: - Code:
-
auteur1 article1 article2 ... articlen auteur2 aricle1 article2 .. Auteur... ... supposant que tu as tout mis dans un seul fichier, et si tu veux lire l'ensemble, en donnant la liste des articles par auteur, tu as 2 solutions: 1. solution à 2 clée: tu définis 2 clés: clé1=auteur clé2=auteur+article tu fais une boucle extérieure sur la clé 1, lisant auteur par auteur pour chaque auteur, tu fais une boucle intérieure en commençant par une lecture par clé2 composée de auteur+" ", puis lecture séquentielle par clé2, jusqu'à ce que l'auteur soit différent de l'auteur sélectionné, ou fin de fichier 2. solution à 1 clé: tu définis 1 clé: clé1=auteur+article tu mets une variable auteur_précédent$="" tu fais une seule boucle, sur la clé 1, lisant toujours l'enregistrement suivant. chaque fois que auteur<>auteur_précédent$, tu signales l'auteur et tu traites ensuite l'article défini par cet enregistrement, et tu mémorises auteur_précédent$=auteur. Sinon, tu traites simplement l'article, puisqu'il est forcément pour le même auteur. supposant que tu as un fichier des auteurs et un fichier des articles (solution que je préfèrerais), et si tu veux lire l'ensemble, en donnant la liste des articles par auteur, tu as 1 solution: solution en deux fichiers: tu déclares, sur le fichier des auteurs, la clé1=auteur tu déclares, sur le fichier des articles, la clé1=auteur+article tu fais une boucle extérieure sur la clé 1 du fichier des auteurs, lisant auteur par auteur pour chaque auteur, tu fais une boucle intérieure sur le fichier des articles en commençant par une lecture par clé1 composée de auteur+" ", puis lecture séquentielle par clé1, jusqu'à ce que l'auteur soit différent de l'auteur sélectionné, ou fin de fichier Voilà ce que je peux dire au niveau de la logique de recherche. Le problème réside dans le fait que, en lecture séquentielle selon une clé composée, tu passes sur l'ensemble des enregistrements des fichiers, commençant par l'enregistrement lu initialement par une lecture directe par clé, mais les lectures séquentielles suivantes ne s'arrêtent qu'à la fin du fichier. Il incombe au programmeur (à toi, dans ce cas...), de tester la clé lue (c'est pourquoi la fonction de lecture séquentielle retourne la valeur de la clé lue !) correspond bien au début de clé que tu cherches à lire, ou s'il y a ce qu'on appelle dans le jargon de la programmation de gestion une "rupture", ce qui dans notre cas signifie "auteur diférent". Tu vois ainsi que pour un accès par deux clés différentes, tu n'as pas d'autre choix que de faire deux boucles imbriquées. C'est la logique. Mais la force d'Isam est justement de pouvoir éviter cela ! Certes, deux clés peuvent être utiles, et même plusieurs clés. Reprenons notre exemple. Si tu mets tout dans un seul fichier, et si tu définis les clés suivantes: cle1=auteur cle2=article cle3=auteur+article Tu peux alors facilement affichier la liste des auteurs par une seule boucle sur la clé 1. Tu peux donner une liste des articles, ordonnée selon le titre de l'article (ou sa référence) par une seule boucle selon la clé 2 Tu peux donner la liste des articles, ordonnée selon les auteurs, par une seule boucle sur la clé 2, en testant la "rupture" sur le champ auteur Bien sûr, tu peux pousser le principe plus loin. Suppose que les articles sont classées par catégorie, et ont tous une date de publication. Alors, on pourrait faire les clés suivantes: cle1=auteur cle2=article cle3=auteur+article cle4=catégorie cle5=date cle6=catégorie+date+article etc Et, en plus des traitements décrits ci-dessus, tu pourrais faire: une liste de tous les articles, classée par catégorie, en lisant par la clé 4 (traiter la rupture sur la catégorie) une liste chronologique des articles en lisant par la clé 5 (traiter la rupture sur le mois et/ou l'année) une liste chronologique des articles par catégorie, en lisant par la clé 6 (traiter la rupture sur la catégorie) etc. Dans tous les cas, la notion de "rupture" est essentielle pour structurer le résultat. Et cela dépend uniquement de l'usage que tu veux faire des données lues. En aucun cas, Isam ne peut deviner ce que tu veux faire et géer les ruptures à ta place. Tu vois un peu mieux où je veux en venir ? | |
| | | Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Jeu 1 Oct 2015 - 16:51 | |
| Je ferai des essais un peu plus tard, là , faut que je sorte (j' ai vidé une bombe à mouches dans mon appart ). | |
| | | Contenu sponsorisé
| Sujet: Re: ISAM toujours ISAM | |
| |
| | | | ISAM toujours ISAM | |
|
Sujets similaires | |
|
| Permission de ce forum: | Vous ne pouvez pas répondre aux sujets dans ce forum
| |
| |
| |