ODBC 12.02 jointure

Forum consacré aux développements d'applications interfacées avec les logiciels Sage

Modérateurs: Super Modérateur, Modérateurs

Règles du forum
Merci de prendre connaissance des règles d'utilisation du forum

Avant de poster un nouveau message, utilisez la fonction RECHERCHER. Indiquez la VERSION de votre logiciel et toutes informations utiles à la résolution de votre question. Ne rédigez pas vos messages en MAJUSCULES. Soyez courtois et pensez aux formules de POLITESSE d'usage. Les messages à vocation COMMERCIALE ou PUBLICITAIRE seront supprimés.

*** LORSQU'UN SUJET EST RESOLU, SON AUTEUR DOIT EDITER LE 1ER MESSAGE DU SUJET EN HAUT DE PAGE ET COCHER "SUJET RESOLU" ***

ODBC 12.02 jointure

Messagede ricil78 » Jeu 18 FĂ©v 2010 10:56

Bonjour,

je suis en train de faire un dev ODBC en 12.02 et j'ai une requĂŞte avec une jointure qui ne passe pas.
message d'erreur : erreur de syntaxe au niveau de la jointure
sous Access ça fonctionne !

Est-ce qu'il y a une syntaxe spécifique pour l'odbc ?
j'ai raccourci le nombre de champ dans le select pour pas que ce soit trop long :

Code: Tout sélectionner
SELECT F_COMPTET.CA_NUM, F_LIVRAISON.LI_NO, P_DEVISE.D_COURS
FROM (F_LIVRAISON RIGHT OUTER JOIN F_COMPTET ON F_LIVRAISON.CT_NUM = F_COMPTET.CT_NUM) LEFT OUTER JOIN P_DEVISE ON F_COMPTET.N_DEVISE = P_DEVISE.CBINDICE
WHERE (F_COMPTET.CT_NUM='007') AND (F_COMPTET.CT_TYPE)=0)
ricil78
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Lun 20 Nov 2006 14:16

Re: ODBC 12.02 jointure

Messagede OokieDookie » Jeu 18 FĂ©v 2010 12:11

Bonjour,

Le driver ODBC Sage a une conception bien particulière de la norme SQL, mais il me semble qu'il y a une coquille (parenthèse finale, sûrement un petit pb de copier / coller), et en ce qui me concerne je n'utilise jamais de parenthèses dans la clause FROM.

SVP que donne ceci ?

Code: Tout sélectionner
SELECT F_COMPTET.CA_NUM, F_LIVRAISON.LI_NO, P_DEVISE.D_COURS
FROM F_LIVRAISON RIGHT OUTER JOIN F_COMPTET ON F_LIVRAISON.CT_NUM = F_COMPTET.CT_NUM LEFT OUTER JOIN P_DEVISE ON F_COMPTET.N_DEVISE = P_DEVISE.CBINDICE
WHERE (F_COMPTET.CT_NUM='007') AND (F_COMPTET.CT_TYPE)=0


PS : pensez aux balises codes (sélection + bouton code en rédaction), c'est plus sympa pour les copies :wink:

HTH,
"L'expérience est le nom que chacun donne à ses erreurs." (O. Wilde)
Qualité et précision de la question conditionnent celles de la réponse. :roll:
:arrow:Nouveau venu ? Une urgence ? A lire...
:arrow:SMS-addict / M(o)ufles OEM ?
Avatar de l’utilisateur
OokieDookie
Modérateur
Modérateur
 
Messages: 1012
Inscription: Jeu 14 Fév 2008 13:50
Localisation: Paris

Re: ODBC 12.02 jointure

Messagede ricil78 » Jeu 18 FĂ©v 2010 12:33

désolé pour la balise j'ai oublié ! et c'était bien un mauvais copier/coller

les parenthèses ne semble pas le perturber mais bien la jointure qu'il n'aime pas

Code: Tout sélectionner
ERROR [42000] [Simba][Simba ODBC Driver]SELECT F_COMPTET.CA_NUM, F_LIVRAISON.LI_NO, P_DEVISE.D_COURS FROM F_LIVRAISON RIGHT OUTER<< ??? >> JOIN F_COMPTET ON F_LIVRAISON.CT_NUM = F_COMPTET.CT_NUM LEFT OUTER JOIN P_DEVISE ON F_COMPTET.N_DEVISE = P_DEVISE.CBINDICE WHERE (F_COMPTET.CT_TYPE)=0 ERROR [42000] [Simba][Simba ODBC Driver]Syntax Error.
ricil78
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Lun 20 Nov 2006 14:16

