Bonjour
Je débute sous 4D. J'aimerais créer une fonction sous 4d qui me renverais un paramètre (l'équivalent de function en Vb ou en PHP)
Est ce que c'est possible et si oui comment la déclarer.
Par avance merci
Bonjour
Je débute sous 4D. J'aimerais créer une fonction sous 4d qui me renverais un paramètre (l'équivalent de function en Vb ou en PHP)
Est ce que c'est possible et si oui comment la déclarer.
Par avance merci
salut,
la notion de fonction existe bien dans 4D.
Tu as une procédure à qui tu envois des paramètres ($1, $2, ....).
tu réalises ton traitement de tres paramètres
tu renvois ton eésultat dans la variable $0
c'est tout
regarde l'aide de 4D, elle est bien faite sur le sujet ou alors tu as de la littérature aussi avec les Guide 4D
Patrick
Merci mais quel mot clé je dois cherche dans l'aide ? la recherche du mot "fonction" ou "procédure" ne donne rien comme résultat.
Je supose que dans mon code je dois mettre un truc du genre :
$0:=mafonction($param1,$param2)
....
...
fonction mafontction ()
...
...
...
fin de ma focntion
C'est dans ce style là je pense mais vous pouvez pas me donner un exemple, le seul truc y ressemblant serait SOAP mais il faut (si j'ai bine compris) le pack web que je n'ai pas...
Salut,
topn appelle de ta fonction devra ressembler à :
$MonRésultat:=mafonction($param1;$param2$...)
ta fonction, tu auras
...
le traitement dans lequel tu auras une variable RésultatDeMaFonction
....
$0:=$RésultatDeMaFonction
merci de votre intérêt mais y'a un point que j'ai du mal a comprendre :
Quand je suis dans l'explorateur au niveau des méthodes et que je clique sur le + je peux juste définir le nom de la méthode mais pas les paramètre ni d'entrée ni de sortie. Est ce donc par cette manipulation que l'on crée une fonction ? j'avoue que je rame un peu là.
La variable $0 ne semble pas être une variable système, comment 4D sait que c'est ma variable de sortie ?
Par avance merci
Oui. Dans l'explorateur, tu crées une méthode projet (positionne-toi dans les méthodes projets et clique sur "+"), tu la nommes, tu valides.
Ensuite tu l'édites et tu tapes ton code, y compris les définitions des paramètres entrées, sorties.
$0, $1, $2, etc... sont des variables locales automatiquement affectées par 4D lors de passage de paramètres.
Voir doc :
Méthodes projet
Voir le code dans cet article par exemple :
Compter le nombre d'occurences dans un texte
Tu crées une méthode (nommée "test" par ex) dans laquelle tu appelles la méthode qui va retourner le résultat :
Puis tu crées ta méthode nommée "str_gLon_Nbr_Occurences" :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ` méthode de test d'appel de str_gLon_Nbr_Occurences C_ENTIER LONG($nbOccur) $nbOccur:=str_gLon_Nbr_Occurences("un champ texte, un champ alpha et un champ entier long";"un")
$nbOccur dans ta méthode appelante aura la valeur de retour de $0 de la méthode appelée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 ` ---------------------------------------------------- ` Méthode : str_gLon_Nbr_Occurences ` Créée le 22/12/05 par Vincent de Lachaux ` ---------------------------------------------------- ` Description ` Retourne le nombre d'occurences de $2 dans $1 ` ---------------------------------------------------- C_TEXTE($1) `Chaine dans laquelle chercher C_TEXTE($2) `Chaine à trouver C_ENTIER LONG($0) `Nombre d'occurences $0:=(Longueur($1)-Longueur(Remplacer chaine($1;$2;"")))/Longueur($2)
--Steph4D
Impeccable ca répond bien a ma question !
Merci à tous
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager