Aller au contenu principal
Version: Next

ST Get plain text

ST Get plain text ( {* ;} objet {; modeRéf} ) : Text

ParamètreTypeDescription
*OpérateurSi spécifié, objet est un nom d'objet (chaîne)
Si omis, objet est une variable ou un champ
objetanyNom d'objet (si * est spécifié) ou
Variable ou champ (si * est omis)
modeRéfIntegerMode de prise en charge des références présentes dans le texte
RésultatTextTexte sans balises

Cette commande n'est pas thread-safe, elle ne peut pas être utilisée dans du code préemptif.

Description

La commande ST Get plain text supprime toute balise de style du champ ou de la variable texte désigné(e) par les paramètres * et objet, et retourne le texte brut.

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 retourne les informations de l'objet en cours d'édition ; si l'objet n'a pas le focus, la commande retourne les informations de la source de données de l'objet (variable ou champ).
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. A l'exécution, la commande retourne les informations de la variable ou du champ.

Le paramètre optionnel modeRéf permet d’indiquer la manière dont les références présentes dans objet doivent être retournées. Passez dans modeRéf une des constantes suivantes, placées dans le thème "Texte multistyle" (vous pouvez passer une constante ou une combinaison de constantes) :

ConstanteTypeValeurComment
ST 4D Expressions as sourcesEntier long2La chaîne d’origine des références d’expressions 4D est retournée
ST 4D Expressions as valuesEntier long1Les références d’expressions 4D sont retournées sous leur forme évaluée (fonctionnement par défaut dans les formulaires)
ST References as spacesEntier long0Chaque référence est retournée sous forme d’un caractère espace insécable (fonctionnement par défaut, utilisé par les autres commandes)
ST Tags as plain textEntier long64Le libellé de la balise est retourné en texte brut. Par exemple pour la balise 'imagemon image', le texte brut est "mon image" (fonctionnement par défaut dans les formulaires)
ST Tags as XML codeEntier long128Le code XML de la balise est retourné en texte brut. Par exemple pour la balise 'imagemon image', le texte brut est 'imagemon image'
ST Text displayed with 4D Expression sourcesEntier long86Retourne le texte tel qu’il est visible dans les formulaires avec la chaîne d’origine des expressions 4D.
Correspond à la combinaison prédéfinie des constantes 2+4+16+64.
ST Text displayed with 4D Expression valuesEntier long85Retourne le texte tel qu’il est visible dans les formulaires avec les expressions 4D sous leur forme évaluée.
Correspond à la combinaison prédéfinie de constantes 1+4+16+64.
ST URL as labelsEntier long4Le libellé visible des URLs est retourné, par exemple "Visitez notre site Web" (fonctionnement par défaut dans les formulaires)
ST URL as linksEntier long8Le lien est retourné, par exemple "http://www.4d.com"
ST User links as labelsEntier long16Le libellé visible du lien utilisateur est retourné (fonctionnement par défaut dans les formulaires)
ST User links as linksEntier long32Le contenu du lien utilisateur est retourné

Notes :

  • Le paramètre optionnel modeRéf n’est donc utile que si le texte contient des références, sinon le texte brut est identique quelle que soit la valeur du paramètre modeRéf.
  • Si un document 4D Write Pro contient des tableaux, le contenu de chaque cellule est traité en tant que paragraphe individuel et retourné sous forme de texte, séparé par des tabulations. Les lignes sont séparées par des retours chariot.

Exemple 1

Vous cherchez le texte "très beau" parmi les valeurs d’un champ texte multistyle. La valeur a été stockée sous la forme "Il fait très beau aujourd’hui".

 QUERY BY FORMULA([Commentaires];ST Get plain text([Commentaires]Meteo)="@très beau@")

Note : Dans ce contexte, l’instruction suivante ne donnera pas le résultat escompté car le texte est enregistré avec des balises de style :

 QUERY([Commentaires];[Commentaires]Meteo="@très beau@")

Exemple 2

Soit le texte suivant placé dans la zone multistyle "mazone" :

Il est actuellement   Aller sur le site de 4D ou Ouvrir une fenêtre

Ce texte est affiché :

Si vous exécutez le code suivant :

 $txt :=ST Get plain text(*;"mazone";ST References as spaces)
     //$txt = "Il est actuellement    ou " (espaces)
 $txt :=ST Get plain text(*;"mazone";ST 4D Expressions as values)
     //$txt = "Il est actuellement 18:29:55  ou  "
 $txt :=ST Get plain text(*;"mazone";ST 4D Expressions as sources)
     //$txt = "Il est actuellement Heure courante  ou  "
 $txt :=ST Get plain text(*;"mazone";ST URL as links)
     //$txt = "Il est actuellement  http://www.4d.com ou  "
 $txt :=ST Get plain text(*;"mazone";ST Text displayed with 4D Expression values)
     //$txt = "Il est actuellement 17:54:30 Aller sur le site de 4D ou Ouvrir une fenêtre"
 $txt :=ST Get plain text(*;"mazone";ST Text displayed with 4D Expression sources)
     //$txt = "Il est actuellement Heure courante Aller sur le site de 4D ou Ouvrir une fenêtre"
 $txt :=ST Get plain text(*;"mazone";ST User links as labels)
     //$txt = "Il est actuellement    ou Ouvrir une fenêtre"
 $txt :=ST Get plain text(*;"mazone";ST User links as links)
     //$txt = "Il est actuellement    ou openW"

Variables et ensembles système

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 Get text
ST SET PLAIN TEXT
ST SET TEXT
TEXT TO ARRAY