OVH Cloud OVH Cloud

[WD75] : SQL & Hyperfile

24 réponses
Avatar
Sam \(au boulot\)
Bonjour,

Nous avons un soucis avec un parcours SQL sur un table. On a beau regarder,
modifier, tester... rien à faire pour trouver.

On a une requête sur une table HF qui ne retourne pas toujours le même
nombre d'enregistrements. Table ou index corrompu ? ET non, on le reproduit
sur différentes bases de données.

En fait la requête est tu style SELECT... WHERE...ORDER BY créée
automatiquement en fonction de saisies utilisateurs (critères de recherche).
Et la plupart des requêtes produites fonctionnent. Mais un cas, l'un des
plus simples (!), donne des requltats farfelus.

Avec WDSQL le fonctionnement de la requête est correct. Par exemple ma
requête me donne 705 lignes, systématiquement. Avec le programme Windev ça
donne... 145...153... 667... au hasard (note : toujours moins que ce qu'il
faut). Aucune erreur produite par SQLExec ou pendant le parcours. Les
données produites sont correctes, c'est le nombre d'enregistrement qui n'est
pas bon.

Par contre en supprimant le ORDER BY j'ai systématiquement les bonnes
données ?!? Ou en changeant la chause WHERE pour une recherche sur d'autres
critères, le comportement redevient normal !!!!!!!!

La requête "délirante" n'est pas bien méchante. J'ai tenté quelques
variations de syntaxe (sans changer la sémantique), mais sans succès.
Histoire de montrer comme c'est trivial :

SELECT
DEC,CCG,NJL,NPOL,PIECE,MTTOT,LET,DLET,TOPPCLI,DTOPPCLI,PCIE,DPAIEM,NOQUIT,EC
CLEUNIK,CIE,LIB,DEBUTECHE,FINECHE,NSINIST,CODE_PORTEF FROM ECRITURE
WHERE ECRITURE.DEC >= '20040401' And ECRITURE.DEC <= '20040405'
ORDER BY ECRITURE.DEC


Pire... j'ai découvert qu'en testant le programme avec WDSQL ouvert ma
requête me donnait systémtiquement 704 ou 705 enregistrements. C'est pas
tout à fait correct mais on note que le comportement est légèrement moins
fantaisiste. Je referme WDSQL... et là on a à nouveau n'importe quoi comme
nombre d'enregistrements trouvés ! Les deux programmes interférent :o(

Ceci est reproduisible sur plusieurs environnement, en dev et en
exploitation. Le code de parcours est trivial et a été relus par 3
personnes. Modifié à plusieurs reprises pour tenter de changer le
comportement. Fermeture forcée de tout les fichiers avant, reconnection SQL
à HF toute fraîche, etc... rien à faire.

Alors là je demande de l'aide, ou une info sur un bug potentiel sur Windev
75 (206h) dans SQLExec ou SQLFetch ? Un bug peu présent si c'est le cas, nos
autres requêtes des autres programmes semblent fonctionner.

Merci d'avance.

10 réponses

1 2 3
Avatar
Roumegou
Sam (au boulot) a présenté l'énoncé suivant :
Bonjour,

SELECT
DEC,CCG,NJL,NPOL,PIECE,MTTOT,LET,DLET,TOPPCLI,DTOPPCLI,PCIE,DPAIEM,NOQUIT,EC
CLEUNIK,CIE,LIB,DEBUTECHE,FINECHE,NSINIST,CODE_PORTEF FROM ECRITURE
WHERE ECRITURE.DEC >= '20040401' And ECRITURE.DEC <= '20040405'
ORDER BY ECRITURE.DEC



Rassurant sur l'utilisation de HF ton truc !!!

Juste à vérifier : ton format date ne stockerait pas des heures sec; ce
qui fait que l'on omet les jours des bornes inf et sup ?
Baise couillon classique en oracle par ex ou il vaut mieux utiliser les
to_date ou to_char avant de faire les tests.

Sinon, Moi, je serai toi je ferais bien l'effort de porter cette table
sur du mysql, juste pour en avoir le coeur net.




Merci d'avance.



--
Eric Roumegou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Sam \(au boulot\)
Non, c'est un format date tout simple. Et la requête elle-même n'est pas en
cause, puisqu'en l'exécutant "manuellement" avec WDSQL j'ai un comportement
sain.

Quand à MySQL.. sniff sniff... ne retourne pas le couteau dans la plaie.
Mais là c'est trop gros comme projet pour migrer à court terme :o(

