FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC

Développement d'applications avec le langage Panoramic
 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  MembresMembres  GroupesGroupes  Connexion  
Derniers sujets
» Planétarium virtuel.
par Pedro Alvarez Sam 21 Juil 2018 - 16:57

» Roues dentées
par jean_debord Sam 21 Juil 2018 - 10:40

» Attention arnaque !
par mindstorm Jeu 19 Juil 2018 - 19:18

» Qui fait quoi ?
par silverman Mer 18 Juil 2018 - 15:21

» ITEM_SELECT N,L pour synedit
par silverman Mer 18 Juil 2018 - 15:20

» Boussole
par jean_debord Mer 18 Juil 2018 - 11:06

» Roue à n faces
par Marc Dim 15 Juil 2018 - 22:16

» Exemple d'une nouvelle version d'un GRID
par Jean Claude Ven 13 Juil 2018 - 10:32

» Une simple question
par Oscaribout Sam 7 Juil 2018 - 23:20

» BUG sur l'objet TAB
par Jack Sam 7 Juil 2018 - 21:12

» Monopoly moderne
par jjn4 Sam 7 Juil 2018 - 15:06

» Récapitulatif ludothèque panoramic jjn4
par jjn4 Ven 6 Juil 2018 - 17:41

» Lignes ondulées
par JL35 Ven 6 Juil 2018 - 17:39

» bug off_activate 0 : sans d'effet
par silverman Ven 6 Juil 2018 - 13:02

» Position des objets d'un conteneur dans FBPano et Panoramic
par Navigateur Ven 6 Juil 2018 - 12:59

Navigation
 Portail
 Index
 Membres
 Profil
 FAQ
 Rechercher
Rechercher
 
 

Résultats par :
 
Rechercher Recherche avancée
Juillet 2018
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
CalendrierCalendrier

Partagez | 
 

 [Résolu] Un prg Panoramic s'abime avec le temps (erreur)

Aller en bas 
AuteurMessage
Oscaribout



Nombre de messages : 173
Date d'inscription : 29/12/2016

MessageSujet: [Résolu] Un prg Panoramic s'abime avec le temps (erreur)   Lun 25 Juin 2018 - 1:48

Bonsoir,

Théoriquement je devrais mettre ceci dans les bugs. Mais cela n'aura aucun effet car le résultat ne se produit qu'au bout d'une dizaine/quinzaine de jours de travail. Donc quelque soit le code, personne ne pourra voir ce qui se passe.

C'est un code qui fonctionne normalement. Il y a une progression dans la construction de celui-ci, et voila se qui se passe maintenant.



Vous remarquez que la variable: BOX_GrilStyleProgr% est lu plusieurs fois avant d'arriver à la ligne 632.
Dans l'image, on la retrouve en ligne: 610 - 614 - 626 - 629. Et pourtant en 632, l'objet n'est plus reconnu alors qu'à aucun moment il n'a été supprimé.

Que peut-on faire? Rien du tout, mais je présente le cas pour que Jack voit que le problème existe. Je doute qu'il trouve le problème, je comprend que ce n'est pas simple.


Dernière édition par Oscaribout le Lun 25 Juin 2018 - 13:49, édité 1 fois
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5980
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: [Résolu] Un prg Panoramic s'abime avec le temps (erreur)   Lun 25 Juin 2018 - 3:14

Vérifie la variable BOX_GrilStyleProgr%.
Vérifie qu’en cours de la boucle, elle ne  prend pas  une valeur hors limite.
Vérifie aussi la variable line%
En affichant ces valeurs ou en ajoutant un STOP  dans la boucle, tu peux suivre le déroulement de la boucle.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Oscaribout



Nombre de messages : 173
Date d'inscription : 29/12/2016

MessageSujet: Re: [Résolu] Un prg Panoramic s'abime avec le temps (erreur)   Lun 25 Juin 2018 - 8:43

Bon j'ai fait les vérifications que tu demandes, et voici la constatation:

Je mets la partie du code, il s'agit de la boucle FOR/NEXT, et une fonction: BOX_Tab%()
C'est au retour de cette fonction que la valeur est modifiée, et là il y a un problème, car rien ne le permet!

