PV ETAT SIMPLE

4D - Documentation   Français   English   German   4D View, Commandes par thèmes   4D View, Liste des commandes   4D View, Constantes par thèmes   Retour   Précédent   Suivant

version 6.8


PV ETAT SIMPLE (zone; colonne; ligne; primaire; tableRupture; champRupture; opération; numTable; numChamp; insérer; corps; titre)

ParamètreTypeDescription
zoneEntier longZone 4D View
colonneEntier longNuméro de colonne
ligneEntier longNuméro de ligne
primaireEntierNuméro de table primaire
tableRuptureEntierNuméro de table sur laquelle porte la rupture
champRuptureEntierNuméro de champ sur lequel porte la rupture
opérationEntierOpération à effectuer
numTableEntierNuméro de table du champ à afficher
numChampEntierNuméro du champ à afficher
insérerEntier0 = Remplacer; 1 = Insérer lignes
corpsEntier longMode d'affichage du corps
titreAlphaMode d'affichage du titre des ruptures

Description

La commande PV ETAT SIMPLE crée un état dans la zone 4D View en utilisant les valeurs issues du champ 4D défini par numTable et numChamp à partir de la sélection courante de la table primaire. Il est possible d'appliquer une opération à ce champ : sous-total, nombre, maximum, etc. Pour définir le paramètre opération, utilisez les constantes du thème PV États calculs.

Le résultat généré est affiché dans la zone à partir de la cellule désignée par colonne et ligne.

Les paramètres tableRupture et champRupture désignent le champ sur lequel la séquence de rupture sera effectuée. Les ruptures permettent de séparer les enregistrements en groupes homogènes et d'effectuer des calculs intermédiaires pour chaque groupe.

Une rupture est un changement de valeur dans une table de tri. Il est impératif d'associer ce niveau de rupture à un critère de tri. Le tri de la sélection d'enregistrements de tableRupture sur champRupture est donc nécessaire avant d'utiliser la commande PV ETAT SIMPLE. Il peut y avoir des critères de tri supplémentaires, qui ne seront pas pris en compte dans la rupture. Pour plus d'informations sur la construction d'états avec ruptures, reportez-vous au manuel Mode Développement de 4D.

Le paramètre insérer détermine si les données placées dans la zone 4D View par cette commande doivent remplacer les cellules éventuellement présentes ou être insérées dans de nouvelles lignes. Si vous passez 0, les données sont effacées et remplacées. Si vous passez 1, des lignes supplémentaires sont insérées.

Le paramètre corps vous permet de définir le mode d'affichage des zones de corps et de rupture de l'état :

Si vous passez 0, seules les lignes de ruptures sont générées (les lignes de corps ne sont pas insérées).

Si vous passez 1, les lignes de corps sont insérées et les valeurs de ruptures sont répétées à chaque ligne.

Si vous passez 2, les lignes de corps sont insérées et les valeurs de ruptures ne sont affichées qu'une seule fois.

Le paramètre titre permet de définir le libellé des lignes de résultat (par exemple "Total", "Moyenne", etc.). A l'instar de l'éditeur d'états rapides de 4D, vous pouvez utiliser le caractère dièse (#) afin d'afficher la valeur de rupture courante. Par exemple, si le champ "Pays" est votre champ de rupture, vous pouvez saisir "Moyenne # :" dans le paramètre titre afin d'obtenir les libellés "Moyenne France : ", "Moyenne USA : ", etc. Passez une chaîne vide si vous souhaitez pas insérer de titre.

Note : Si le paramètre corps vaut 0 et que le titre est une chaîne vide, la première colonne de l'état est omise (elle serait alors vide).

Exemple

Affichons dans une zone 4D View une liste des clients, en séparant les femmes et les hommes et en indiquant pour chaque groupe le nombre d'enregistrements :

   C_ENTIER LONG($Colonne)  `Numéro de colonne
   C_ENTIER LONG($Ligne)  `Numéro de ligne
   C_ENTIER($Primaire)  `Numéro de table primaire
   C_ENTIER($TableRupture)  `Numéro de table sur laquelle porte la rupture
   C_ENTIER($ChampRupture)  `Numéro de champ sur lequel porte la rupture
   C_ENTIER($Opération)  `Opération à effectuer
   C_ENTIER($Table)  `Numéro de table du champ à afficher
   C_ENTIER($Champ)  `Numéro du champ à afficher
   C_ENTIER($Insérer)  `0=Remplacer;1=Insérer lignes
   C_ENTIER($Corps)  `Option d'affichage du corps
   C_ALPHA(30;$Titre)  `Titre de la ligne de résultat

      `Initialisations
   $Colonne:=4  `Affichage à partir de la colonne C
   $Ligne:=3  `Affichage à partir de la 3ème ligne (titre + ligne blanche)
   $Primaire:=Table(->[Clients])  `C'est la table des clients qui est balayée
   $TableRupture:=Table(->[Clients])
   $ChampRupture:=Champ(->[Clients]Genre)  `La rupture portera sur le genre des clients
   $Opération:=pv état calcul nombre  `Calculons le nombre d'hommes et de femmes
   $Table:=Table(->[Clients])  `Champs de la table des clients
   $Champ:=Champ(->[Clients]Nom)  `Pour imprimer les noms
   $Insérer:=1  `Insertion demandée
   $Corps:=2   `Affichage lignes de corps, les valeurs de rupture ne sont affichées qu'une fois
   $Titre:="Total"

   TOUT SELECTIONNER([Clients])
   TRIER([Clients];[Clients]Genre;[Clients]Nom)  `Tri nécessaire à la rupture + affichage par ordre alphabétique
   PV ETAT SIMPLE (Zone;$Colonne;$Ligne;$Primaire;$TableRupture;$ChampRupture;$Opération;$Table;$Champ;$Insérer;$Corps;$Titre)

Référence

PV ETAT MULTIPLE, PV TABLEAU VERS CELLULES.

Constantes

Thème PV États calculs.


4D - Documentation   Français   English   German   4D View, Commandes par thèmes   4D View, Liste des commandes   4D View, Constantes par thèmes   Retour   Précédent   Suivant