"Roumegou" a écrit dans le message de
news:
Sam (au boulot) a présenté l'énoncé suivant :
> Bonjour,
>
> SELECT
>


DEC,CCG,NJL,NPOL,PIECE,MTTOT,LET,DLET,TOPPCLI,DTOPPCLI,PCIE,DPAIEM,NOQUIT,EC
> CLEUNIK,CIE,LIB,DEBUTECHE,FINECHE,NSINIST,CODE_PORTEF FROM ECRITURE
> WHERE ECRITURE.DEC >= '20040401' And ECRITURE.DEC <= '20040405'
> ORDER BY ECRITURE.DEC

Rassurant sur l'utilisation de HF ton truc !!!

Juste à vérifier : ton format date ne stockerait pas des heures sec; ce
qui fait que l'on omet les jours des bornes inf et sup ?
Baise couillon classique en oracle par ex ou il vaut mieux utiliser les
to_date ou to_char avant de faire les tests.

Sinon, Moi, je serai toi je ferais bien l'effort de porter cette table
sur du mysql, juste pour en avoir le coeur net.

>
>
>
> Merci d'avance.

--
Eric Roumegou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)



Avatar
Roumegou
Sam (au boulot) a exposé le 12/05/2004 :
Non, c'est un format date tout simple. Et la requête elle-même n'est pas en
cause, puisqu'en l'exécutant "manuellement" avec WDSQL j'ai un comportement
sain.

Quand à MySQL.. sniff sniff... ne retourne pas le couteau dans la plaie.
Mais là c'est trop gros comme projet pour migrer à court terme :o(



Je parlais juste de la table pas du projet. Il me semble important que
vous isoliez le pb sur HF et non sur votre code.
D'autant que tu pourrais tester la requete avec un frontal SQL.

Comme ton protocole de test me semble assez poussé; donc si cela se
conduit comme cela, c'est un dysfonctionnement avéré et surtout très
grave.
et ça sent le "il faut migrer en 8" si tu t'adresses au ST.

Il faudrait que qq'un te teste cela en 8 avec la table (sorry le
fichier HF) en question, mais là je ne peux pas t'aider.



"Roumegou" a écrit dans le message de
news:
Sam (au boulot) a présenté l'énoncé suivant :
Bonjour,

SELECT
DEC,CCG,NJL,NPOL,PIECE,MTTOT,LET,DLET,TOPPCLI,DTOPPCLI,PCIE,DPAIEM,NOQUIT,EC
CLEUNIK,CIE,LIB,DEBUTECHE,FINECHE,NSINIST,CODE_PORTEF FROM ECRITURE
WHERE ECRITURE.DEC >= '20040401' And ECRITURE.DEC <= '20040405'
ORDER BY ECRITURE.DEC



Rassurant sur l'utilisation de HF ton truc !!!

Juste à vérifier : ton format date ne stockerait pas des heures sec; ce
qui fait que l'on omet les jours des bornes inf et sup ?
Baise couillon classique en oracle par ex ou il vaut mieux utiliser les
to_date ou to_char avant de faire les tests.

Sinon, Moi, je serai toi je ferais bien l'effort de porter cette table
sur du mysql, juste pour en avoir le coeur net.




Merci d'avance.



--
Eric Roumegou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)





--
Eric Roumegou
http://cerbermail.com/?TSoulBerPA
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Sam \(au boulot\)
Je ne sais pas si c'est assez poussé comme tests, en tout cas je préfère
suspecter les programmes "maisons" en priorités, alors on cherche au maximum
avec de trouver une excuse du style "c'est la faute à l'outils de dev" :o)

Mais là je doute... quand à passer à WD8... j'ai déjà payé assez cher ma
beta-version 7.5 !

Vu le côté tordu du pb et donc de mon post, je n'espéres pas trop une
solution "miracle", mais bon.... qui ne tente rien n'a rien :o)

Merci.µ


"Roumegou" a écrit dans le message de
news:
Sam (au boulot) a exposé le 12/05/2004 :
> Non, c'est un format date tout simple. Et la requête elle-même n'est pas


en
> cause, puisqu'en l'exécutant "manuellement" avec WDSQL j'ai un


comportement
> sain.
>
> Quand à MySQL.. sniff sniff... ne retourne pas le couteau dans la plaie.
> Mais là c'est trop gros comme projet pour migrer à court terme :o(

Je parlais juste de la table pas du projet. Il me semble important que
vous isoliez le pb sur HF et non sur votre code.
D'autant que tu pourrais tester la requete avec un frontal SQL.

