|
|
|
|
|
- Déclaration d'une variable de type Champ
- Affectation d'une variable de type Champ
- Utilisation d'une variable de type Champ dans une procédure
- Optimisation des traitements avec indirection
- Propriétés associées à une variable de type Champ
- Fonctions manipulant une variable de type Champ
Champ (Type de variable) En anglais : Control
Le type Champ permet de définir toutes les caractéristiques d'un champ. Ce champ peut être un champ créé dynamiquement avec la fonction ChampCrée ou un champ existant dans une fenêtre ou un état. Remarque : Pour plus de détails sur la déclaration de ce type de variable et l'utilisation des propriétés WLangage, consultez Déclaration d'une variable. Remarques Déclaration d'une variable de type Champ Pour déclarer une variable de type Champ, il suffit d'utiliser la syntaxe suivante :
<Nom de la variable> est un Champ Exemple : Lors de la déclaration d'une variable de type Champ, il est possible de préciser le type du champ via la syntaxe suivante : <Nom de la variable> est un Champ <type champ = <Type du champ>> où <Type de champ> correspond à la constante correspondant au type de champ à créer (voir ci-dessous). Exemple : MonChamp est un Champ <type champ = typBouton>
Les différentes constantes utilisables pour définir le type du champ sont les suivantes : | | | typActiveX | 17 | Champ ActiveX
| typAgenda | 76 | Champ Agenda
| typAsc | 18 | Champ Ascenseur
| typAttribut | 41 | Attribut d'un champ Zone répétée
| typBandeauDéfilant | 122 | Champ Bandeau défilant
| typBarreDeNavigation | 117 | Champ Barre de navigation
| typBarreOutils | 22 | Champ Barre d'outils
| typBoîteAOutils | 29 | Champ Boîte à outils
| typBouton | 4 | Champ Bouton | Nouveauté 2025typBoutonSegmenté | 148 | Champ Bouton Segmenté
| typCalendrier | 47 | Champ Calendrier
| typCaptcha | 82 | Champ Captcha
| typCarte | 92 | Champ Carte
| typCarrousel | 37 | Champ Carrousel
| typCaseBarreDeMessage | 40002 | Case de barre de message
| typCellule | 50014 | Champ Cellule
| typCelluleCSSGrid | 147 | Champ Cellule présent dans un champ Grille CSS. | typCelluleDeBarreDeNavigation | 115 | Champ Cellule présent dans un champ Barre de navigation.
| typCelluleDisposition | 127 | Cellule d'un champ Disposition. | typCelluleFlexBox | 139 | Cellule d'un champ FlexBox. | typCelluleMiseEnPage | 84 | Champ Cellule utilisé pour la mise en page de type Zoning.
| typChampFormaté | 50001 | Champ d'affichage formaté
| typChampHTML | 50002 | Champ HTML
| typChampMenu | 50007 | Menu d'une page WEBDEV
| typChampMenuContextuel | 141 | Menu contextuel dans une page WEBDEV
| typCheminDeNavigation | 50011 | Champ Chemin de navigation
| typClicage | 30001 | Champ Image cliquable (champ Image d'une fenêtre ayant l'option "Cette image est une zone de cliquage" cochée).
| typCodeBarres | 26 | Champ Code-barres
| typColonne | 56 | Colonne de table
| typComboAVS | 10001 | Champ Combo avec saisie
| typComboSNS | 10002 | Champ Combo sans saisie
| typComposantWeb | 121 | Champ Composant Web | typConférence | 25 | Champ Conférence
| typConteneurNatif | 125 | Champ Conteneur natif
| typCube | 38 | Champ Cube
| typDate | 20002 | Champ de saisie de type date
| typDisposition | 126 | Champ Disposition
| typDurée | 20006 | Champ de saisie de type durée
| typEditeurDeDiagrammes | 130 | Champ Editeur de diagrammes
| typÉditeurCode | 146 | Champ Editeur de code
| typEditeurHtml | 134 | Champ Editeur HTML
| typEditeurImages | 124 | Champ Editeur d'images
| typEditeurImagesMobile | 138 | Champ Editeur d'images sur Mobile
| typFen | 1 | Fenêtre
| typFenêtreInterne | 31 | Fenêtre Interne
| typFil | 118 | Champ Fil
| typFlash | 50008 | Champ de type Flash
| typFlex | 48 | Champ de type Flex
| typFlexbox | 139 | Champ Flexbox
| typForme | 20 | Champ Forme/Dessin
| typGantt | 110 | Colonne de type Diagramme de Gantt (champ Table ou Table hiérarchique).
| typGraphe | 33 | Champ Graphe d'une fenêtre / page
| typGrp | 58 | Groupe de champs
| typHeure | 20003 | Champ de saisie de type heure
| typHTML | 23 | Libellé HTML
| typIFrame | 50013 | Champ IFrame
| typImage | 8 | Champ Image | typInterr | 5 | Champ Interrupteur
| typInterrupteurABascule | 132 | Champ Interrupteur à bascule
| typJauge | 10 | Champ Jauge
| typJaugeInfinie | 113 | Champ Jauge infinie
| typJava | 50004 | Champ Java
| typKanban | 140 | Champ Kanban
| typLecteurPDF | | Champ Lecteur PDF
| typLibellé | 3 | Champ Libellé | typLibelléHTML | 50006 | Champ Libellé HTML
| typLien | 50005 | Champ Lien
| typLienSocial | 103 | Champ Réseau social
| typLigne | 50003 | Champ Ligne
| typListe | 7 | Champ Liste
| typListeImage | 27 | Champ Liste image
| typListeKanban | 142 | Champ Liste de Kanban
| typMapArea | 50010 | Champ Image cliquable
| typModèleDeChamp | 43 | Champ de type Modèle de champs. | typMonétaire | 20005 | Champ de saisie de type monétaire
| typMultimédia | 39 | Champ Multimédia
| typNotation | 85 | Champ Notation
| typNoteRepositionnable | 119 | Champ Note repositionnable
| typNum | 20004 | Champ de saisie de type numérique
| typOle | 15 | Champ OLE
| typOnglet | 16 | Champ Onglet
| typOptionInterrupteurABascule | 133 | Option d'un champ Interrupteur à bascule
| typOptionMenu | 40001 | Option de menu
| typOrganigramme | 86 | Champ Organigramme
| typPage | 1 | Page
| typPageCornée | 79 | Champ Page cornée
| typPageInterne | 31 | Page interne
| typPanneau | 131 | Champ Panneau dockable
| typPlanDeBandeauDéfilant | 123 | Plan associé à un champ Bandeau défilant
| typPlanDeSite | 45 | Champ Plan du site
| typPlanning | 80 | Planning
| typPopup | 90 | Page popup
| typPotentiomètre | 12 | Champ Potentiomètre
| typPotentiomètreIntervalle | 72 | Potentiomètre d'intervalle
| typPotentiomètreRotatif | 13 | Potentiomètre rotatif
| typRangeSlider | 72 | Champ Range Slider
| typRéglette | 50009 | Champ Réglette
| typRegroupementRuban | | Regroupement de ruban
| typRuban | 87 | Champ Ruban
| typRupture | | Rupture dans un champ Zone répétée
| typSélect | 6 | Champ Sélecteur | typSéparateur | 28 | Champ Séparateur
| typSilverlight | 46 | Champ SilverLight
| typSpin | 11 | Champ Spin
| typSuperChamp | 40 | Superchamp | typTable | 9 | Champ Table
| typTableauCroiséDynamique | 102 | Champ Tableau croisé dynamique
| typTableauDeBord | 111 | Champ Tableau de bord
| typTableHierarchique | 35 | Champ Table hiérarchique
| typTableur | 114 | Champ Tableur
| typTexte | 20001 | Champ de saisie de type texte
| typTiroir | 34 | Champ Tiroir
| typTraitementDeTexte | 120 | Champ Traitement de texte
| typTreeMap | 74 | Champ TreeMap
| typTreeView | 19 | Champ Arbre
| typUpload | 73 | Champ Upload
| typVidéo | 78 | Champ Vidéo
| typVignette | 50012 | Champ Vignette
| typWebCam | 24 | Champ Web Camera
| typXaml | 36 | Champ Xaml
| typZoneMultiligne | 97 | Champ Zone multiligne
| typZoneRépétée | 30 | Champ Zone répétée
| typZoneRépétéeLinéaire | 77 | Champ Zone répétée linéaire
| typZoneTexteRiche | 109 | Champ Zone de texte
|
Remarque : Pour ne plus associer un champ à une variable de type Champ, il suffit d'utiliser la fonction VariableRAZ. Affectation d'une variable de type Champ Une variable de type Champ peut être utilisée pour manipuler : - un champ existant dans une fenêtre ou un état.
L'affectation d'une variable de type Champ doit être réalisée avec l'opérateur '<-'. Exemples :
c est un Champ
c <- SAI_Saisie1
Attention : L'opérateur '=' ne doit pas être utilisé pour l'affectation d'une variable de type Champ. Cet opérateur permet de transférer la valeur d'un champ dans un autre champ de même type. Par exemple :
c est un Champ
c <- SAI_Saisie1
c = SAI_Saisie3
c = "Texte"
Remarque : Pour savoir si la variable de type Champ a été affectée, utilisez la propriété Type sur la variable. Exemple : PROCÉDURE VariableChampEstAffecté(varChamp est un Champ) : booléen
sType est un entier
QUAND EXCEPTION DANS
sType = varChamp..Type
FAIRE
RENVOYER Faux
FIN
RENVOYER Vrai
Utilisation d'une variable de type Champ dans une procédure Le type Champ peut être un paramètre d'une procédure. Méthode 1 : Utilisation de la syntaxe sans préciser le type du champ : - le code de la procédure est du type :
PROCÉDURE MaProcédure(C est un Champ)
C = "Il est " + HeureSys()
- l'appel de la procédure est du type :
Dans ce cas, si le type du champ n'est pas celui attendu, aucune vérification n'est effectuée à la compilation. Méthode 2 : Utilisation de la syntaxe précisant le type de champ utilisé : - le code de la procédure est du type :
PROCÉDURE MaProcédure(C est un Champ <type champ = typSaisie>)
C = "Il est " + HeureSys()
- l'appel de la procédure est du type :
Avantage : Si l'appel de la procédure utilise un champ d'un type différent de celui attendu, une erreur de compilation est affichée : "Le passage du champ en paramètre n'est pas compatible avec le champ attendu." Optimisation des traitements avec indirection Le type Champ peut être utilisé pour optimiser les traitements utilisant les indirections. Il est possible par exemple d'écrire : C est un Champ <-{s, indChamp}
C.Largeur = 10
C.Hauteur = 20
plutôt que le code suivant : {s, indChamp}..Largeur = 10
{s, indChamp}..Hauteur = 20
Propriétés associées à une variable de type Champ Le type Champ permet de manipuler tous les types de champs d'une fenêtre ou d'un état. Les propriétés disponibles dépendent du type de champ manipulé. Ainsi, si une variable de type Champ est utilisée pour manipuler un champ de saisie, toutes les propriétés WLangage disponibles sur le champ de saisie sont utilisables sur la variable de type Champ.
En spécifiant le type du champ dès la déclaration de la variable de type Champ, seules les propriétés du type de champ indiqué sont proposées sous l'éditeur de code. Pour connaître les propriétés d'un champ, consultez la page d'aide du champ : le lien "Voir aussi" permet d'accéder à toutes les propriétés du champ. Pour plus de détails, consultez Champs d'une fenêtre. Fonctions manipulant une variable de type Champ Toutes les fonctions WLangage manipulant des champs peuvent être utilisées sur une variable de type Champ. Bien entendu, seules les fonctions WLangage correspondant au type de champ manipulé sont disponibles.
En spécifiant le type du champ dès la déclaration de la variable de type Champ, seules les fonctions manipulant le type de champ indiqué sont proposées sous l'éditeur de code.Ainsi, il est possible d'utiliser les fonctions TableXXX sur une variable de type Champ manipulant un champ Table.
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|