|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() |
Bonjour,
Je voudrais arriver à typer dynamiquement des champs issus d'un DBExtract contenu dans un XMLGram. La requete de mon instruction est initialisée au moyen d'une valeur de contexte {$pMaRequete} Le pb est que je ne connais pas les champs contenus dans la requete en conception et que je voydrais bien dire de me renvoyer une date, float (avec tranfo par le framework en fonction des cultures) N'y a-t-il pas moyen de faire un truc du style XMLInstruction.AddField ??? Merci.
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() |
Ne peux tu pas définir tous les champs potentiels qui peuvent être extraient ? ou bien c'est vraiment pas faisable ?
SInon je pense que tu peux utiliser dans la classe TDBextract le Fields en créant à la main un TDBField qui est associés au nom du champ: Code :
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
||
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() |
Helas non. Il y a une multitude de champs date et float, et en plus, le client peut tout à fait faire un renommage de colonne (ou meme faire un sum ou count, ...)
J'ai bien vu le DBField, mais puis-je l'utiliser dasn le gestionnaire d'évènement ??? (BeforeXMLinstruction par exemple ...)
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#4 | |
|
Membre éprouvé
![]() ![]() |
Citation:
Puis dans la foulée, pourquoi pas générer à la volée le xmlservice.xmlgram du service qui va exécuter la requête ? Car je n'ai pas l'impression qu'on puisse accéder à DBExtract.Fields depuis le gestionnaire d'évènements. Sylvain
__________________
.NET / ASP.NET MVC / Delphi / XMLRAD / XSL / Technos Web Mon Blog : http://blog.developpez.com/index.php?blog=89 Mes Articles : http://sjames.developpez.com/ Rubrique XMLRAD: http://xmlrad.developpez.com |
|
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() |
Le user définit une requete et indique le format des zones.
J'ai ces info dans le context au moment du BeforeXMLGRAM . Je ne vois pas comment faire ce que tu me dis ...??
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#6 | |
|
Membre éprouvé
![]() ![]() |
Citation:
Admettons qu'à la suite de la requête et des zones définies par le user, tu aies à disposition la liste des champs et leurs types. Il faudrait pouvoir instancier un DacQuery et typer les champs de la requêtes. Malheureusement le typage des champs n'est implémenté que pour le DBExtract et pas le DacQuery. Le fait que tu passes par le DacQuery me parait le plus propre en tout cas. Une WishList++ pour la 2006R2 ? Autre solution, avoir accès à l'objet DBExtract lorsque tu te trouves dans le BeforeInstruction par exemple, et encore on se retrouve encore dans un contexte multi utilisateur. Dans les deux cas, il faut modifier le framework, je ne vois pas d'autres soluce. Je préfère la première (DacQuery) que j'utilise d'ailleurs pour exécuter des requêtes construites dynamiquement, mais jusqu'à présent je n'ai pas eu besoin de typer les champs.
__________________
.NET / ASP.NET MVC / Delphi / XMLRAD / XSL / Technos Web Mon Blog : http://blog.developpez.com/index.php?blog=89 Mes Articles : http://sjames.developpez.com/ Rubrique XMLRAD: http://xmlrad.developpez.com |
|
|
|
00
|
|
|
#7 | |
|
Membre Expert
![]() |
Citation:
Code :
DBExtract := TDBExtract(XMLInstruction.GetObjectReference)
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
|
|
|
00
|
|
|
#8 | ||
|
Membre éprouvé
![]() ![]() |
Citation:
Citation:
__________________
.NET / ASP.NET MVC / Delphi / XMLRAD / XSL / Technos Web Mon Blog : http://blog.developpez.com/index.php?blog=89 Mes Articles : http://sjames.developpez.com/ Rubrique XMLRAD: http://xmlrad.developpez.com |
||
|
|
00
|
|
|
#9 | |
|
Membre régulier
![]() |
Citation:
Enorme merci !!!!!
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
|
00
|
|
|
#10 |
|
Membre régulier
![]() |
Allez, une petite dernière demande d'info...
Au fur et à mesure des besoins, je crée donc des DBField qui ne sont jamais supprimés (sauf iisreset) ?? N'est-ce pas ?? Un pb potentiel peut se poser dans le cas ou un même nom de champ désigne 2 types de valeurs différentes. Il faut alors supprimer le 1°objet et le recréer. Ok??
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
|
|
#11 | ||
|
Membre Expert
![]() |
Citation:
Citation:
__________________
RDM Tout Est Relatif Rubrique XMLRAD: http://xmlrad.developpez.com FAQ XMLRAD: http://xmlrad.developpez.com/faq/ |
||
|
|
00
|
|
|
#12 |
|
Membre régulier
![]() |
Merci pour tes infos
__________________
Renaud W2003 / XP /VISTA SQL SERVER / ORACLE ADO |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com