Comme ton protocole de test me semble assez poussé; donc si cela se
conduit comme cela, c'est un dysfonctionnement avéré et surtout très
grave.
et ça sent le "il faut migrer en 8" si tu t'adresses au ST.

Il faudrait que qq'un te teste cela en 8 avec la table (sorry le
fichier HF) en question, mais là je ne peux pas t'aider.


Avatar
Sam \(au boulot\)
Présisions...

Le bout de code trivial mais fou fait partie d'un gros projets composés de
plusieurs projets au sens windev (et plusieurs exe). Le tout a été migré de
55 vers 75.

En 55 on a pas le pb, avec globalement le même code (aux modifs de
migrations près).
L'analyse a été migrée de 55, ainsi que les différentes "bases" utilisées.

Au cas où ça sert.
Avatar
Jean Marc
Bonjour SAM,

Indépendamment de votre problème ponctuel, je ne comprends pas votre logique.
Apparamment vous avez un gros projet en Windev 7.5, et vous restez collé à cette
7,5 au lieu de passer en 8, qui a apporté des évolutions sensibles en terme de
fonctionnalités et de performance.
Dans le cadre d'un gros projet, le profiler est vraiment fondamental, et l'outil
qui vérifie les clés des requêtes devient vite indispensable.
Nos utilisateurs ont apprécié également les évolution de la prévisu des états,
et demandent maintenant des séparateurs dans toutes les fenêtres !
On a tous vécu l'épisode douloureux de la 7.0, mais bon, ce n'est pas parce
qu'on a vécu Windows 98 ou Me qu'il ne faut pas passer en XP aujourd'hui.

Je pense que votre 'entêtement' à vouloir rester en 7.5 vous est préjudiciable,
bien au dela des quelques centaines d'euros d'une mise à jour. Vous perdez cet
argent à mon avis chaque jour ou chaque semaine.
La stratégie d'une entreprise ou d'un projet ne devrait pas se baser sur un
ressentiment d'une époque qui, il faut le reconnaitre, est en plus maintenant
révolue.

Voila, je voulai simplement livrer mon avis, vu de l'extérieur.
Bien entendu vous êtes 100% maitre de vos décisions, mais vu de l'extérieur,
j'ai du regret pour vos utilisateurs, et pour vous qui restez dans cet
environnement de la précédente génération.

Bien cordialement,
Jean Marc



--
Utilisez notre serveur de news 'news.foorum.com' depuis n'importe ou.
Plus d'info sur : http://nnrpinfo.go.foorum.fr/
Avatar
Romain PETIT
Jean Marc a exposé le 12/05/2004 :

Je pense que votre 'entêtement' à vouloir rester en 7.5 vous est
préjudiciable, bien au dela des quelques centaines d'euros d'une mise à
jour. Vous perdez cet argent à mon avis chaque jour ou chaque semaine.



Pfff, qu'est-ce qui faut pas entendre...
En parlant d'argent, ils te payent combien pour racoler ?

--
Romain PETIT
http://cerbermail.com/?IJmancZl88
(cliquez sur le lien ci-dessus pour me contacter en privé)
Avatar
Dev
Bonjour,
rester en wd75 est justement une excellente solution si on utilise sql !!!
Depuis le début de wd8, windev ne retourne pas toujours le réèl contenu des
tables sous access 2000 par exemple, sous sqlserver en autres. Ca n'a pas
l'air d'être une priorité car ni dans la 314? qui n'a jamais passé le 2°
niveau de validation ni dans la 314m, le problème est résolu. Des problèmes
de mémoire sont apparus ainsi que des problèmes sur les objets sources de
données, j'en passse et des pires.

--
Cordialement
Christophe Charron

Service Développement
PROLOGIQ
7 bis Rue des Aulnes
69410 Champagne au Mont d'Or

Tel : 0 437 499 107
Fax : 0 437 499 105
mailto:

"Jean Marc" a écrit dans le message de
news:

Bonjour SAM,

Indépendamment de votre problème ponctuel, je ne comprends pas votre


logique.
Apparamment vous avez un gros projet en Windev 7.5, et vous restez collé à


cette
7,5 au lieu de passer en 8, qui a apporté des évolutions sensibles en


terme de
fonctionnalités et de performance.
Dans le cadre d'un gros projet, le profiler est vraiment fondamental, et


l'outil
qui vérifie les clés des requêtes devient vite indispensable.
Nos utilisateurs ont apprécié également les évolution de la prévisu des


