Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Syntaxe étrange dans requête

2 réponses
Avatar
*.Har(d)t
Bonjour,

Je dois d=E9panner une requ=EAte dans une application ACCESS 2000 qui n'a
pas =E9t=E9 =E9crite par moi-m=EAme.

Le probl=E8me, c'est que je n'ai jamais vu ce genre de syntaxe.

SELECT Tonnage.semaine,
[$ COND annee-1 (FCH)].Expr2 AS [$ COND annee-1
(FCH)_Expr2],
[$ MO TTL (KB)].[$ MO TTLE(KB)], [$ MO TTL ann=E9e -1
(KB)].Expr1,
Tonnage.SommeDetonnage,
[HCOND(FCH)].[H COND (FCH)],
[HTTLE(KB)].[SommeDeh-payees],
[% H SUPP].pourcHsupp,
[% H TF/H TTLE].[%H TF/H TTLE],
[$ MO COND(FCH)].Expr2 AS [$ MO COND(FCH)_Expr2]
FROM ((((((((semaine INNER JOIN [$ COND annee-1 (FCH)]
ON semaine.semaine =3D [$ COND annee-1
(FCH)].semaine)
INNER JOIN [$ MO TTL (KB)]
ON semaine.semaine =3D [$ MO
TTL (KB)].semaine)
INNER JOIN [$ MO
TTL ann=E9e -1 (KB)]
ON semaine.semaine
=3D [$ MO TTL ann=E9e -1 (KB)].semaine)
INNER JOIN
[HCOND(FCH)]
ON
semaine.semaine =3D [HCOND(FCH)].semaine)
=20
INNER JOIN [HTTLE(KB)]
=20
ON semaine.semaine =3D [HTTLE(KB)].semaine)
=20
INNER JOIN [% H SUPP]
=20
ON semaine.semaine =3D [% H SUPP].semaine)
=20
INNER JOIN [% H TF/H TTLE]
=20
ON semaine.semaine =3D [% H TF/H TTLE].semaine)
=20
INNER JOIN [$ MO COND(FCH)]
=20
ON semaine.semaine =3D [$ MO COND(FCH)].semaine)
=20
INNER JOIN Tonnage
=20
ON semaine.semaine =3D Tonnage.semaine;




Ce qui me pose probl=E8me, c'est les [$ COND annee-1 (FCH)].Expr2 dans
le SELECT. Je ne connais pas ce type de syntaxe et je ne comprends
donc pas trop ce que doit faire la requ=EAte.
Est-ce que quelqu'un saurait m'=E9clairer ? (sur la syntaxe bien s=FBr, la
logique de la requ=EAte =E9tant inh=E9rente =E0 l'application et donc
difficilement expliquable sur un forum sans avoir l'application
compl=E8te, je suppose)

D'avance merci =E0 tous ceux qui prendront la peine de lire ainsi qu'=E0
ceux qui r=E9pondront.

Philippe

2 réponses

Avatar
Raymond [mvp]
Bonsoir.

est-ce que cet exemple te convient ?
SELECT [$ COND annee-1 (FCH)].ID, [$ COND annee-1 (FCH)].Numero, [$ COND
annee-1 (FCH)].Pays, [$ COND annee-1 (FCH)].Région, [$ COND annee-1
(FCH)].Téléphone, [$ COND annee-1 (FCH)].Madate, [$ COND annee-1
(FCH)_1].ID, [$ COND annee-1 (FCH)_1].Numero
FROM [$ COND annee-1 (FCH)] INNER JOIN [$ COND annee-1 (FCH)] AS [$ COND
annee-1 (FCH)_1] ON [$ COND annee-1 (FCH)].ID = [$ COND annee-1 (FCH)_1].ID;

si oui, tu commences par maudire celui qui a confectionné ta base, tu lui
mets un grand coup de bate de base-ball, et après tu te sentiras soulagé.
tout ce qui est nommé [$ COND annee-1 (FCH)] est le nom de la table $ COND
annee-1 (FCH).
commences par renommer toutes tes tables pour les appeler d'un nom
significatif. mais attention coche bien les options de suivi automatique de
noms dans les options générale access pour qu'access tienne compte de ces
modifs dans tous les objets. mais attention encore, access ne gère pas tout
et surtout ne gère pas du tout les modules donc si tu as des tables nommés
dans les modules faut le faire manuellement.
il ne faut pas tout faire à la fois mais commencer par une table. afficher
les dépendances d'objets pour vérifier si toutes les modifs sont bien
réalisées et ensuite tester les formulaires et états dépendants de cette
table.
si ok passer à la 2e table.
je te souhaite bon courage car il va t'en falloir mais ne te décourages pas
c'est faisable au calme.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/

Le multimédia vu par Windows Vista, Office 2007 et Windows Live !!!
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"*.Har(d)t" a écrit dans le message de news:

Bonjour,

Je dois dépanner une requête dans une application ACCESS 2000 qui n'a
pas été écrite par moi-même.

Le problème, c'est que je n'ai jamais vu ce genre de syntaxe.

SELECT Tonnage.semaine,
[$ COND annee-1 (FCH)].Expr2 AS [$ COND annee-1
(FCH)_Expr2],
[$ MO TTL (KB)].[$ MO TTLE(KB)], [$ MO TTL année -1
(KB)].Expr1,
Tonnage.SommeDetonnage,
[HCOND(FCH)].[H COND (FCH)],
[HTTLE(KB)].[SommeDeh-payees],
[% H SUPP].pourcHsupp,
[% H TF/H TTLE].[%H TF/H TTLE],
[$ MO COND(FCH)].Expr2 AS [$ MO COND(FCH)_Expr2]
FROM ((((((((semaine INNER JOIN [$ COND annee-1 (FCH)]
ON semaine.semaine = [$ COND annee-1
(FCH)].semaine)
INNER JOIN [$ MO TTL (KB)]
ON semaine.semaine = [$ MO
TTL (KB)].semaine)
INNER JOIN [$ MO
TTL année -1 (KB)]
ON semaine.semaine
= [$ MO TTL année -1 (KB)].semaine)
INNER JOIN
[HCOND(FCH)]
ON
semaine.semaine = [HCOND(FCH)].semaine)

INNER JOIN [HTTLE(KB)]

ON semaine.semaine = [HTTLE(KB)].semaine)

INNER JOIN [% H SUPP]

ON semaine.semaine = [% H SUPP].semaine)

INNER JOIN [% H TF/H TTLE]

ON semaine.semaine = [% H TF/H TTLE].semaine)

INNER JOIN [$ MO COND(FCH)]

ON semaine.semaine = [$ MO COND(FCH)].semaine)

INNER JOIN Tonnage

ON semaine.semaine = Tonnage.semaine;




Ce qui me pose problème, c'est les [$ COND annee-1 (FCH)].Expr2 dans
le SELECT. Je ne connais pas ce type de syntaxe et je ne comprends
donc pas trop ce que doit faire la requête.
Est-ce que quelqu'un saurait m'éclairer ? (sur la syntaxe bien sûr, la
logique de la requête étant inhérente à l'application et donc
difficilement expliquable sur un forum sans avoir l'application
complète, je suppose)

D'avance merci à tous ceux qui prendront la peine de lire ainsi qu'à
ceux qui répondront.

Philippe
Avatar
Michel_D
Ou (peut-être plus simple ou du moins plus immédiat)
[Nom_de_table_spécial] AS Tx

et on remplace toutes les occurences du nom de cette table dans la requète
Ce qui donnerai :

SELECT T9.semaine, T1.Expr2 AS [$ COND annee-1(FCH)_Expr2],
T2.[$ MO TTLE(KB)], T3.Expr1, T9.SommeDetonnage, T4.[H COND (FCH)],
T5.[SommeDeh-payees], T6.pourcHsupp, T7.[%H TF/H TTLE],
T8.Expr2 AS [$ MO COND(FCH)_Expr2]
FROM ((((((((semaine AS T
INNER JOIN [$ COND annee-1 (FCH)] AS T1 ON T.semaine = T1.semaine)
INNER JOIN [$ MO TTL (KB)] AS T2 ON T.semaine = T2.semaine)
INNER JOIN [$ MO TTL année -1 (KB)] AS T3 ON T.semaine = T3.semaine)
INNER JOIN [HCOND(FCH)] AS T4 ON T.semaine = T4.semaine)
INNER JOIN [HTTLE(KB)] AS T5 ON T.semaine = T5.semaine)
INNER JOIN [% H SUPP] AS T6 ON T.semaine = T6.semaine)
INNER JOIN [% H TF/H TTLE] T7 ON T.semaine = T7.semaine)
INNER JOIN [$ MO COND(FCH)] AS T8 ON T.semaine = T8.semaine)
INNER JOIN Tonnage AS T9 ON T.semaine = T9.semaine;


