OVH Cloud OVH Cloud

Importer du code W-Langage ?

5 réponses
Avatar
Steph
Bonsoir,

Est-il possible d'importer du code W-Langage issu d'un fichier externe dans
une classe WinDev ?

Je m'explique, un bon nombre de langages (php, delphi, java...) utilisent
des sources facilement éditables via un éditeur de texte basique. Par
conséquent, si on respecte la syntaxe du langage, il est possible de
produire directement ce source, mais comment faire avec WinDev ?

D'avance merci.
Steph

5 réponses

Avatar
el
avec un copier coller :-(

Désolé mais c'est pour moi le seul moyen ...

Manu

"Steph" <steph> a écrit dans le message news:
3faa8c79$0$2796$
Bonsoir,

Est-il possible d'importer du code W-Langage issu d'un fichier externe


dans
une classe WinDev ?

Je m'explique, un bon nombre de langages (php, delphi, java...) utilisent
des sources facilement éditables via un éditeur de texte basique. Par
conséquent, si on respecte la syntaxe du langage, il est possible de
produire directement ce source, mais comment faire avec WinDev ?

D'avance merci.
Steph





Avatar
Marcel.berman
Salut !

On 6-Nov-2003, "Steph" <steph> wrote:

Bonsoir,

Est-il possible d'importer du code W-Langage issu d'un fichier externe
dans
une classe WinDev ?

Je m'explique, un bon nombre de langages (php, delphi, java...) utilisent
des sources facilement éditables via un éditeur de texte basique. Par
conséquent, si on respecte la syntaxe du langage, il est possible de
produire directement ce source, mais comment faire avec WinDev ?

D'avance merci.
Steph



Regardes du coté de :
- Externe nomfichier.wsl
et de
- compile() - Compilation dynamique -
Cela devrait répondre à ta question ...
Ceci étant dit, ceci me semble quand même un peu curieux ...
L'incorporation de code externe (et donc non sécurisé) dans des classes me
semble aller à l'encontre de la philosophie POO ...
Peux-tu me dire pourquoi tu veux utiliser ce genre de technique ?
Merci !

Bien à toi !

--
Marcel Berman
c/o Managing Business SPRL
Allée du Petit Paris, 11
B - 1410 - Waterloo
Tel : +32 2 351.60.64
Fax : +32 2 351.45.78
Gsm : +32 475.799.477
Avatar
Didier Girod
Bonjour,

Utilise "Externe" , je pense que celà devrait répondre à ton attente

Ci dessous extrait de l'aide de windev:
EXTERNE <Nom du fichier>



Détail du paramètre



<Nom du fichier> : Chaîne de caractères

Nom du fichier texte contenant du code W-Langage à intégrer dans une
application. Ce fichier est un fichier texte classique, créé sous n'importe
quel éditeur de texte.

Il est possible de spécifier un chemin complet (par exemple:
"C:WDProjetMesConst.wl"). Si le chemin n'est pas spécifié, le fichier est
recherché successivement :

dans le répertoire du projet.

dans le répertoire "PersonnelExterne" de WinDev 7.5.

Didier
Avatar
Steph
a écrit dans le message de
news:boeea0$1dopon$
Salut !


Regardes du coté de :
- Externe nomfichier.wsl
et de
- compile() - Compilation dynamique -
Cela devrait répondre à ta question ...
Ceci étant dit, ceci me semble quand même un peu curieux ...
L'incorporation de code externe (et donc non sécurisé) dans des classes me
semble aller à l'encontre de la philosophie POO ...
Peux-tu me dire pourquoi tu veux utiliser ce genre de technique ?
Merci !



En fait ce n'est pas utiliser du code externe que je souhaite, mais bel et
bien intégrer ce code dans WinDev, pour par suite enrichir ces classes. Je
souhaite simplement déclarer basiquement mes objets (attributs, fonctions
get, procédures set...).

Pour finir, je posais la question à tout hasard, mais sans vraiment croire à
une vrai ouverture de WinDev :(

Quoiqu'il en soit, merci à tous pour votre contribution.
Steph
Avatar
R&B
Bonjour,

Voila voila


// compilation dynamique des procédures et fonction contenues dans un
fichier texte
PROCEDURE Compile_Fic(pcNomFichier)
cligne,ccode,cnomproc,cres sont des chaînes
eProc,eFonc,eNom sont des entiers

SI fRep(pcNomFichier,frFichier)="" ALORS RENVOYER Vrai
eid est un entier = fOuvre(pcNomFichier,foLecture)
SI eid=-1 ALORS
Erreur("Erreur de lecture du fichier des procedures dynamiques")
RENVOYER Faux
FIN

cligne=fLitLigne(eid)
TANTQUE cligne<>EOT
SI Milieu(cligne,1,2)<>"//" ALORS
eProc=0
eFonc=0
eProc=Position(Majuscule(cligne),"PROCEDURE")

eFonc=Max(Position(Majuscule(cligne),"FONCTION"),Position(Majuscule(cligne),"FUNCTION"))
SI eProc>0 OU eFonc>0 ALORS
// on change de procedure
// compile le code précédent
SI ccode<>"" ET cnomproc<>"" ALORS
//info(cnomproc,ccode)
cres=Compile(cnomproc,ccode)
SI cres<>"" ALORS
Erreur("Erreur dans les procédures dynamiques.",ErreurInfo())
RENVOYER Faux
FIN
ccode=""
cnomproc=""
FIN
// initilise la nouvelle proc
SI eProc ALORS

cnomproc=SansEspace(Milieu(cligne,eProc+Taille("PROCEDURE"),(Position(cligne,"(")-(eProc+Taille("PROCEDURE")))))
SINON

cnomproc=SansEspace(Milieu(cligne,eFonc+Taille("FONCTION"),(Position(cligne,"(")-(eFonc+Taille("FONCTION")))))
FIN
FIN
ccode+=cligne+RC
FIN
cligne=fLitLigne(eid)
FIN
fFerme(eid)
// compile le code de la derniere proc
SI ccode<>"" ET cnomproc<>"" ALORS
//info(cnomproc,ccode)
cres = Compile(cnomproc,ccode)
SI cres<>"" ALORS
Erreur("Erreur dans les procédures dynamiques.",ErreurInfo())
RENVOYER Faux
FIN
ccode=""
cnomproc=""
FIN

RENVOYER Vrai


@+ R&B, animateur de rbesset.net, portail windev.


Steph wrote:

Bonsoir,

Est-il possible d'importer du code W-Langage issu d'un fichier externe dans
une classe WinDev ?

Je m'explique, un bon nombre de langages (php, delphi, java...) utilisent
des sources facilement éditables via un éditeur de texte basique. Par
conséquent, si on respecte la syntaxe du langage, il est possible de
produire directement ce source, mais comment faire avec WinDev ?

D'avance merci.
Steph