Re: ODBC 12.02 jointure

Messagede OokieDookie » Jeu 18 FĂ©v 2010 13:02

OK, on va essayer de remonter le temps en utilisant l'ancienne notation (enfin je crois, non testé :roll: ) :

Code: Tout sélectionner
SELECT F_COMPTET.CA_NUM, F_LIVRAISON.LI_NO, P_DEVISE.D_COURS
FROM F_LIVRAISON, F_COMPTET, P_DEVISE
WHERE
F_LIVRAISON.CT_NUM =* F_COMPTET.CT_NUM
AND
F_COMPTET.N_DEVISE *= P_DEVISE.CBINDICE
AND
(F_COMPTET.CT_NUM='007') AND (F_COMPTET.CT_TYPE)=0


HTH,
"L'expérience est le nom que chacun donne à ses erreurs." (O. Wilde)
Qualité et précision de la question conditionnent celles de la réponse. :roll:
:arrow:Nouveau venu ? Une urgence ? A lire...
:arrow:SMS-addict / M(o)ufles OEM ?
Avatar de l’utilisateur
OokieDookie
Modérateur
Modérateur
 
Messages: 1012
Inscription: Jeu 14 Fév 2008 13:50
Localisation: Paris

Re: ODBC 12.02 jointure

Messagede ricil78 » Jeu 18 FĂ©v 2010 13:07

résultat

il aime pas trop.

Code: Tout sélectionner
Erreur SQL :
ERROR [42000] [Simba][Simba ODBC Driver]SELECT F_COMPTET.CA_NUM, F_LIVRAISON.LI_NO, P_DEVISE.D_COURS
FROM F_LIVRAISON, F_COMPTET, P_DEVISE
WHERE
F_LIVRAISON.CT_NUM =<< ??? >>! F_COMPTET.CT_NUM
AND
F_COMPTET.N_DEVISE != P_DEVISE.CBINDICE
AND (F_COMPTET.CT_TYPE)=0

ERROR [42000] [Simba][Simba ODBC Driver]Syntax Error.



pour ce cas précis je vais faire autrement car c'est un peu urgent !
si quelqu'un a déjà fait une requête avec une jointure je veux bien un exemple.

merci Ă  tous
ricil78
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Lun 20 Nov 2006 14:16

Re: ODBC 12.02 jointure

Messagede OokieDookie » Jeu 18 FĂ©v 2010 13:13

:oops: Trop vite.

J'ai remplacé les ! par des * dans mon post précédent, qu'est-ce que ça donne ?

HTH,
"L'expérience est le nom que chacun donne à ses erreurs." (O. Wilde)
Qualité et précision de la question conditionnent celles de la réponse. :roll:
:arrow:Nouveau venu ? Une urgence ? A lire...
:arrow:SMS-addict / M(o)ufles OEM ?
Avatar de l’utilisateur
OokieDookie
Modérateur
Modérateur
 
Messages: 1012
Inscription: Jeu 14 Fév 2008 13:50
Localisation: Paris

Re: ODBC 12.02 jointure

Messagede ricil78 » Jeu 18 FĂ©v 2010 13:20

ça change rien.
ricil78
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Lun 20 Nov 2006 14:16

Re: ODBC 12.02 jointure

Messagede OokieDookie » Jeu 18 FĂ©v 2010 13:23

Bizarre,

J'ai confirmé la notation sur une instance SQL 2000, ça passe.
Décidemment l'ODBC Sage est plein de surprises.

Sorry
"L'expérience est le nom que chacun donne à ses erreurs." (O. Wilde)
Qualité et précision de la question conditionnent celles de la réponse. :roll:
:arrow:Nouveau venu ? Une urgence ? A lire...
:arrow:SMS-addict / M(o)ufles OEM ?
Avatar de l’utilisateur
OokieDookie
Modérateur
Modérateur
 
Messages: 1012
Inscription: Jeu 14 Fév 2008 13:50
Localisation: Paris

Re: ODBC 12.02 jointure

Messagede ricil78 » Jeu 18 FĂ©v 2010 13:26

j'ai bien l'impression que c'est l'ODBC sage qui n'est pas copain avec la syntaxe SQL
ricil78
Super Contributeur
Super Contributeur
 
Messages: 104
Inscription: Lun 20 Nov 2006 14:16


Retourner vers Développements ODBC, Objets métiers, SQL

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités