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

WinDev Discussion :

Erreur dans une Requête avec plusieurs INNER JOIN [WD12]


Sujet :

WinDev

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 176
    Points : 91
    Points
    91
    Par défaut Erreur dans une Requête avec plusieurs INNER JOIN
    Bonjour,

    J’ai crée une requête qui fonctionne quand je la lance une query directement dans mon SGB (MSSQL).

    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
    SELECT VenteToAn.IDVente_To_An
    ,VenteToAn.FKTourOperator
    ,VenteToAn.FKAgence
    ,TourOperator.Nom
    ,Agence.Nom
    ,Branche.Label
    ,VenteToAn.ChBrutAnPr
    ,VenteToAn.ChiffreBrut
    ,ChiffreNet.ChiffreNet
    ,VenteToAn.Pax
    ,VenteToAn.Segment
    ,VenteToAn.Po
    ,VenteToAn.Annee
    ,VenteToAn.TargetMontant
    ,VenteToAn.TargetDossier
    ,VenteToAn.BonusDistrib
    ,VenteToAn.BonusNonDistrib
    ,VenteToAn.Prime
    ,VenteToAn.Direct
     
    FROM VenteToAn
    INNER JOIN ChiffreNet
    ON ChiffreNet.FKVente_To_An = VenteToAn.IDVente_To_An AND VenteToAn.Annee = 2009
    INNER JOIN Branche
    ON ChiffreNet.FKBranche = Branche.IDBranche
    INNER JOIN TourOperator
    ON TourOperator.IDTourOperator = VenteToAn.FKTourOperator
    INNER JOIN Agence
    ON Agence.IDAgence = VenteToAn.FKAgence
     
    ORDER BY VenteToAn.FKTourOperator
    Quand je la met dans Windev en remplacent le « 2009 » par {data} . Celle-ci fonctionne bien quand je passe directement par le GO de la requête.

    Par contre quand je commence à l’utiliser dans mon programme en remplacent le paramètre par une valeur MaSource.data = "2009". Je reçois un message d’erreur.

    Le champ 'TABLE_REQ_ExportationData' n'a pas pu s'initialiser, car il a rencontré l'erreur Hyper File suivante :
    =============================
    Erreur de l'accès natif SQLSERVER.
    Numéro d'erreur = 100
    Message SQL Server 102, état 1, sévérité 15 :
    Incorrect syntax near '}'.
    SQLServer a renvoyé l'erreur suivante :
    Erreur générale sur SQL Server : Consultez les messages SQL Server., n° : 10007, sévérité : 5
    SQLServer a renvoyé une erreur lors de l'exécution de la requête suivante :
    SELECT [VenteToAn].[IDVente_To_An] AS IDVente_To_An , [VenteToAn].[FKTourOperator] AS FKTourOperator , [VenteToAn].[FKAgence] AS FKAgence , [TourOperator].[Nom] AS Nom , [Agence].[Nom] AS EXP1 , [Branche].[Label] AS Label , [VenteToAn].[ChBrutAnPr] AS ChBrutAnPr , [VenteToAn].[ChiffreBrut] AS ChiffreBrut , [ChiffreNet].[ChiffreNet] AS ChiffreNet , [VenteToAn].[Pax] AS Pax , [VenteToAn].[Segment] AS Segment , [VenteToAn].[Po] AS Po , [VenteToAn].[Annee] AS Annee , [VenteToAn].[TargetMontant] AS TargetMontant , [VenteToAn].[TargetDossier] AS TargetDossier , [VenteToAn].[BonusDistrib] AS BonusDistrib , [VenteToAn].[BonusNonDistrib] AS BonusNonDistrib , [VenteToAn].[Prime] AS Prime , [VenteToAn].[Direct] AS Direct
    FROM ((([VenteToAn] (NOLOCK) INNER JOIN [ChiffreNet] (NOLOCK) ON ( ( ChiffreNet.FKVente_To_An = VenteToAn.IDVente_To_An ) AND ( VenteToAn.Annee = {data} ) ) ) INNER JOIN [Branche] (NOLOCK) ON ( ChiffreNet.FKBranche = Branche.IDBranche ) ) INNER JOIN [Tour
    Le message d’erreur est tronqué à la fin… J’ai trop INNER JOIN ? Ma requête n’est pas adaptée ?

    Merci d’avance.
    Raphaël.

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 176
    Points : 91
    Points
    91
    Par défaut
    Bonjour,

    Je suis confronté de nouveau à ce problème, j'avais pu l'éviter la dernière fois mais depuis que j'ai ajouté un WHERE... C'est de nouveau le même souci. Personne n'a jamais eu la farce ?

    Je vous résume de nouveau la situation :

    Nous sommes en MS SQL 2005 et en natif pour Windev, je prépare une requête SQL via celui-ci qui fonctionne parfaitement. Je l’intègre dans WinDev et je la test avec succès via le WD Aperçu.

    Je crée une table que je remplis avec cette requête et boum message d’erreur à l’exécution. Je retire simplement le WHERE Agence.Actif = 1 et ça fonctionne correctement…

    Voici la requête :
    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    SELECT [VenteToAn].[IDVente_To_An]
    	,[ChiffreNet].[IdChiffreNet]
          ,[VenteToAn].[FKTourOperator]
          ,[VenteToAn].[FKAgence]
    	,[TourOperator_Agence2].[FKCategorie]
    	,[TourOperator].[Nom] AS NomTo
    	,[Agence].[Nom] AS NomAgence
    	,[Categorie].[Label] AS NomCategorie
    	,[Branche].[Label] AS NomBranche
          ,[TourOperator_Agence].[ChiffreBase]
          ,[VenteToAn].[ChBrutAnPr]
          ,[VenteToAn].[ChNetAnPr]
          ,[VenteToAn].[ChiffreBrut]
    	,[ChiffreNet].[ChiffreNet]
          ,[VenteToAn].[Pax]
          ,[VenteToAn].[Segment]
          ,[VenteToAn].[Po]
          ,[VenteToAn].[Annee]
          ,[VenteToAn].[TargetMontant]
          ,[VenteToAn].[TargetDossier]
          ,[VenteToAn].[BonusDistrib]
          ,[VenteToAn].[BonusNonDistrib]
          ,[VenteToAn].[Prime]
          ,[VenteToAn].[Direct]
     
     
      FROM [Chiffre].[dbo].[VenteToAn]
      INNER JOIN ChiffreNet
      ON ChiffreNet.FKVente_To_An = VenteToAn.IDVente_To_An and VenteToAn.Annee = DATENAME(yy,getDate()-365) 
      INNER JOIN Branche
      ON ChiffreNet.FKBranche = Branche.IDBranche
      INNER JOIN TourOperator
      ON TourOperator.IDTourOperator = VenteToAn.FKTourOperator
      INNER JOIN Agence
      ON Agence.IDAgence = VenteToAn.FKAgence
      INNER JOIN TourOperator_Agence2
      ON VenteToAn.FKAgence = TourOperator_Agence2.FKAgence AND VenteToAn.FKTourOperator = TourOperator_Agence2.FKTourOperator
      INNER JOIN Categorie
      ON [TourOperator_Agence2].FKCategorie = [Categorie].IDCategorie
      INNER JOIN TourOperator_Agence
      ON VenteToAn.FKAgence = TourOperator_Agence.FKAgence AND VenteToAn.FKTourOperator = TourOperator_Agence.FKTourOperator
      WHERE Agence.Actif = 1	
      ORDER BY VenteToAn.FKTourOperator
    Voici le message d’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
     
    Le champ 'TABLE_REQ_ExportationData' n'a pas pu s'initialiser, car il a rencontré l'erreur Hyper File suivante :
    Erreur de l'accès natif SQLSERVER.
    Numéro d'erreur = 100 
     Message SQL Server 102, état 1, sévérité 15 : 
    	Incorrect syntax near 'TourOperator_Agence2'.
    SQLServer a renvoyé l'erreur suivante :
    Erreur générale sur SQL Server : Consultez les messages SQL Server., n° : 10007, sévérité : 5
    SQLServer a renvoyé une erreur lors de l'exécution de la requête suivante :
    SELECT [VenteToAn].[IDVente_To_An]  AS IDVente_To_An , [ChiffreNet].[IdChiffreNet]  AS IdChiffreNet , [VenteToAn].[FKTourOperator]  AS FKTourOperator , [VenteToAn].[FKAgence]  AS FKAgence , [TourOperator_Agence2].[FKCategorie]  AS FKCategorie , [TourOperator].[Nom]  AS NomTo , [Agence].[Nom]  AS NomAgence , [Categorie].[Label]  AS NomCategorie , [Branche].[Label]  AS NomBranche , [TourOperator_Agence].[ChiffreBase]  AS ChiffreBase , [VenteToAn].[ChBrutAnPr]  AS ChBrutAnPr , [VenteToAn].[ChNetAnPr]  AS ChNetAnPr , [VenteToAn].[ChiffreBrut]  AS ChiffreBrut , [ChiffreNet].[ChiffreNet]  AS ChiffreNet , [VenteToAn].[Pax]  AS Pax , [VenteToAn].[Segment]  AS Segment , [VenteToAn].[Po]  AS Po , [VenteToAn].[Annee]  AS Annee , [VenteToAn].[TargetMontant]  AS TargetMontant , [VenteToAn].[TargetDossier]  AS TargetDossier , [VenteToAn].[BonusDistrib]  AS BonusDistrib , [VenteToAn].[BonusNonDistrib]  AS BonusNonDistrib , [VenteToAn].[Prime]  AS Prime , [VenteToAn].[Direct]  AS Direct 
    FROM (((((([
    =============================
    Informations techniques
    Projet : Projet Chiffre
    Dump de l'erreur du module <WD120OBJ.DLL> <12.00Pyn>.
    - Niveau : erreur fatale (EL_FATAL)
    - Code erreur : 10085
    - Code erreur WD55 : 3001
    D'avance, merci.

    Raphaël.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mars 2002
    Messages
    899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations forums :
    Inscription : Mars 2002
    Messages : 899
    Points : 1 103
    Points
    1 103
    Par défaut
    C'est dû à la correction automatique des ordres H
    Choisis l'option hRequeteSansCorrection dans ton HExecuteRequete et ça ira tout seul

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    176
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2008
    Messages : 176
    Points : 91
    Points
    91
    Par défaut
    Que dire à part merci...

    Je dois juste trouver comment activer directement cette constante sur une table remplie par cette requête.

    Encore merci à toi Bowen. C'est tout bête mais j'avais complètement zapper ce truc de correction des requêtes.

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/06/2013, 17h30
  2. Erreur dans une requête avec des valeurs contenant \
    Par KIK83 dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 11/12/2009, 16h06
  3. #Erreur dans une requête avec une fonction personnalisée
    Par pguiheu dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 04/07/2006, 15h45
  4. [SQL] Requête dans une requête...avec des INNER JOIN!
    Par PedroBD dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 06/04/2006, 08h26
  5. une requête avec plusieurs INNER JOIN, cmt faire ?
    Par elhosni dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 10/01/2006, 17h55

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