états,
et demandent maintenant des séparateurs dans toutes les fenêtres !
On a tous vécu l'épisode douloureux de la 7.0, mais bon, ce n'est pas


parce
qu'on a vécu Windows 98 ou Me qu'il ne faut pas passer en XP aujourd'hui.

Je pense que votre 'entêtement' à vouloir rester en 7.5 vous est


préjudiciable,
bien au dela des quelques centaines d'euros d'une mise à jour. Vous perdez


cet
argent à mon avis chaque jour ou chaque semaine.
La stratégie d'une entreprise ou d'un projet ne devrait pas se baser sur


un
ressentiment d'une époque qui, il faut le reconnaitre, est en plus


maintenant
révolue.

Voila, je voulai simplement livrer mon avis, vu de l'extérieur.
Bien entendu vous êtes 100% maitre de vos décisions, mais vu de


l'extérieur,
j'ai du regret pour vos utilisateurs, et pour vous qui restez dans cet
environnement de la précédente génération.

Bien cordialement,
Jean Marc



--
Utilisez notre serveur de news 'news.foorum.com' depuis n'importe ou.
Plus d'info sur : http://nnrpinfo.go.foorum.fr/


Avatar
jacques trepp
Romain PETIT wrote:
Jean Marc a exposé le 12/05/2004 :

Je pense que votre 'entêtement' à vouloir rester en 7.5 vous est
préjudiciable, bien au dela des quelques centaines d'euros d'une
mise à jour. Vous perdez cet argent à mon avis chaque jour ou
chaque semaine.



Pfff, qu'est-ce qui faut pas entendre...
En parlant d'argent, ils te payent combien pour racoler ?



salut,
je crois qu'il bosse carrément pour Pcsoft. Il a pas du faire son chiffre,
ce mois-ci.

--
Jacques TREPP
AlbyGest


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.683 / Virus Database: 445 - Release Date: 12/05/2004
Avatar
Sam \(au boulot\)
Le profiler... celui qui sait ce qu'est un index n'en a pas besoin. Ca peut
être un plus produit, car tout le monde peut faire un oublis à ce sujet,
mais un informaticien qui a besoin de ça régulièrement devrait changer de
métier.

Quand au reste, je ne vais pas m'étendre. Je dirais simplement que pour les
nouveaux projets on a fait d'autres choix... quelquefois libres, quelquefois
propriétaires... et personne ne regrette. J'avais préparé une autre réponse
plus détaillée, mais je ne souhaite pas poster un n-ème message contenant
les reproches fait à l'outils, et son rapport fiabilité/prix.

Bref, j'ai une 75 que j'ai payé, et elle ne fonctionne pas, et personne n'a
une solution (merci pour ceux qui ont essayé).




"Jean Marc" a écrit dans le message de
news:

Bonjour SAM,

Indépendamment de votre problème ponctuel, je ne comprends pas votre


logique.
Apparamment vous avez un gros projet en Windev 7.5, et vous restez collé à


cette
7,5 au lieu de passer en 8, qui a apporté des évolutions sensibles en


terme de
fonctionnalités et de performance.
Dans le cadre d'un gros projet, le profiler est vraiment fondamental, et


l'outil
qui vérifie les clés des requêtes devient vite indispensable.
Nos utilisateurs ont apprécié également les évolution de la prévisu des


états,
et demandent maintenant des séparateurs dans toutes les fenêtres !
On a tous vécu l'épisode douloureux de la 7.0, mais bon, ce n'est pas


parce
qu'on a vécu Windows 98 ou Me qu'il ne faut pas passer en XP aujourd'hui.

Je pense que votre 'entêtement' à vouloir rester en 7.5 vous est


préjudiciable,
bien au dela des quelques centaines d'euros d'une mise à jour. Vous perdez


cet
argent à mon avis chaque jour ou chaque semaine.
La stratégie d'une entreprise ou d'un projet ne devrait pas se baser sur


un
ressentiment d'une époque qui, il faut le reconnaitre, est en plus


maintenant
révolue.

Voila, je voulai simplement livrer mon avis, vu de l'extérieur.
Bien entendu vous êtes 100% maitre de vos décisions, mais vu de


l'extérieur,
j'ai du regret pour vos utilisateurs, et pour vous qui restez dans cet
environnement de la précédente génération.

Bien cordialement,
Jean Marc



--
Utilisez notre serveur de news 'news.foorum.com' depuis n'importe ou.
Plus d'info sur : http://nnrpinfo.go.foorum.fr/


1 2 3