Création de liens de zoom en profondeur multiples

Dans cette section :

Comment :

Référence :

Vous pouvez créer des liens de zoom en profondeur multiples à partir d'un composant dans un rapport de synthèse, ce qui est choisi en fonction de différentes actions prises en charge. Par exemple, vous pouvez créer des liens vers un rapport détaillé ou une procédure Maintain, une fonction JavaScript et une adresse URL. Lorsque vous cliquez sur un composant dans le rapport de synthèse, un menu contextuel s'affiche listant les options de zoom en profondeur.

Cette fonctionnalité est disponible pour les rapports HTML et le format HTMTABLE. Elle s'applique aux champs de données dans le corps du rapport, mais non pas aux en-têtes, en-têtes secondaires, pieds de page ou pieds de page secondaires. L'utilisation du format HTMTABLE exige du codage JavaScript spécial.

Developer Studio fournit une interface qui génère automatiquement le code. Pour plus d'informations, consultez la rubrique sur la création d'une procédure de zooms en profondeur multiples dans le manuel Créer des applications de reporting avec Developer Studio .


Haut de page

x
Syntaxe : Créer des liens de zoom en profondeur multiples
TYPE=type, [subtype], DRILLMENUITEM='description'|'DrillDown
n',
     type_of_link

où :

type
Identifiez le composant de rapport que vous sélectionnez dans le navigateur web pour exécuter le lien. L'attribut TYPE et sa valeur doivent apparaître au début de la déclaration.
subtype
sont des attributs supplémentaires, tels que COLUMN, LINE ou ITEM, nécessaires pour identifier le composant de rapport que vous formatez. Pour en savoir plus au sujet de l'identification de composants de rapport, consultez Désignation de composants de rapport dans la syntaxe de feuille de style WebFOCUS.
description
est le texte qui s'affiche dans le menu contextuel d'options de zoom en profondeur dans la sortie de rapport. La valeur par défaut est DrillDown n, où n est un nombre entier consécutif, tel que DrillDown 1, DrillDown 2, et ainsi de suite.
type_of_link
est le type de lien, par exemple, un lien vers un rapport détaillé ou une adresse URL. Pour un résumé des valeurs valables, consultez Résumé des liens de zoom en profondeur.

Haut de page

x
Référence : Directives de syntaxe

Lorsque vous créez des liens de zoom en profondeur multiples, vous ne pouvez pas spécifier une action de zoom en profondeur unique (par exemple, FOCEXEC ou URL) avant le premier DRILLMENUITEM.

Le menu créé par le mot-clé DRILLMENUITEM est stylisé avec un fichier de feuille de style en cascade. Le fichier est /ibi/WebFOCUSxx/ibi_apps/ibi_html/javaassist/ibi/html/js/multidrill.css, où xx est le numéro de version et de révision de WebFOCUS.

Vous pouvez apporter des modifications à ce fichier afin de changer la police, la taille et la couleur du menu DRILLMENUITEM. Conseil : faites une sauvegarde de ce fichier avant de le modifier.


Haut de page

x
Référence : Résumé des liens de zoom en profondeur

Vous pouvez créer un lien vers :



Exemple : Création de liens de zoom en profondeur multiples

Dans cet exemple, le Report Painter Developer Studio a été utilisé pour créer deux procédures : un rapport de synthèse et un rapport détaillé. Le rapport résumé utilisait les attributs DRILLMENUITEM et URL pour créer un lien vers un site web ; les attributs DRILLMENUITEM et FOCEXEC pour créer un lien vers le rapport détaillé comme le montrent les éléments en gras dans le code.

Notez que toute syntaxe de feuille de style qui s'applique à un composant de rapport dans son ensemble précède la première instance de DRILLMENUITEM. Par exemple, COLOR='BLUE' et STYLE=UNDERLINE s'appliquent à la couleur et au soulignement du texte dans le composant, non pas à une action de zoom en profondeur particulière. Pour plus d'informations sur la modification des styles de ce menu, consultez les Directives de syntaxe.

Pour plus d'informations sur la création d'un rapport avec zooms en profondeur multiples au moyen de Developer Studio, consultez le manuel Créer des applications de reporting avec Developer Studio .

Rapport récapitulatif :

TABLE FILE GGSALES
SUM
     DOLLARS/D12.2CM
     BUDDOLLARS/D12.2CM
BY ST
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE SET ONLINE-FMT HTML
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
     UNITS=IN,
     PAGESIZE='SCREEN',
     LEFTMARGIN=0.000000,
     RIGHTMARGIN=0.000000,
     TOPMARGIN=0.000000,
     BOTTOMMARGIN=0.000000,
     SQUEEZE=ON,
     ORIENTATION=PORTRAIT,$
TYPE=REPORT,
     GRID=OFF,
     FONT='ARIAL',
     SIZE=9,
     COLOR='BLACK',
     BACKCOLOR='NONE',
     STYLE=NORMAL,
     TOPGAP=0.013889,
     BOTTOMGAP=0.027778,$
TYPE=DATA,
     COLUMN=N1,
     COLOR='BLUE',
     STYLE=UNDERLINE,
     DRILLMENUITEM='DrillDown 1',
          URL=http://www.informationbuilders.com,
     DRILLMENUITEM='DrillDown 2',
          FOCEXEC=DETAILREPORT(PARAMETER=N1),$
TYPE=TITLE,
     STYLE=BOLD,$
TYPE=TITLE,
     COLUMN=N1,
     COLOR='BLUE',
     STYLE=BOLD+UNDERLINE,
     DRILLMENUITEM='DrillDown 1',
          URL=http://www.informationbuilders.com,
     DRILLMENUITEM='DrillDown 2',
          FOCEXEC=DETAILREPORT(PARAMETER=N1),$
TYPE=TABHEADING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=TABFOOTING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=HEADING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=FOOTING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=SUBHEAD,
     SIZE=10,
     STYLE=BOLD,$
TYPE=SUBFOOT,
     SIZE=10,
     STYLE=BOLD,$
TYPE=SUBTOTAL,
     BACKCOLOR=RGB(210 210 210),$
TYPE=ACROSSVALUE,
     SIZE=9,$
TYPE=ACROSSTITLE,
     STYLE=BOLD,$
TYPE=GRANDTOTAL,
     BACKCOLOR=RGB(210 210 210),
     STYLE=BOLD,$
ENDSTYLE
END

Rapport détaillé :

TABLE FILE GGSALES
PRINT
     DOLLARS/D12.2CM
     BUDDOLLARS/D12.2CM
BY ST
WHERE (ST EQ '&PARAMETER');
ON TABLE SET PAGE-NUM OFF
ON TABLE NOTOTAL
ON TABLE SET ONLINE-FMT HTML
ON TABLE SET HTMLCSS ON
ON TABLE SET STYLE *
     UNITS=IN,
     PAGESIZE='SCREEN',
     LEFTMARGIN=0.000000,
     RIGHTMARGIN=0.000000,
     TOPMARGIN=0.000000,
     BOTTOMMARGIN=0.000000,
     SQUEEZE=ON,
     ORIENTATION=PORTRAIT,$
TYPE=REPORT,
     GRID=OFF,
     FONT='ARIAL',
     SIZE=9,
     COLOR='BLACK',
     BACKCOLOR='NONE',
     STYLE=NORMAL,
     TOPGAP=0.013889,
     BOTTOMGAP=0.027778,$
TYPE=TITLE,
     STYLE=BOLD,$
TYPE=TABHEADING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=TABFOOTING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=HEADING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=FOOTING,
     SIZE=12,
     STYLE=BOLD,$
TYPE=SUBHEAD,
     SIZE=10,
     STYLE=BOLD,$
TYPE=SUBFOOT,
     SIZE=10,
     STYLE=BOLD,$
TYPE=SUBTOTAL,
     BACKCOLOR=RGB(210 210 210),$
TYPE=ACROSSVALUE,
     SIZE=9,$
TYPE=ACROSSTITLE,
     STYLE=BOLD,$
TYPE=GRANDTOTAL,
     BACKCOLOR=RGB(210 210 210),
     STYLE=BOLD,$
ENDSTYLE
END

Haut de page

x
Appliquer le style conditionnel

Vous pouvez appliquer le style conditionnel à un composant de rapport en utilisant une phrase telle que WHEN pour sélectionner l'une de nombreuses actions, selon la valeur des champs dans le rapport.

La condition WHEN doit précéder la syntaxe DRILLMENUITEM.

Pour plus de détails sur la création de conditions, consultez Création de liens avec conditions.



Exemple : Appliquer le style conditionnel à un rapport avec zoom en profondeur multiples

Ajoutez le code en caractères gras suivant au rapport de synthèse suivant dans Création de liens de zoom en profondeur multiples. Notez que la condition WHEN précède le code de DRILLMENUITEM, comme nécessaire.

Lorsque vous lancez le rapport, le champ « State » s'affiche en rouge au lieu de bleu lorsque la valeur de « budget dollars » est plus haute que la valeur de « dollar sales », et le menu contextuel d'options de zoom en profondeur montre « Detail Budget Report » au lieu de DrillDown 1 et DrillDown 2.

.
.
.
TYPE=DATA,
     COLUMN=N1,
     COLOR='BLUE',
     STYLE=UNDERLINE,
     DRILLMENUITEM='DrillDown 1',
          URL=http://www.informationbuilders.com?,
     DRILLMENUITEM='DrillDown 2',
          FOCEXEC=DETAILREPORT(PARAMETER=N1),$
TYPE=DATA, 
     COLUMN=N1,
     COLOR='RED',
     STYLE=UNDERLINE,
     WHEN=BUDDOLLARS GT DOLLARS,
     DRILLMENUITEM='Detail Budget Report',
          FOCEXEC=DETAILREPORT(PARAMETER=N1),$.
.
.

Un exemple de sortie est :


WebFOCUS