Code:

   for v% = 1 to line%
      message BOX_GrilStyleProgr%
      GRID_WRITE BOX_GrilStyleProgr%,7,10,le%
      '          ^^^^^^^^^^^^^^^^^^^
      a$ = upper$(GRID_READ$(BOX_GrilStyleProgr%,v%,1))
      '                      ^^^^^^^^^^^^^^^^^^^
      txt$ = GRID_READ$(BOX_GrilStyleProgr%,v%,4)
      '                 ^^^^^^^^^^^^^^^^^^^
      ' .................position virgule............
      rem @VIR: " TOUJOURS UN NOMBRE "              
      if a$ = "@VAR"
         txt$ = GRID_READ$(BOX_GrilStyleProgr%,v%,5)  :' entier
         '                 ^^^^^^^^^^^^^^^^^^^
         decimal$ = GRID_READ$(BOX_GrilStyleProgr%,v%,6)
         '                     ^^^^^^^^^^^^^^^^^^^
         BOX_tab%(txt$,decimal$,x%,y%,BOX_Picture_Style%,BOX_GrilStyleProgr%) :' il y a ici à un appel à une fonction ajoutée plus bas    
         '                                               ^^^^^^^^^^^^^^^^^^^
         ' au retour de la fonction, BOX_GrilStyleProgr% qui vaut 110, devient 85 POURQUOI?
         rem " ICI RETOUR DE L'ERREUR 3
      end_if
          
      if a$ = "@VIR"
         x% = GRID_READ$(BOX_GrilStyleProgr%,v%,2)
         '               ^^^^^^^^^^^^^^^^^^^
         txt$ = GRID_READ$(BOX_GrilStyleProgr%,v%,5)
         '                 ^^^^^^^^^^^^^^^^^^^
         decimal$ = GRID_READ$(BOX_GrilStyleProgr%,v%,6)
         '                     ^^^^^^^^^^^^^^^^^^^
         x1% = BOX_special_Virgule%(txt$,x%,y%,decimal$,BOX_Picture_Style% , no%) :' un autre appel
         rem dans "BOX_special_Virgule%(txt$,x%,y%,decimal$,BOX_Picture_Style% , no%)" '} il y a aucun rien avec "GridStyleProgr%"
                  
         if flag% = -1 then flag%=1 : x0% = x1%  
         x% = val(GRID_READ$(BOX_GrilStyleProgr%,8,10) )  
         '                   ^^^^^^^^^^^^^^^^^^^
      end_if
      ' ..............................................................
      if left$(a$,2) = "@_"
         if flag%=-1
            2d_line x0%  ,  val(GRID_READ$(BOX_GrilStyleProgr%,2,10))+ligne%  +l%  , x% , val(GRID_READ$(BOX_GrilStyleProgr%,2,10))+ligne% +l%
            '                              ^^^^^^^^^^^^^^^^^^^                                           ^^^^^^^^^^^^^^^^^^^
            ' cela devrait-être bon. A contrôler
         end_if
        
         if right$(a$,1) = "/"
            2d_pen_width 2  
            2d_line x0%  ,  val(GRID_READ$(no%,2,10))+ligne%  +l%  , x% , val(GRID_READ$(no%,2,10))+ligne% +l%              
            flag%=0   :  2d_pen_width 1
         else
            color% = asc(upper$(right$(a$,1)))
            flag% = -1  : x0%=x%
            select color%
               case 66 : 2d_pen_color 0,0,255   :' bleu
               case 71 : 2d_pen_color 0,255,0   :' vert
               case 74 : 2d_pen_color 255,255,0 :' jaune
               case 77 : 2d_pen_color 220,150,60:' marron
               case 78 : 2d_pen_color 0,0,0     :' noir
               case 79 : 2d_pen_color 250,180,0 :' orange
               case 82 : 2d_pen_color 255,0,0   :' rouge
               case 86 : 2d_pen_color 185,50,240:' violet
            end_select
            GRID_WRITE BOX_GrilStyleProgr%,10,10,x%  
            '          ^^^^^^^^^^^^^^^^^^^
         end_if              
      end_if          
   next v%
   STOP :' l'erreur se produit avant d'arriver à la sortie de la boucle
