4D View v16

PV REPORT ONE

Accueil

 
4D View v16
PV REPORT ONE

PV REPORT ONE 


 

PV REPORT ONE ( zone ; colonne ; ligne ; primaire ; tableRupture ; champRupture ; opération ; numTable ; numChamp ; insérer ; corps ; titre ) 
Paramètre Type   Description
zone  Entier long in Zone 4D View
colonne  Entier long in Numéro de colonne
ligne  Entier long in Numéro de ligne
primaire  Entier in Numéro de table primaire
tableRupture  Entier in Numéro de table sur laquelle porte la rupture
champRupture  Entier in Numéro de champ sur lequel porte la rupture
opération  Entier in Opération à effectuer
numTable  Entier in Numéro de table du champ à afficher
numChamp  Entier in Numéro du champ à afficher
insérer  Entier in 0 = Remplacer; 1 = Insérer lignes
corps  Entier long in Mode d'affichage du corps
titre  Chaîne in Mode d'affichage du titre des ruptures

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 :

Constante Type Valeur
pv report function average Entier long 1
pv report function count Entier long 4
pv report function max Entier long 3
pv report function min Entier long 2
pv report function none Entier long -1
pv report function sum Entier long 0

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_LONGINT($Colonne`Numéro de colonne
 C_LONGINT($Ligne`Numéro de ligne
 C_LONGINT($Primaire`Numéro de table primaire
 C_LONGINT($TableRupture`Numéro de table sur laquelle porte la rupture
 C_LONGINT($ChampRupture`Numéro de champ sur lequel porte la rupture
 C_LONGINT($Opération`Opération à effectuer
 C_LONGINT($Table`Numéro de table du champ à afficher
 C_LONGINT($Champ`Numéro du champ à afficher
 C_LONGINT($Insérer`0=Remplacer;1=Insérer lignes
 C_LONGINT($Corps`Option d'affichage du corps
 C_TEXT($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:=Field(->[Clients]Genre) `La rupture portera sur le genre des clients
 $Opération:=pv report function count `Calculons le nombre d'hommes et de femmes
 $Table:=Table(->[Clients]) `Champs de la table des clients
 $Champ:=Field(->[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"
 
 ALL RECORDS([Clients])
 ORDER BY([Clients];[Clients]Genre;[Clients]Nom) `Tri nécessaire à la rupture + affichage par ordre alphabétique
 PV REPORT ONE(Zone;$Colonne;$Ligne;$Primaire;$TableRupture;$ChampRupture;
 $Opération;$Table;$Champ;$Insérer;$Corps;$Titre)



Voir aussi  

PV ARRAY TO CELLS
PV REPORT MANY

 
PROPRIÉTÉS 

Produit : 4D View
Thème : PV Valeur de cellule
Numéro : 15903

 
HISTORIQUE 

Créé : 4D View 6.8

 
UTILISATION DE L'ARTICLE

4D View - Langage ( 4D View v16)