vaughan
Messages postés198Date d'inscriptionmardi 6 août 2002StatutMembreDernière intervention29 octobre 2008
-
23 août 2005 à 10:57
vaughan
Messages postés198Date d'inscriptionmardi 6 août 2002StatutMembreDernière intervention29 octobre 2008
-
25 août 2005 à 14:27
Bonjour,
Voici mon problème ...
Dans ma base de donnée j'ai une liste de traitement à éxecuter :
TRT1
TRT2
TRT3
...
TRTn
Dans Delphi je dois lancer ces traitements:
TRT1;
TRT2;
TRT3;
...
TRTn;
J'aimerais une fonction qui permette de lancer un Traitement chaine :
For Cpt := 1 To Nombre_TRT Do
Begin
ExecTRT('TRT'& IntToStr(Cpt));
End;
Pour l'instant j'en suis réduit à faire If 'TRT1' Then TRT1 ... si je rajoute une chaine dans ma base de donnée je suis obligé de changer le code source ... pourri ...
cs_grandvizir
Messages postés1106Date d'inscriptionsamedi 8 novembre 2003StatutMembreDernière intervention 3 septembre 200622 24 août 2005 à 09:32
En JS c'est possible, car le code est interprété et non compilé. Les noms de procédure sont gardés, mais en compilé, tout devient des adresses binaires (et y'a plus de noms).
Sachant que tu nous nous donnes pas de code Delphi, il serait étonnant que tes N procédures soient toutes différentes. Parce que comme le dit si justement yvemoreau, tu n'as qu'à juste faire une procédure avec un paramètre qui variera le fonction de la procédure.
Au final, il y a un soupçon d'absurdité dans l'air. En disant «Si je dois rajouter un traitement...» tu affirmes donc que ton nombre de procédures n'est pas défini, mais tu veux en même temps une procédure écrite en brut qui puisse gérer un nombre infini de situations. C'est complètement paradoxal. Tu viens de démontrer que ce que tu veux est impossible, ou tout simplement, que ce n'est pas clairement bien expliqué...
La solution donnée par yvemoreau est donc tout à fait adaptée.
vaughan
Messages postés198Date d'inscriptionmardi 6 août 2002StatutMembreDernière intervention29 octobre 2008 24 août 2005 à 10:07
Merci pour l'éclaircissement :
"En JS c'est possible, car le code est interprété et non compilé. Les noms de procédure sont gardés, mais en compilé, tout devient des adresses binaires (et y'a plus de noms)."
Ma problèmatique était pas trop mal expliqué car vous l'avez tout les deux comprise ... seulement c'est impossible en Delphi ... je déporte la gestion des traitements dans ma base de donnée dans une pile d'execution ...