' @@@@@@@@@@@@@@@@@  sortie du sous_programme
...
...
rem " au retour BOX_GrilStyleProgr% est modifié, pourquoi?
fnc BOX_tab%(n$,de$,x%,y%,pict%,gri%)
message "gri%=" + str$(gri%)   :' reçu 110 ce qui est normal
   dim_local le%,p%,a$,re$ , i% , space%  
   if left$(n$,1) = "_" then x% = x%+text_width("2",pict%):n$ = right_pos$(n$,2)
   le% = len(n$) : p%=int( le%/3)  :  p% =le%-p%*3
   space% = text_width("2",pict%) /2.5 :  a$ = left$(n$,p%)
   print_locate x%,y% : print a$+" "
   x% = x% + text_width(a$,pict%)+space%  : a$ = right_pos$(n$,p%+1) : le% = le%-p%
   for i% = 1 to le% step 3
      re$ = mid$(a$,i%,3) :  print_locate x%,y%
      if i%+3 < le% then print re$+" ":else:print re$
      x% = x% + text_width(re$,pict%)+space%
   next i%
   print_locate x%-space%,20 : print de$
   result x%-space% + text_width(de$,pict%)
   grid_write gri%,10,10,x%
   '          ^^^^
rem "   LA FONCTION MODIFIE AU RETOUR LA VALEUR DE BOX_GrilStyleProgr%    "
end_fnc
' ================

Revenir en haut Aller en bas
Voir le profil de l'utilisateur
papydall

avatar

Nombre de messages : 5980
Age : 67
Localisation : Moknine (Tunisie) Entre la chaise et le clavier
Date d'inscription : 03/03/2012

MessageSujet: Re: [Résolu] Un prg Panoramic s'abime avec le temps (erreur)   Lun 25 Juin 2018 - 13:05

Ligne 16

Code:

BOX_tab%(txt$,decimal$,x%,y%,BOX_Picture_Style%,BOX_GrilStyleProgr%) :' il y a ici à un appel à une fonction ajoutée plus bas  
 

On ne peut pas appeler une FNC de cette manière.
Comme une FNC retourne une valeur, l’appel doit être  par exemple
Code:

Bidon% = BOX_tab%(txt$,decimal$,x%,y%,BOX_Picture_Style%,BOX_GrilStyleProgr%)


Ceci affectera le retour de la FNC à la variable Bidon%

La FNC BOX_tab%(txt$,decimal$,x%,y%,BOX_Picture_Style%,BOX_GrilStyleProgr%) retourne la valeur de la ligne 85

Code:

result x%-space% + text_width(de$,pict%)


Or tu fais un appel à la fonction en ligne 16 sans affecter la valeur de retour à aucune variable.
Dans ce cas la FNC se contente d’exécuter les instructions qu’elle contient et ne retourne rien.


Bon, j'espère que je n'ai pas  raconté des bêtises, sait-on jamais !
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com/
Oscaribout



Nombre de messages : 173
Date d'inscription : 29/12/2016

MessageSujet: Re: [Résolu] Un prg Panoramic s'abime avec le temps (erreur)   Lun 25 Juin 2018 - 13:48

Papydall a écrit:
On ne peut pas appeler une FNC de cette manière.

Dès que j'ai lu cela, j'ai compris tout de suite l'erreur! Bravo Papydall bounce

Que c'est-il passé?, J'ai mis au point cette fonction dans un autre onglet, et ensuite reportée. Au départ c'était une sub, et j'ai cherché plutôt à savoir où il pouvait y avoir une modification de la variable, sans voir le problème. Au départ je n'avais pas besoin du retour.

Merci. Je mets en résolu.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: [Résolu] Un prg Panoramic s'abime avec le temps (erreur)   

Revenir en haut Aller en bas
 
[Résolu] Un prg Panoramic s'abime avec le temps (erreur)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» [Résolu] Pare feu Zone Alarm compatible avec Windows 7 ?
» Résolu : Assistant de voies de circulation avec l'affichage des panneaux routiers Nuvi50
» [Résolu] Aide... j'ai un souci avec mon PC
» [résolu]Problème menu déroulant avec Chrome
» [RÉSOLU] Lecture de fichiers Open Office avec Word

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
FORUM DE DISCUSSION SUR LE LANGAGE PANORAMIC :: PANORAMIC :: Présentation et bavardage-
Sauter vers: