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

SAGE Discussion :

[SageX3V5] Erreur sur parcours d'une table liée


Sujet :

SAGE

  1. #1
    Membre actif Avatar de Cereal123
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 414
    Points : 214
    Points
    214
    Par défaut [SageX3V5] Erreur sur parcours d'une table liée
    Bonjour,

    Je bute sur un problème qui doit être trivial mais je n'arrive pas à voir où est le soucis.

    J'ai ajouté un tableau spécifique dans un onglet de la fenêtre OBPC (Fiche client).
    Pour y stocker le résultat, j'ai créé une table spécifique ZBPCREPFIL qui a la structure suivante :
    Nom : Sage1.jpg
Affichages : 165
Taille : 56,5 Ko

    Nom : Sage2.jpg
Affichages : 148
Taille : 21,9 Ko

    Voici le code spécifique associé à l'écran :
    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
    29
    30
    31
    32
    33
    34
     
    $ACTION
    Case ACTION
      When "OUVRE"     : Gosub OUVRE
      When "MODIF"     : Gosub MODIF
      When "LIENS"     : Gosub LIENS
      When default
    Endcase
    Return
     
    ############################################################################### $OUVRE
    $OUVRE
    # Ouvre la table qui contient les champs spécifiques
    If clalev([F:ZBPCREPFIL])=0 : Local File "ZBPCREPFIL" [ZBPCR] : ENDIF
     
    Return
     
    ############################################################################### $LIENS
    $LIENS
     
    Local Integer WNUMLIG
     
    #dbgmode = 1
    #Dbgaff
     
    WNUMLIG = 0
    For [F:ZBPCR]ZCR1 Where [F:ZBPCR]BPCNUM = [M:BPC0]BPCNUM
       nolign = WNUMLIG + 1
       [M:BPC6] = [F:ZBPCR]
       WNUMLIG += 1
    Next
    [M:BPC6]NBLIG = WNUMLIG
     
    Return
    A l'exécution, lorsque j'ouvre une fiche client, j'ai les messages d'erreur :
    Nom : SageErr1.jpg
Affichages : 139
Taille : 14,2 Ko
    et
    Nom : SageErr2.jpg
Affichages : 143
Taille : 19,2 Ko

    Je ne comprends pas pourquoi car pourtant l'index existe dans la définition de la table.
    (Cela correspond à la ligne 26 du code)
    Voyez-vous ce qui cloche ?

    C.

  2. #2
    Membre éclairé
    Homme Profil pro
    Administrateur X3 - Sage 1000
    Inscrit en
    Janvier 2012
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Administrateur X3 - Sage 1000

    Informations forums :
    Inscription : Janvier 2012
    Messages : 573
    Points : 811
    Points
    811
    Par défaut
    Moi c'est cette ligne là qui m'interpelle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If clalev([F:ZBPCREPFIL])=0 : Local File "ZBPCREPFIL" [ZBPCR] : ENDIF
    Pourquoi l'éditeur n'a pas transformé ENDIF en Endif ?

    J'ai l'habitude de mettre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If clalev([F:ZBPCR])=0 : Local File ZBPCREPFIL [ZBPCR]  Endif
    Mais ça n'a peut-être pas d'impact sur ton problème.

    D'autre part tu es sûr que tu passes bien par l'action $OUVRE : mets un petit Infbox pour en être sûr.

  3. #3
    Membre actif Avatar de Cereal123
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 414
    Points : 214
    Points
    214
    Par défaut
    Merci de cette réponse.
    Je passe bien dans la section $OUVRE, et même en ayant changé le code comme indiqué pour ouvrir la table, même punition !

  4. #4
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    Pourquoi ne pas mettre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Filter [F:ZBPCR] Where [F:ZBPCR]BPCNUM = [M:BPC0]BPCNUM order by ZCR1
    For [F:ZBPCR]
        nolign = WNUMLIG + 1
        [M:BPC6] = [F:ZBPCR]
        WNUMLIG += 1
    Next
    [M:BPC6]NBLIG = WNUMLIG
     
    Filter [F:ZBPCR] 
    return

  5. #5
    Membre actif Avatar de Cereal123
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 414
    Points : 214
    Points
    214
    Par défaut
    Merci de cette idée :
    J'ai essayé mais j'ai le message "ZCR1 variable inexistante".
    En mettant [F:ZBPCR]ZCR1, même problème.
    C'est comme si mes index n'étaient pas connus...
    Pourtant j'ai forcé la validation de la table.

    Une autre idée ?

  6. #6
    Membre habitué
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Juillet 2014
    Messages
    191
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2014
    Messages : 191
    Points : 147
    Points
    147
    Par défaut
    change order by ZCR1 par order by BPCNUM

    Si ton index fonctionne ce sera aussi performant

    ensuite regarde dans un outil tel que SQL developper si tes index existent bien pour la table que tu as créé

  7. #7
    Membre actif
    Femme Profil pro
    Consultant ERP
    Inscrit en
    Janvier 2015
    Messages
    197
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Consultant ERP

    Informations forums :
    Inscription : Janvier 2015
    Messages : 197
    Points : 202
    Points
    202
    Par défaut
    Bonjour ,
    Ca peut être lié a l’abréviation que t'as donné à ta table spé,
    bon pour ta table au lieu de l'ouvrir dans le trt tu peux la déclarer directement dans ton objet bpc et t'aura ps besoin de la ré ouvrir dans ton trt,
    sinn puisque c'est une table spécifique pas besoin de faire le clalev t'es sur quelle n'est pas ouverte tu déclare directement ta table et tu ferme a la fin de ton trt

  8. #8
    Membre actif Avatar de Cereal123
    Homme Profil pro
    Responsable de service informatique
    Inscrit en
    Juin 2004
    Messages
    414
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Responsable de service informatique

    Informations forums :
    Inscription : Juin 2004
    Messages : 414
    Points : 214
    Points
    214
    Par défaut
    Ça fonctionne, merci !
    Il ne me reste plus qu'à comprendre pourquoi il ne voit pas mes index. Je vais vérifier directement en base.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupération du résultat d'une requête sur une table liée
    Par champijulie dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 05/06/2007, 12h26
  2. Réponses: 2
    Dernier message: 03/03/2007, 19h03
  3. [AC-97] Select, gestion d'erreur et Alter d'une table liée
    Par Jay.L dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 08/02/2007, 14h31
  4. cumul sur une table liée
    Par pierrot67 dans le forum Bases de données
    Réponses: 2
    Dernier message: 08/11/2006, 19h45
  5. [JSP]erreur dans parcours d'une table
    Par lcoder dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 06/07/2006, 09h52

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