"Raymond [mvp]" a écrit dans le message de news:eV%
Bonsoir.

est-ce que cet exemple te convient ?
SELECT [$ COND annee-1 (FCH)].ID, [$ COND annee-1 (FCH)].Numero, [$ COND
annee-1 (FCH)].Pays, [$ COND annee-1 (FCH)].Région, [$ COND annee-1
(FCH)].Téléphone, [$ COND annee-1 (FCH)].Madate, [$ COND annee-1
(FCH)_1].ID, [$ COND annee-1 (FCH)_1].Numero
FROM [$ COND annee-1 (FCH)] INNER JOIN [$ COND annee-1 (FCH)] AS [$ COND
annee-1 (FCH)_1] ON [$ COND annee-1 (FCH)].ID = [$ COND annee-1 (FCH)_1].ID;

si oui, tu commences par maudire celui qui a confectionné ta base, tu lui
mets un grand coup de bate de base-ball, et après tu te sentiras soulagé.
tout ce qui est nommé [$ COND annee-1 (FCH)] est le nom de la table $ COND
annee-1 (FCH).
commences par renommer toutes tes tables pour les appeler d'un nom
significatif. mais attention coche bien les options de suivi automatique de
noms dans les options générale access pour qu'access tienne compte de ces
modifs dans tous les objets. mais attention encore, access ne gère pas tout
et surtout ne gère pas du tout les modules donc si tu as des tables nommés
dans les modules faut le faire manuellement.
il ne faut pas tout faire à la fois mais commencer par une table. afficher
les dépendances d'objets pour vérifier si toutes les modifs sont bien
réalisées et ensuite tester les formulaires et états dépendants de cette
table.
si ok passer à la 2e table.
je te souhaite bon courage car il va t'en falloir mais ne te décourages pas
c'est faisable au calme.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/

Le multimédia vu par Windows Vista, Office 2007 et Windows Live !!!
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"*.Har(d)t" a écrit dans le message de news:

Bonjour,

Je dois dépanner une requête dans une application ACCESS 2000 qui n'a
pas été écrite par moi-même.

Le problème, c'est que je n'ai jamais vu ce genre de syntaxe.

SELECT Tonnage.semaine,
[$ COND annee-1 (FCH)].Expr2 AS [$ COND annee-1
(FCH)_Expr2],
[$ MO TTL (KB)].[$ MO TTLE(KB)], [$ MO TTL année -1
(KB)].Expr1,
Tonnage.SommeDetonnage,
[HCOND(FCH)].[H COND (FCH)],
[HTTLE(KB)].[SommeDeh-payees],
[% H SUPP].pourcHsupp,
[% H TF/H TTLE].[%H TF/H TTLE],
[$ MO COND(FCH)].Expr2 AS [$ MO COND(FCH)_Expr2]
FROM ((((((((semaine INNER JOIN [$ COND annee-1 (FCH)]
ON semaine.semaine = [$ COND annee-1
(FCH)].semaine)
INNER JOIN [$ MO TTL (KB)]
ON semaine.semaine = [$ MO
TTL (KB)].semaine)
INNER JOIN [$ MO
TTL année -1 (KB)]
ON semaine.semaine
= [$ MO TTL année -1 (KB)].semaine)
INNER JOIN
[HCOND(FCH)]
ON
semaine.semaine = [HCOND(FCH)].semaine)

INNER JOIN [HTTLE(KB)]

ON semaine.semaine = [HTTLE(KB)].semaine)

INNER JOIN [% H SUPP]

ON semaine.semaine = [% H SUPP].semaine)

INNER JOIN [% H TF/H TTLE]

ON semaine.semaine = [% H TF/H TTLE].semaine)

INNER JOIN [$ MO COND(FCH)]

ON semaine.semaine = [$ MO COND(FCH)].semaine)

INNER JOIN Tonnage

ON semaine.semaine = Tonnage.semaine;




Ce qui me pose problème, c'est les [$ COND annee-1 (FCH)].Expr2 dans
le SELECT. Je ne connais pas ce type de syntaxe et je ne comprends
donc pas trop ce que doit faire la requête.
Est-ce que quelqu'un saurait m'éclairer ? (sur la syntaxe bien sûr, la
logique de la requête étant inhérente à l'application et donc
difficilement expliquable sur un forum sans avoir l'application
complète, je suppose)

D'avance merci à tous ceux qui prendront la peine de lire ainsi qu'à
ceux qui répondront.

Philippe