IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

Dépassement de capacité


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de _ChToM_
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 111
    Par défaut Dépassement de capacité
    Slt

    voila, j'ai fait un programme VB6 qui tourne pas mal, mais depuis peu, toujours sur les mêmes enregistrements (lors d'un parcours de recordset), il me pete une erreur : Code 6 - Dépassement de capacité.

    J'ai bien essayé de passer en mode debug, mais en vain car en mode debug, tout marche nickel.

    Je ne sais pas trop quoi faire pour réparer cette erreur.

    Est-il possible de vider la mémoire comme on peut le faire en Java (garbage collector...)?

    Merci d'avance.

  2. #2
    Membre émérite
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 730
    Par défaut
    voila, j'ai fait un programme VB6 qui tourne pas mal, mais depuis peu, toujours sur les mêmes enregistrements (lors d'un parcours de recordset), il me pete une erreur : Code 6 - Dépassement de capacité.
    Voyons un peu ce code ?

  3. #3
    Membre confirmé Avatar de _ChToM_
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 111
    Par défaut
    OK, en fait, je pensais que VB6 gérait bien les opérations sur les String...

    Apparement non, car il me mettait une erreur lorsque j'essayais la chose suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
        Dim Second_Temp As String
        Dim Minute_Temp As String
        Dim Heure_Temp As String
        Dim valeur_de_retour as String
     
        Second_Temp = val(Right(Time1, 2))
        Minute_Temp = val(Mid(Time1, 4, 2)) + val(tmp)
        Heure_Temp = val(Left(Time1, 2))
     
        If Minute_Temp > 59 Then
            Minute_Temp = Minute_Temp - 60
            Heure_Temp = Heure_Temp + 1
        End If
        If Heure_Temp > 23 Or Heure_Temp < 0 Then
            Heure_Temp = Heure_Temp - 24
        End If
        valeur_de_retour = Format(Heure_Temp, "0#") & ":" & Format(Minute_Temp, "0#") & ":" & Format(Second_Temp, "0#")

    En changeant le type de second_temp, minute_temp, et heure_temp, ca "résout" mon problème.

    Y'a encore un truc que j'ai mal fait?


    Désolé pour le dérangement

  4. #4
    Membre éprouvé Avatar de Le Pharaon
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 880
    Par défaut
    Plus haut tu disais que c'est un problème de recordset alors que dans le code il n y a pas de recordset

  5. #5
    Membre confirmé Avatar de _ChToM_
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 111
    Par défaut
    Ben en fait, j'étais persuadé que le problème venait d'un RecordSet.

    Ce que je voulais dire avec l'histoire du RecordSet, c'est que je sais d'avance que sur l'enregistrement 618 et 652, il va me péter une erreur de dépassement de capacité.

    Et je ne pige pas pourquoi.

    Apparement, c'était à cause du type des variables dans le code juste au dessus... M'enfin, ce qui me paraît bizarre, c'est que ce soit toujours sur les mêmes enregistrements.

  6. #6
    Membre confirmé Avatar de _ChToM_
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    111
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 111
    Par défaut
    Heu, toujours dans la catégorie "Erreur VB6", je demande "Dépassement de capacité" (elle me manquait pas cette erreur... )


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
        Dim return_value As Boolean
        Dim idx As Integer
        Dim size_tmp As Integer
        Dim code_tmp As Integer
        Dim cod_err_tmp As Integer
        Dim cod_fct_tmp As Integer
        Dim cod_err_tmp2 As Integer
        Dim cod_fct_tmp2 As Integer
        
        return_value = False
        idx = 1
        size_tmp = tab_destinataire(idx_dest).size_tab_stat_get
        
        Do While idx < size_tmp And return_value = False
            code_tmp = tab_destinataire(idx_dest).get_value_tab(idx).code_get
            cod_err_tmp = tab_destinataire(idx_dest).get_value_tab(idx).cod_err_get
            cod_fct_tmp = tab_destinataire(idx_dest).get_value_tab(idx).cod_fct_get
            cod_err_tmp2 = val(ModTraitErr.tab_info(15))
            cod_fct_tmp2 = val(ModTraitErr.tab_info(2))
            If code_tmp = COD_STAT _
                And cod_err_tmp = cod_err_tmp2 _
                And cod_fct_tmp = cod_fct_tmp2 Then
                    return_value = True
            Else
                idx = idx + 1
            End If
        Loop

    J'ai souligné l'endroit de l'erreur en bleu. ModTraitErr.tab_info est un tableau de String. Qu'est ce que je fais mal encore?

  7. #7
    Modérateur
    Avatar de AlainTech
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mai 2005
    Messages
    4 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : Belgique

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2005
    Messages : 4 235
    Par défaut
    Citation Envoyé par _ChToM_
    Ce que je voulais dire avec l'histoire du RecordSet, c'est que je sais d'avance que sur l'enregistrement 618 et 652, il va me péter une erreur de dépassement de capacité.
    Tu as laissé tourner le test jusqu'à l'enregistrement 618?
    N'oubliez pas de cliquer sur quand vous avez obtenu ou trouvé vous-même la réponse à votre question.
    Si vous trouvez seul, pensez à poster votre solution. Elle peut servir à d'autres!
    Pensez aussi à voter pour les réponses qui vous ont aidés.
    ------------
    Je dois beaucoup de mes connaissances à mes erreurs!

Discussions similaires

  1. Réponses: 12
    Dernier message: 17/10/2014, 16h08
  2. Transaction, Dépassement de capacité
    Par SkYsO dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 23/12/2008, 14h56
  3. Dépassement de capacité
    Par jean-pierre96 dans le forum Access
    Réponses: 2
    Dernier message: 10/05/2006, 16h04
  4. Réponses: 8
    Dernier message: 06/02/2006, 14h34
  5. détection de dépassement de capacité
    Par tut dans le forum C++
    Réponses: 10
    Dernier message: 01/12/2004, 22h11

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo