4D v16.3

ST FIXER TEXTE BRUT

Accueil

 
4D v16.3
ST FIXER TEXTE BRUT

ST FIXER TEXTE BRUT 


 

ST FIXER TEXTE BRUT ( {* ;} objet ; nouvTexte {; débutSél {; finSél}} ) 
Paramètre Type   Description
Opérateur in Si spécifié, objet est un nom d'objet (chaîne) Si omis, objet est une variable ou un champ
objet  Objet de formulaire in Nom d'objet (si * est spécifié) ou Variable ou champ (si * est omis)
nouvTexte  Texte in Texte brut à insérer
débutSél  Entier long in Début de la sélection
finSél  Entier long in Fin de la sélection

La commande ST FIXER TEXTE BRUT insère le texte passé dans le paramètre nouvTexte dans le champ ou la variable de texte multistyle désigné(e) par le paramètre objet. Cette commande s’applique uniquement au texte brut du paramètre objet, sans modifier les éventuelles balises de style qu’il contient.

A la différence de la commande ST FIXER TEXTE, ST FIXER TEXTE BRUT permet d’insérer uniquement du texte sans style. Le texte nouvTexte ne doit pas contenir de balises de style. S’il contient les caractères <, > ou &, ils seront considérés comme des caractères standard et seront convertis en entités HTML :

  • '&' est converti en &amp;
  • '<' est converti en &lt;
  • '>' est converti en &gt;
 

Si vous passez le paramètre optionnel *, vous indiquez que le paramètre objet est un nom d’objet (une chaîne). A l'exécution, si l'objet a le focus, la commande s'applique uniquement à l'objet en cours d'édition et non à sa source de données (variable ou champ). Les modifications ne sont reportées dans la source (et donc dans les éventuels autres objets utilisant la même source) que lorsque l'objet en cours d'édition est validé via une perte de focus ou la touche Entrée. Si l'objet n'a pas le focus, la commande s'applique directement à la source de données et les modifications sont immédiatement répercutées aux éventuels autres objets utilisant la même source.
Si vous omettez le paramètre *, vous indiquez que le paramètre objet est un champ ou une variable. Dans ce cas, vous ne passez pas une chaîne mais une référence de champ ou de variable. La commande s'applique directement au champ ou à la variable et les modifications sont répercutées à tous les objets utilisant cette source, y compris l'objet ayant le focus.

 

Passez dans nouvTexte le texte brut à insérer. 

Les paramètres optionnels débutSél et finSél vous permettent de désigner une sélection de texte dans objet. Les valeurs débutSél et finSél expriment une sélection de texte brut, sans tenir compte des balises de style éventuellement présentes dans le texte. L’action de la commande diffère en fonction des paramètres facultatifs débutSél et finSél :

4D propose des constantes prédéfinies afin de désigner automatiquement des bornes de sélection dans les paramètres débutSél et finSél. Ces constantes sont placées dans le thème "Texte multistyle" : 

Constante Type Valeur Comment
ST Début sélection Entier long -1000 Désigne le premier caractère de la sélection courante de texte dans l’objet (*)
ST Début texte Entier long 1 Désigne le premier caractère du texte contenu dans l’objet
ST Fin sélection Entier long -1001 Désigne le dernier caractère de la sélection courante de texte dans l’objet (*)
ST Fin texte Entier long 0 Désigne le dernier caractère du texte contenu dans l’objet

(*) Vous devez passer un nom d’objet dans objet pour pouvoir utiliser cette constante. Si vous passez une référence de variable ou de champ, la commande s’appliquera à l’ensemble du texte de l’objet.

Le style du premier caractère remplacé sera utilisé pour la totalité du texte nouvTexte.

Si débutSél est supérieur à finSél, le texte n'est pas modifié et la variable OK prend la valeur 0 (hormis lorsque finSél vaut 0, cf. ci-dessus).

Exemple  

Soit la variable texte multistyle suivante :

Vous voulez insérer des noms de sociétés stockés dans un champ texte. Ces noms peuvent comporter par exemple le caractère "&". Dans ce cas, il est nécessaire d'utiliser la commande ST FIXER TEXTE BRUT :

 ST FIXER TEXTE BRUT(monTexteStyl;[Société]Nom;33;34)

Le résultat est alors :

Voici le texte brut contenu dans la variable :

Vous pouvez constater que le texte inséré a été encapsulé au sein d'une paire de balises de style supplémentaires. Ces balises correspondent au style du caractère précédent l'insertion. Ce mécanisme permet de garantir un affichage correct des champs multistyles dans tous les cas de figure.

Note : Si vous aviez utilisé la commande ST FIXER TEXTE dans ce cas, 4D n'aurait rien inséré, car la présence du caractère "&" non encodé empêcherait l'interprétation des balises de style présentes dans la variable. Pour plus d'informations, reportez-vous à la description de cette commande.

A l’issue de l’exécution de cette commande, la variable OK prend la valeur 1 si aucune erreur n’a été rencontrée et 0 dans le cas contraire. C’est le cas notamment lorsque l’évaluation des balises de style échoue (balise incorrecte ou manquante). 

A noter qu’en cas d’erreur, la variable n’est pas modifiée. Lorsqu’une erreur se produit sur une variable lors de l’évaluation du texte, 4D transforme le texte en texte brut ; par conséquent, les caractères <, > et & seront convertis en entités HTML.



Voir aussi  

ST FIXER TEXTE
ST Lire texte brut

 
PROPRIÉTÉS 

Produit : 4D
Thème : Texte multistyle
Numéro : 1136
Nom intl. : ST SET PLAIN TEXT

Cette commande modifie la variable système OK

 
HISTORIQUE 

Créé : 4D v12.1
Renommé : 4D v14

 
MOTS-CLÉS 

multi-style, multi style, multistyle

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)