FORUMS PROFESSIONNELS
WINDEV
,
WEBDEV
et
WINDEV Mobile
Accueil
|
Messages récents
|
Connexion
|
Déconnexion
|
Français
Accueil
→
WINDEV (précédentes versions)
→
Récursivite - variable de type requete SQL
Récursivite - variable de type requete SQL
Débuté par Dirk, 08 juil. 2022 14:12 - 6 réponses
Connectez-vous…
Dirk
#1
Posté le 08 juillet 2022 - 14:12
Bonjour,
Quelqu'un a t-il déja essayé la récursivite avec les variables de type REQUETE SQL ?
Il semble y avoir un souci : faut-il repasser en source de données avec donneidentifiant afin d'obtenir un nom unique en mémoire ?
Merci d'avance
Signaler
0
0
bchanudet
#2
Membre enregistré
395 messages
Popularité : +13 (13 votes)
Posté le 08 juillet 2022 - 18:13
Bonjour,
Allez voir dans la description de votre projet, dans l'onglet Compilation. Il y a de grandes chances que l'option "Nommage des sources de données" soit sur "Nom de la variable".
Vous pouvez la passer sur "Nom automatique", ou "Nom automatique avec références" (s'en référer à la doc pour la différence entre les deux), cela devrait rentre votre variable Requête SQL "locale" à l'occurrence en cours d'exécution dans votre récursivité.
Attention cependant, suivant le projet, ce changement n'est pas à prendre à la légère : le fait que les sources de données soient "globales" (sauf à se faire attribuer une valeur spécifique comme avec DonneIdentifiant) peut avoir été utilisé "bénéfiquement" pour passer des valeurs d'une partie à une autre du projet.
Signaler
0
0
Dirk CORNIL
#3
Membre enregistré
17 messages
Posté le 08 juillet 2022 - 18:59
Bonjour,
Merci pour la réponse, mais il se trouve déjà en nom automatique avec référence et les variables de type requete SQL ne fonctionnent pas comme elles devraient dans les procédures récursives
--
Dirk
Signaler
0
0
Voroltinquo
#4
Membre enregistré
3 889 messages
Popularité : +227 (347 votes)
Posté le 12 juillet 2022 - 20:03
Bonjour,
Les requêtes récursives ne sont apparues qu'avec SQL 1999 (SQL3, ISO/CEI 9075-(1 à 10):1999).
Windev travaille avec SQL 92 (SQL 2, ISO/CEI 9075:1992).
Il faut ruser en créant une fonction récursive qui appelle ta requête
--
Il y a peut être plus simple, mais, ça tourne
Signaler
0
0
Dirk CORNIL
#5
Membre enregistré
17 messages
Posté le 15 juillet 2022 - 12:45
Bonjour,
Que ce soit avec des variables de type requete SQL ou source de données, la récursivité en Windev est trrès limitée ... et ne fonctionne qu'au premier niveau
--
Dirk
Signaler
0
0
Dirk CORNIL
#6
Membre enregistré
17 messages
Posté le 15 juillet 2022 - 13:15
Bonjour,
Autre chose, en Windev 22 , ce code fonctionne
--
sdReq est une Source de Données = "sdReqClient"+DonneGUID(guidBrut)
---
En Windev 25 il renvoye une erreur du type une chaine Ansi ne peut être convertie en source de données .... La récursivité ne serait-elle plus premise en Windev ?
--
Dirk
Signaler
0
0
Voroltinquo
#7
Membre enregistré
3 889 messages
Popularité : +227 (347 votes)
Posté le 17 juillet 2022 - 20:35
Cela n'a rien à voir avec la récursivité, le problème serait le même si tu écrivais ;
sd
Req
=
"Toto"
+
DonneGUID
(
guidBrut
)
Tu veux en fait nommer la requête comme bon te semble au lieu de
_SOURCE_sdReq_XXX
Une solution pour cela est d'utiliser une chaîne de caractère dans ton HExécuteRequêteSQL cf doc
e.g.
...
..
s
NomRequête
est chaîne
s
NomRequête
=
"ReqClient"
+
DonneGUID
(
guidBrut
)
HExécuteRequêteSQL
(
s
NomRequête
,
...
......
--
Il y a peut être plus simple, mais, ça tourne
Signaler
0
0
→ Revenir à WINDEV (précédentes versions)
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (précédentes versions)
WEBDEV (précédentes versions)
WINDEV Mobile (précédentes versions)
Etats & Requêtes
Hors-sujet
Outils
Français
English
Español
Portuguesa
Fermer cette fenêtre
Type de recherche
Uniquement les sujets
Tous les messages
Période de recherche
Date indifférente
Moins d'une heure
Moins de 24 heures
Moins d'une semaine
Moins d'un mois
Moins d'un an
Annuler
Aperçu de votre message
Ajouter une image
Importer une image depuis une URL
Envoyer une image depuis un fichier de votre disque
Déposez ici un fichier ou cliquez sur "Parcourir..."
ou
Annuler
0%
WLangage
SQL
XML, HTML
JAVA, Javascript
Texte