Attributs et fonctions de matrice IU
Lier du XML à du HTML
Seuls deux attributs différents sont requis pour lier le XML d'une matrice IU à son HTML. Tous deux nécessitent un document XML incorporé dans le HTML, le XML étant lié par des noeuds <xml>.
Lier un champ
| Syntaxe | Valeurs | Description |
|---|---|---|
|
oraField=" " |
XPath d'élément de champ | Cet attribut permet de lier directement un élément HTML à un élément XML, celui-ci étant défini dans le schéma XML de la matrice IU. Il peut être utilisé avec tout élément HTML d'affichage, comme : <span>, <div> et <input>. |
-
HTML pour l'élément "input" :
<html> <body> <table> <tr> <td>Address:</td> <td><input type="text" oraField="address"/></td> </tr> <tr> <td>City:</td> <td><input type="text" oraField="city"/></td> </tr> <tr> <td>State:</td> <td><input type="text" oraField="state"/></td> </tr> <tr> <td>Zip:</td> <td><input type="text" oraField="zip"/></td> </tr> </table> </body> <xml> <root> <address>123 Main St</address> <city>Alameda</city> <state>CA</state> <zip>94770</zip> </root> </xml> </html>HTML affiché
-
HTML pour les éléments "span" et "div" :
<html> <body> <div oraField="address"></div> <span oraField="city"></span> <span>,</span> <span oraField="state"></span> <span oraField="zip"></span> <span oraField="country"></span> </body> <xml> <root> <address>123 Main St</address> <city>Alameda</city> <state>CA</state> <zip>94770</zip> </root> </xml> </html>HTML affiché :
Lier une liste
Cet attribut permet de lier une table HTML à une liste XML, celle-ci étant définie dans le schéma XML de la matrice IU. L'élément vise à faire répliquer à Framework le HTML de la table pour chaque occurrence de la liste.
| Syntaxe | Valeurs | Description |
|---|---|---|
|
oraList=" " |
XPath d'élément de liste | Cet attribut permet de lier une table HTML à une liste XML, celle-ci étant définie dans le schéma XML de la matrice IU. L'élément vise à faire répliquer à Framework le HTML de la table pour chaque occurrence de la liste. |
<html>
<head><title>Bind xml list element</title></head>
<body>
<table oraList="payment">
<thead>
<tr>
<th><span>Pay Date</span></th>
<th><span>Amount</span></th>
</tr>
<tr/>
</thead>
<tr>
<td>
<span oraField="date" oraType="date"></span>
</td>
<td align="right">
<span oraField="amount" oraType="money"></span>
</td>
</tr>
</table>
</body>
<xml>
<root>
<payment>
<date>2008-01-01</date>
<amount>44.28</amount>
</payment>
<payment>
<date>2008-02-01</date>
<amount>32.87</amount>
</payment>
<payment>
<date>2008-03-01</date>
<amount>21.76</amount>
</payment>
</root>
</xml>
</html>
HTML affiché :
Créer une liste déroulante
Les attributs ci-dessous permettent de créer un élément HTML "select", ou liste déroulante, à partir de diverses sources.
| Source | Syntaxe | Valeurs | Exemples |
|---|---|---|---|
| Consultation |
oraSelect="lookup: ;" |
Champ de consultation |
|
| Consultation avancée |
oraSelect="lookupBO: ;" |
Code d'objet métier |
|
| Type de caractéristique (prédéfini) |
oraSelect="charType: ;" |
Code de type de caractéristique |
|
| Table de contrôle |
oraSelect="table: ;" Remarque :
Cet attribut ne fonctionne qu'avec les tables ayant la structure de table de contrôle standard dans laquelle il existe une table de langues associée comportant une colonne DESCR ou DESCR100comme colonne de description. Accédez à la page de maintenance Champ pour chaque champ afin de voir quelles tables contiennent les champs. Avertissement :
La fonction oraSelect ne fonctionne que si moins de 500 valeurs sont affichées. |
Nom de la table |
|
| Service de page |
oraSelect="service: ;" |
Nom de service de page |
|
| Liste incorporée | A utiliser pour créer une liste déroulante de sélection d'après une liste figurant dans le XML de la matrice. oraSelect="valuePath: ;descPath: " |
Après valuePath, indiquez le XPath de l'élément contenant les valeurs. Après descPath, indiquez le XPath de l'élément contenant les descriptions. |
|
| Script de service |
oraSelect="ss: ;" |
Code de script de service | Voir ci-dessous la syntaxe supplémentaire requise lorsque cette fonction est utilisée. |
| Service fonctionnel |
oraSelect="bs: ;" |
Code de service fonctionnel | Voir ci-dessous la syntaxe supplémentaire requise lorsque cette fonction est utilisée. |
Lorsqu'un script de service ou un service fonctionnel est spécifié, des informations de mapping supplémentaires sont nécessaires pour l'échange de données avec le service.
| Syntaxe | Valeurs | Description |
|---|---|---|
|
oraSelectIn=" ;" |
serviceXPath:élément; | A utiliser pour transmettre la valeur d'un autre élément au service (mapping avec le XPath du service). |
| serviceXPath:'Littéral'; | A utiliser pour transmettre une constante ou un littéral au service (mapping avec le XPath du service). | |
|
oraSelectOut="valuePath: ; descPath: " |
Voir exemples ci-dessous | A utiliser pour indiquer quel est l'élément dans la sortie du service qui contient les valeurs et quel est celui qui contient les descriptions. |
Exemple avec un service fonctionnel :
...
<td>External System: </td>
<td>
<select oraField="externalSystem"
oraSelect="bs:F1-RetrieveExternalSystems"
oraSelectIn="outboundMsgType:boGroup/parameters/outboundMsgType;"
oraSelectOut="valuePath:results/externalSystem;
descPath:results/description">
</select>
</td>
...
Cette méthode de création des listes déroulantes est souvent utilisée lorsqu'il y a dépendance entre les éléments et que la liste des valeurs valides d'une liste déroulante (pour l'élément enfant) se base sur un autre élément de la matrice (l'élément parent). Lorsque l'élément parent est modifié, l'élément enfant peut devoir être actualisé. Ceci peut se faire à l'aide de la fonction appelée dans un événement onChange de la matrice. La syntaxe est la suivante : oraHandleDependentElements('dependent element');. Il est possible de nommer plusieurs éléments cible (dépendants).
L'exemple qui suit illustre le cas de service fonctionnel présenté ci-dessus, avec une liste de systèmes tiers spécifique d'un type de message sortant qui est transmis en entrée. Le fragment de code ci-dessous présente la configuration de l'élément de type de message sortant pour qu'il y ait actualisation de la liste déroulante des systèmes tiers.
...
<div>
<label oraLabel="boGroup/parameters/outboundMsgType"></label>
<span>
<select oraSelect="table:F1_OUTMSG_TYPE"
oraField="boGroup/parameters/outboundMsgType"
onChange="oraHandleDependentElements('boGroup/parameters/externalSystem');">
</select>
</span>
</div>
...
Formater les champs d'entrée et de sortie
Les attributs ci-dessous sont prévus pour appliquer un formatage de type de données aux champs d'entrée et de sortie.
Formatage automatique
| Syntaxe |
|---|
| oraSchemaDataTypes="false" |
Cet attribut permet de déclencher le formatage automatique dans le document HTML affiché. Ce formatage automatique est effectué en fonction des attributs de type de données définis dans le schéma de la matrice IU. Pour des détails sur le formatage des types de données spécifiques, voir les descriptions de l'attribut oraType ci-dessous.
-
Schéma de la matrice IU :
<schema> <schemaDate dataType="date"/> <schemaDateTime dataType="dateTime"/> <schemaFkRef fkRef="F1-MOTBL"/> <schemaLookup dataType="lookup" lookup="ACCESS_MODE"/> <schemaMoney dataType="money"/> <schemaNumber dataType="number"/> <schemaTime dataType="time"/> </schema> -
HTML de la matrice IU :
<html> <body oraSchemaDataTypes="true"> <table border="1" cellpadding="1" cellspacing="1"> <tr><th>dataType</th><th>input result</th><th> display-only result</th></tr> <tr> <td>date</td> <td><input oraField="schemaDate"/></td> <td><span oraField="schemaDate"></span></td> </tr> <tr> <td>dateTime</td> <td><input oraField="schemaDateTime"/></td> <td><span oraField="schemaDateTime"></span></td> </tr> <tr> <td>fkRef</td> <td><input oraField="schemaFkRef"/></td> <td><span oraField="schemaFkRef"></span></td> </tr> <tr> <td>lookup</td> <td><input oraField="schemaLookup"/></td> <td><span oraField="schemaLookup"></span></td> </tr> <tr> <td>money</td> <td><input oraField="schemaMoney"/></td> <td><span oraField="schemaMoney"></span></td> </tr> <tr> <td>number</td> <td><input oraField="schemaNumber"/></td> <td><span oraField="schemaNumber"></span></td> </tr> <tr> <td>time</td> <td><input oraField="schemaTime"/></td> <td><span oraField="schemaTime"></span></td> </tr> </table> </body> <xml> <root> <schemaDate>2007-11-02</schemaDate> <schemaDateTime>2007-11-02-23.45.00</schemaDateTime> <schemaFkRef>CI_MD_TBL</schemaFkRef> <schemaLookup>A</schemaLookup> <schemaMoney>1000000</schemaMoney> <schemaNumber>5661976.11548</schemaNumber> <schemaTime>23.45.00</schemaTime> </root> </xml> </html>HTML affiché.
Formatage des dates/heures
| Syntaxe | Valeurs valides | Description |
|---|---|---|
| oraType="date" | Cette fonction permet d'afficher une date selon le profil d'affichage de l'utilisateur. Pour les champs d'entrée, le formage des données a lieu lorsque l'utilisateur sort du champ. | |
| oraType="time" | Cette fonction permet d'afficher une heure selon le profil d'affichage de l'utilisateur. Pour les champs d'entrée, le formage des données a lieu lorsque l'utilisateur sort du champ. | |
| oraType="dateTime; time:suppress" | Cette fonction permet d'afficher un horodatage selon le profil d'affichage de l'utilisateur. Lorsque cette fonction est utilisée pour un élément d'entrée, elle est décomposée en deux parties, une pour la date et une pour l'heure. Eventuellement, la partie heure de l'élément de date/heure peut être supprimée à l'aide de l'attribut "time:suppress". | |
| oraType="dateTime; stdTime:true;" | Cette fonction permet d'afficher un élément de date/heure stocké au format d'heure standard selon le calendrier de changement d'heure du fuseau horaire de base. Le fuseau horaire de base est défini dans la table d'installation et représente le fuseau horaire de la base de données.
Pour les éléments d'entrée paramétrés ainsi, les heures entrées sont toutes censées correspondre au calendrier de changement d'heure du fuseau horaire de base. Si une heure est saisie et qu'elle ne peut pas être convertie sans ambiguïté en heure standard, l'utilisateur devra fournir une étiquette de fuseau horaire afin d'indiquer si l'heure saisie est une heure d'été ou une heure standard. |
|
| oraType="dateTime; stdTimeRef: ;" | Indiquez un XPath après le caractère deux-points. | Cette fonction permet d'afficher un élément de date/heure selon le calendrier de changement d'heure d'un fuseau horaire dont le XPath est indiqué. A noter que le système considère que l'heure traitée a été stockée en heure standard du fuseau horaire référencé ; l'heure ne sera donc modifiée que d'après le calendrier de changement d'heure et non d'après le fuseau horaire. |
| oraType="dateTime; legalTime:true;" | Cette fonction permet d'afficher un élément de date/heure stocké au format d'heure légale du fuseau horaire de base. Le fuseau horaire de base est défini dans la table d'installation et représente le fuseau horaire de la base de données. | |
| oraType="dateTime; legalTimeRef: ;" | Indiquez un XPath après le caractère deux-points. | Cette fonction permet d'afficher un élément de date/heure selon le calendrier de changement d'heure d'un fuseau horaire dont le XPath est indiqué. Notez que l'heure traitée est supposée avoir été stocké au format d'heure légale du fuseau horaire référencé. |
| oraType="dateTime; … ; displayRef: ;" | Indiquez un XPath après le caractère deux-points. | Cette fonction permet d'afficher un élément de date/heure explicitement défini comme stocké au format d'heure standard ou légale (à l'aide de stdTime | stdRef | legalTime | legalRef) de son fuseau horaire de stockage au fuseau horaire référencé dans l'heure légale avant affichage, et inversement, du fuseau horaire d'affichage au fuseau horaire de stockage lors de l'enregistrement. |
<html>
<body oraSchemaDataTypes="true">
<table border="1" cellpadding="1" cellspacing="1">
<tr><th>dataType</th><th>input result</th><th> display-only result</th></tr>
<tr>
<td>date</td>
<td><input oraField="schemaDate" oraType="date;"/></td>
<td><span oraField="schemaDate" oraType="date;"></span></td>
</tr>
<tr>
<td>time</td>
<td><input oraField="schemaTime" oraType="time;"/></td>
<td><span oraField="schemaTime" oraType="time;"></span></td>
</tr>
<tr>
<td>dateTime</td>
<td><input oraField="schemaDateTime" oraType="dateTime;"/></td>
<td><span oraField="schemaDateTime" oraType="dateTime;"></span></td>
</tr>
<tr>
<td>dateTimeSuppress</td>
<td><input oraField="schemaDateTimeSup" oraType="dateTime; time:suppress"/></td>
<td><span oraField="schemaDateTimeSup" oraType="dateTime; time:suppress"></span></td>
</tr>
<tr>
<td>Base Time Zone (Standard)</td>
<td><input oraField="schemaDateTimeStd" oraType="dateTime; stdTime:true;"/></td>
<td><span oraField="schemaDateTimeStd" oraType="dateTime; stdTime:true;"></span></td>
</tr>
<tr>
<td>Base Time Zone (Legal)</td>
<td><input oraField="schemaDateTimeLgl" oraType="dateTime; legalTime:true;"/></td>
<td><span oraField="schemaDateTimeLgl" oraType="dateTime; legalTime:true;"></span></td>
</tr>
<tr>
<td>Referenced Time Zone (Standard)</td>
<td><input oraField="schemaDateTimeStdRef" oraType="dateTime; stdTimeRef:timeZone;"/></td>
<td><span oraField="schemaDateTimeStdRef" oraType="dateTime; stdTimeRef:timeZone;"></span></td>
</tr>
<tr>
<td>Referenced Time Zone (Legal)</td>
<td><input oraField="schemaDateTimeLglRef" oraType="dateTime; legalTimeRef:timeZone;"/></td>
<td><span oraField="schemaDateTimeLglRef" oraType="dateTime; legalTimeRef:timeZone;"></span></td>
</tr>
<tr>
<td>Stored in Base Time Zone (Standard) - displayed in another Time Zone</td>
<td><input oraField="schemaDateTimeStdDisp" oraType="dateTime; stdTime:true; displayRef:timeZoneDisp;"/></td>
<td><span oraField="schemaDateTimeStdDisp" oraType="dateTime; stdTime:true; displayRef:timeZoneDisp;"></span></td>
</tr>
<tr>
<td>Stored in Base Time Zone (Legal) - displayed in another Time Zone</td>
<td><input oraField="schemaDateTimeLglDisp" oraType="dateTime; legalTime:true; displayRef:timeZoneDisp"/></td>
<td><span oraField="schemaDateTimeLglDisp" oraType="dateTime; legalTime:true; displayRef:timeZoneDisp"></span></td>
</tr>
<tr>
<td>Stored in a Referenced Time Zone (Standard) - displayed in another Time Zone</td>
<td><input oraField="schemaDateTimeStdRefDisp" oraType="dateTime; stdTimeRef:timeZone; displayRef:timeZoneDisp"/></td>
<td><span oraField="schemaDateTimeStdRefDisp" oraType="dateTime; stdTimeRef:timeZone; displayRef:timeZoneDisp"></span></td>
</tr>
<tr>
<td>Stored in a Referenced Time Zone (Legal) - displayed in another Time Zone</td>
<td><input oraField="schemaDateTimeLglRefDisp" oraType="dateTime; legalTimeRef:timeZone; displayRef:timeZoneDisp"/></td>
<td><span oraField="schemaDateTimeLglRefDisp" oraType="dateTime; legalTimeRef:timeZone; displayRef:timeZoneDisp"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<timeZone>US-EASTERN</timeZone>
<timeZoneDisp>US-CENTRAL</timeZoneDisp>
<schemaDate>2007-11-02</schemaDate>
<schemaTime>23.45.00</schemaTime>
<schemaDateTime>2007-11-02-23.45.00</schemaDateTime>
<schemaDateTimeSup>2007-11-02-23.45.00</schemaDateTimeSup>
<schemaDateTimeStd>2007-11-02-23.45.00</schemaDateTimeStd>
<schemaDateTimeStdRef>2007-11-02-23.45.00</schemaDateTimeStdRef>
<schemaDateTimeLgl>2007-11-02-23.45.00</schemaDateTimeLgl>
<schemaDateTimeLglRef>2007-11-02-23.45.00</schemaDateTimeLglRef>
<schemaDateTimeStdDisp>2007-11-02-23.45.00</schemaDateTimeStdDisp>
<schemaDateTimeStdRefDisp>2007-11-02-23.45.00</schemaDateTimeStdRefDisp>
<schemaDateTimeLglDisp>2007-11-02-23.45.00</schemaDateTimeLglDisp>
<schemaDateTimeLglRefDisp>2007-11-02-23.45.00</schemaDateTimeLglRefDisp>
</root>
</xml>
</html>
HTML affiché.
Lorsqu'un élément est associé à un fuseau horaire, le nom du fuseau horaire correspondant est affiché avec la valeur. Ceci est particulièrement utile dans l'exemple référencé comme "Fuseau horaire de base (standard) - Heure gagnée". L'heure 1:28 est ambiguë sans libellé de fuseau horaire. Légalement, l'heure 1:28 a lieu deux fois le 1er novembre 2009 car le passage à l'heure d'hiver a lieu à 2:00. Le nom du fuseau horaire indique si la première ou la deuxième heure est spécifiée pour le fuseau horaire.
Formatage des durées
| Syntaxe |
|---|
| oraType="duration" |
Cette fonction est utilisée pour afficher une durée. Pour un élément d'entrée, la valeur saisie par l'utilisateur est convertie de minutes en heures et minutes. Par exemple, la valeur "90" est convertie en "00:01:30" lors de la sortie du champ d'entrée.
<html>
<body>
<table summary="" border="0" cellpadding="1" cellspacing="1">
<tr>
<td>Duration: </td>
<td><span oraField="duration" oraType="duration"></span></td>
</tr>
<tr>
<td>Duration: </td>
<td><input oraField="duration" oraType="duration"/></td>
</tr>
</table>
</body>
<xml>
<root>
<duration>90</duration>
</root>
</xml>
</html>
HTML affiché.
Formatage du jour dans le mois
| Syntaxe |
|---|
| oraType="dayInMonth" |
Cette fonction est utilisée pour afficher le jour et le mois concaténés.
<html>
<body>
<table summary="" border="0" cellpadding="1" cellspacing="1">
<tr>
<td>Day In Month: </td>
<td><span oraField="dayMonth" oraType="dayInMonth"></span></td>
</tr>
<tr>
<td>Day In Month: </td>
<td><input oraField="dayMonth" oraType="dayInMonth"/></td>
</tr>
</table>
</body>
<xml>
<root>
<dayMonth>0228</dayMonth>
</root>
</xml>
</html>
HTML affiché.
Formatage du mois dans l'année
| Syntaxe |
|---|
| oraType="monthInYear" |
Cette fonction est utilisée pour afficher le mois et l'année concaténés.
<html>
<body>
<table summary="" border="0" cellpadding="1" cellspacing="1">
<tr>
<td>Month In Year: </td>
<td><span oraField="month" oraType="monthInYear"></span></td>
</tr>
<tr>
<td>Month In Year: </td>
<td><input oraField="month" oraType="monthInYear"/></td>
</tr>
</table>
</body>
<xml>
<root>
<month>200811</month>
</root>
</xml>
</html>
HTML affiché.
Formatage monétaire
Cette fonction est utilisée pour afficher un nombre sous forme de montant. Pour les options de configuration se rapportant à la devise, voir le tableau. Pour les éléments d'entrée, si une valeur non numérique est saisie, une erreur est émise.
| Syntaxe | Description |
|---|---|
| oraType="money: " | Indiquer directement un code de devise après le caractère deux-points. |
| oraType="money;currencyRef: " | Indiquer (après le caractère deux-points) le XPath d'un élément faisant référence à un code de devise. |
| oraType="money" | Si aucune devise ou référence de devise n'est indiquée, la devise de l'installation est utilisée. |
<html>
<head>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Amount, currency specified:</td>
<td><span oraType="money:EUR" oraField="totalAmt"></span></td>
</tr>
<tr>
<td>Amount, default currency:</td>
<td><span oraType="money" oraField="totalAmt"></span></td>
</tr>
<tr>
<td>Amount, default input:</td>
<td><input oraType="money" oraField="totalAmt"/></td>
</tr>
<tr>
<td>Amount, currency reference:</td>
<td><input oraType="money;currencyRef:cur" oraField="totalAmt"/></td>
</tr>
</table>
</body>
<xml>
<root>
<totalAmt>50500.09</totalAmt>
<cur>EUR</cur>
</root>
</xml>
</html>
HTML affiché
Formatage des nombres
Cette fonction est utilisée pour afficher un nombre ou valider une valeur saisie. Pour les éléments d'entrée, si une valeur non numérique est saisie, le système renvoie une erreur.
| Syntaxe |
|---|
| oraType="number" |
<html>
<head>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Count:</td>
<td><span oraType="number" oraField="count"></span></td>
</tr>
<tr>
<td>Count, input:</td>
<td><input oraType="number" oraField="count"/></td>
</tr>
</table>
</body>
<xml>
<root>
<count>989</count>
</root>
</xml>
</html>
HTML affiché.
Formatage des références de clé étrangère
Par défaut, lorsqu'un élément avec un oraType fkRef est affiché, les options de chaîne d'informations, de menu contextuel, de navigation et de recherche sont activées (si la référence de clé étrangère a été configurée en conséquence). La syntaxe vous permet de désactiver sélectivement ces fonctions.
A noter que vous pouvez également activer le lien hypertexte de clé étrangère séparément ; pour plus de détails, voir Imbriquer la navigation Framework. Les différents attributs qui régissent la fonctionnalité de référence de clé étrangère sont indiqués ci-dessous. A noter que la valeur par défaut est true dans tous les cas. Pour désactiver la fonction, vous devez utiliser la valeur false.
| Syntaxe |
|---|
| oraType="fkRef:true|false; info:true|false; context:true|false; navigation:true|false; search:true|false" |
- fkRef. La valeur "true" active l'ensemble du traitement des références de clé étrangères ci-dessous. Utilisez la valeur "false" pour désactiver le traitement automatique des références de clé étrangère.
- info. Avec la valeur "true", une chaîne d'informations est affichée dans la matrice IU, si applicable.
- context. Avec la valeur "true" un menu contextuel est affiché devant l'élément de référence de clé étrangère, si applicable.
- navigation. Avec la valeur "true", la chaîne d'informations est affichée sous forme de lien hypertexte, si applicable. Cliquer sur le lien hypertexte amène à la page appropriée.
- search. Avec la valeur "true", une icône de recherche qui lance la zone de recherche est affichée, si applicable.
-
Schéma de la matrice IU :
<schema> <bo fkRef="F1-BOMO"/> </schema> -
HTML de la matrice IU :
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td>Business Object</td> <td><span oraField="bo" oraType="fkRef:true; info:true; context:true; navigation:true;"></span></td> </tr> </table> </body> <xml> <root> <bo>F1-COUNTRY</bo> </root> </xml> </html> -
HTML affiché.
Formatage des consultations
Cette fonction est utilisée pour afficher la description d'une valeur de consultation.
| Syntaxe | Valeurs valides |
|---|---|
| oraType="lookup: " | Nom de champ de consultation après le caractère deux-points. |
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Status:</td>
<td><span oraField="status" oraType="lookup:BATCH_JOB_STAT_FLG"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<status>PD</status>
</root>
</xml>
</html>
HTML affiché.
Formatage des consultations avancées
Cette fonction est utilisée pour afficher la description d'une valeur de consultation avancée.
| Syntaxe | Valeurs valides |
|---|---|
| oraType="lookupBO: " | Nom de code d'objet métier après le caractère deux-points. |
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Value:</td>
<td><span oraField="status" oraType="lookupBO:F1-DeviceDisplayTypes"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<status>oraTablet</status>
</root>
</xml>
</html>
HTML affiché.
Formatage des types de caractéristique
Cette fonction est utilisée pour afficher la description d'une valeur de caractéristique prédéfinie.
| Syntaxe | Valeurs valides |
|---|---|
| oraType="charType: " | Code de type de caractéristique après le caractère deux-points. |
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Skill:</td>
<td><span oraType="charType:CM-SKILL" oraField="skill"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<skill>10</skill>
</root>
</xml>
</html>
HTML affiché.
Formatage des tables de contrôle
Cette fonction est utilisée pour afficher la description d'une table de contrôle à laquelle est associée une table de langues.
| Syntaxe | Valeurs valides |
|---|---|
| oraType="table: " | Code de table après le caractère deux-points. |
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Currency:</td>
<td><span oraType="table:CI_CURRENCY_CD" oraField="curr"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<curr>USD</curr>
</root>
</xml>
</html>
HTML affiché.
Ajouter/supprimer un formatage de grille
| Syntaxe | Description |
|---|---|
| oraType="addGridRow" |
La fonction addGridRow est utilisée pour créer une boîte de dialogue d'insertion de ligne dans la matrice IU.
|
| oraType="deleteGridRow" |
La fonction deleteGridRow est utilisée pour créer une boîte de dialogue de suppression de ligne dans la matrice IU.
|
Exemple :
<html>
<head>
<title>Demonstrate Grid Add and Grid Delete OraTypes</title>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table oraList="listEntry">
<thead>
<tr>
<th/>
<th/>
<th><span>Date</span></th>
<th><span>Amount</span></th>
</tr>
<tr/>
</thead>
<tr>
<td oraType="addGridRow"></td>
<td oraType="deleteGridRow"></td>
<td>
<input oraField="date" oraType="date"></input>
</td>
<td align="right">
<input oraField="amount" oraType="money"></input>
</td>
</tr>
</table>
</body>
<xml>
<root>
<listEntry>
<date>2008-01-01</date>
<amount>44.28</amount>
</listEntry>
<listEntry>
<date>2008-02-01</date>
<amount>32.87</amount>
</listEntry>
<listEntry>
<date>2008-03-01</date>
<amount>21.76</amount>
</listEntry>
</root>
</xml>
</html>
HTML affiché.
Eléments non formatés
Cette fonction est utilisée pour afficher le contenu d'un élément qui contient des données brutes ("raw"), comme le définit le schéma de l'élément.
| Syntaxe |
|---|
| oraType="raw" |
-
Schéma de la matrice IU :
<schema> <rawStuff type="raw"/> </schema> -
HTML de la matrice IU :
<html> <head> <link rel="stylesheet" type="text/css" href="cisDisabled.css"/> <link rel="stylesheet" type="text/css" href="cisEnabled.css"/> </head> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td>Raw Stuff:</td> <td><span oraType="raw" oraField="rawStuff"></span></td> </tr> </table> </body> <xml> <root> <rawStuff> <ele1>text in element 1</ele1> <group1> <ele2>text inside element 2, group 1</ele2> <ele3>text inside element 3, group 1</ele3> </group1> </rawStuff> </root> </xml> </html>HTML affiché.
Formatage des chaînes
Cette fonction est utilisée pour afficher le contenu d'un élément au format XML prêt pour l'impression (pretty-print) lorsque cet élément contient du XML avec échappement.
| Syntaxe |
|---|
| oraType="xmlString" |
Exemple :
<html>
<head>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>XML Stuff:</td>
<td><span oraType="xmlString" oraField="xmlStuff"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<xmlStuff>
<ele1>text in element 1</ele1>
<group1>
<ele2>text inside element 2, group 1</ele2>
<ele3>text inside element 3, group 1</ele3>
</group1>
</xmlStuff>
</root>
</xml>
</html>
HTML affiché.
HTML affiché sans oraType="xmlString"
Formatage HTML
Cette fonction est utilisée pour afficher le contenu d'un élément sous forme de HTML et non sous forme de texte ordinaire. Un élément défini en tant que oraType="fkref" est toujours affiché sous forme de HTML.
| Syntaxe |
|---|
| oraType="html" |
Pour éviter l'exécution de HTML malveillant, certaines balises HTML ne sont pas prises en charge. La liste des balises prises en charge figure dans la définition de contenu géré "F1-HTMLWhiteList".
En cas de détection de HTML non pris en charge, il y a échappement pour la totalité de l'élément, qui est affiché sous forme de texte ordinaire. Par conséquent, il est recommandé d'utiliser l'échappement pour toute chaîne source contribuant à l'élément HTML final, dont on sait qu'elle contient du HTML non valide. Ainsi, l'échappement concerne seulement la chaîne incriminée, et non la totalité de l'élément.
Si l'élément HTML est composé lors de l'écriture d'un script, reportez-vous à la fonction "escape" décrite dans Syntaxe de modification des données pour plus d'informations. Pour l'échappement d'un texte composé en Java, utilisez l'API Java WebStringUtilities.asHTML.
<html>
<head>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table summary="" border="0" cellpadding="1" cellspacing="1">
<tr>
<td>Info :</td>
<td><span oraType="html" oraField="info"></span></td>
</tr>
</table>
</body>
<xml>
<root>
<info><b>text in bold</b></info>
</root>
</xml>
</html>
HTML affiché.
HTML affiché sans oraType="html"
Afficher des étiquettes
Dériver une étiquette d'un élément
Cet attribut permet d'obtenir une étiquette tenant compte de la langue pour un élément HTML <span>, <td> ou <input>.
| Syntaxe | Valeurs valides |
|---|---|
| oraLabel=" " | XPath d'un élément du schéma de la matrice IU. L'élément doit faire référence à l'attribut mapField=, mdField= ou label=. |
-
Schéma de la matrice IU :
<schema> <user mapField="USER_ID"/> <info type="group" mapXML="CLOB"> <city label="Metro Area"/> <age mdField="AGE_LBL"/> </info> </schema> -
HTML :
<html> <head><title oraMdLabel="BUS_LBL"></title></head> <body> <table> <tr> <td oraLabel="user"></td> <td><input oraField="user"/></td> </tr> <tr> <td oraLabel="info/city"></td> <td><input oraField="info/city"/></td> </tr> <tr> <td oraLabel="info/age"></td> <td><input oraField="info/age"/></td> </tr> <tr> <td/> <td><input type="button" oraMdLabel="ACCEPT_LBL"/></td> </tr> </table> </body> <xml> <root> <user>RWINSTON</user> <info> <city>Alameda</city> <age>32</age> </info> </root> </xml> </html>HTML affiché :
Dériver une étiquette d'un champ
Cet attribut permet d'obtenir une étiquette tenant compte de la langue pour un élément HTML <span>, <td>, <input> ou <title>. Le texte de l'étiquette dérive du champ référencé.
| Syntaxe | Valeurs valides |
|---|---|
| oraMdLabel=" " | Code de champ MD. |
-
HTML :
<html> <head><title oraMdLabel="F1_DETAILS_LBL"></title></head> <body> <table> <tr> <td oraLabel="user"></td> <td><input oraField="user"/></td> </tr> <tr> <td oraLabel="info/city"></td> <td><input oraField="info/city"/></td> </tr> <tr> <td oraLabel="info/age"></td> <td><input oraField="info/age"/></td> </tr> <tr> <td/> <td><input type="button" oraMdLabel="ACCEPT_LBL"/></td> </tr> </table> </body> <xml> <root> <user>RWINSTON</user> <info> <city>Alameda</city> <age>32</age> </info> </root> </xml> </html>HTML affiché :
Activer l'aide de la matrice IU
La section Afficher des étiquettes indique comment dériver l'étiquette d'un élément à partir d'un champ MD sous-jacent. Si ce champ MD contient également un texte d'aide, le système génère automatiquement une info-bulle adjacente à l'étiquette de l'élément. Cliquer sur l'info-bulle permet à l'utilisateur d'afficher le texte d'aide.
Il est possible de modifier l'affichage de l'info-bulle. Pour plus d'informations, voir Options d'ergonomie personnalisée.
Recherche à l'aide d'une zone d'explorateur contextuelle
Option de recherche
Cet attribut permet d'activer la fonctionnalité de zone de recherche pour les éléments HTML "input".
| Syntaxe | Valeurs valides |
|---|---|
| oraSearch=" " | Code de zone. |
-
Exemple de définition de la recherche dans le HTML. Schéma de la matrice IU :
<schema> <uiMap/> </schema>HTML de la matrice IU
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td>UI Map with Search </td> <td><input oraField="uiMap" oraSearch="F1-UISRCH"></td> </tr> </table> </body> <xml> <root> <uiMap/> </root> </xml> </html> -
Exemple de définition de la recherche dans le schéma. Schéma de la matrice IU :
<schema> <uiMap search="F1-UISRCH"/> </schema>HTML de la matrice IU
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td>UI Map with Search </td> <td><input oraField="uiMap"></td> </tr> </table> </body> <xml> <root> <uiMap/> </root> </xml> </html> -
Exemple avec zone de recherche définie par la référence de clé étrangère. Schéma de la matrice IU :
<schema> <uiMap fkRef="F1-UISRC"/> </schema>HTML de la matrice IU
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td>UI Map with Search </td> <td><input oraField="uiMap"></td> </tr> </table> </body> <xml> <root> <uiMap/> </root> </xml> </html>
Quel que soit le cas, le HTML affiché est le même.
Initialisation des champs de recherche
Cet attribut facultatif est utilisé pour initialiser des filtres de zone de recherche. Plusieurs filtres peuvent être initialisés. Cet attribut ne peut être utilisé que conjointement à l'attribut oraSearch.
| Syntaxe | Valeurs valides | Options de valeur de champ | Commentaires |
|---|---|---|---|
| oraSearchField=" " |
Une ou plusieurs paires nom de champ:valeur de champ dont les deux éléments sont séparés par le caractère deux-points. Les différentes paires sont séparées par le caractère point-virgule. oraSearchField="fieldName:fieldValue: ..."Le nom de champ identifie le filtre de zone à initialiser au lancement de la recherche. Il doit correspondre à la valeur de la mnémonique searchField spécifiée dans le paramètre de filtre utilisateur ou filtre masqué de la zone de recherche. |
Aucune valeur | Si vous n'indiquez pas de valeur pour le champ, la valeur de l'élément d'entrée contenant l'attribut oraSearchField est utilisée. |
| XPath | Indiquez le XPath de l'élément de schéma contenant la valeur à utiliser. | ||
| 'Littéral' | Indiquez la valeur littérale à utiliser. |
Dans l'exemple ci-dessous, deux valeurs de filtre sont initialisées :
<schema>
<bo/>
<uiMap/>
</schema>
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>UI Map with Search </td>
<td><input oraField="uiMap" oraSearch="F1-UISRCH" oraSearchField="MAP_CD; BUS_OBJ_CD:bo;"></td>
</tr>
</table>
</body>
<xml>
<root>
<bo/>
<uiMap/>
</root>
</xml>
</html>
Mapping des champs de recherche renvoyés
Cet attribut facultatif est utilisé pour orienter les valeurs renvoyées par la zone de recherche. Plusieurs champs peuvent être spécifiés. Cet attribut ne peut être utilisé que conjointement à l'attribut oraSearch.
| Syntaxe | Valeurs valides | Options de valeur de champ | Commentaires |
|---|---|---|---|
| oraSearchOut=" " |
Une ou plusieurs paires nom de champ:valeur de champ dont les deux éléments sont séparés par le caractère deux-points. Les différentes paires sont séparées par le caractère point-virgule. oraSearchOut="field name:xpath target; ..."Le nom de champ identifie le résultat de recherche renvoyé par la zone de requête. Il doit correspondre à la mnémonique ELEMENT_NAME définie dans le paramètre des résultats de recherche de la zone d'explorateur. |
Aucune valeur | Si vous n'indiquez pas de valeur pour le champ, l'élément d'entrée contenant l'attribut oraSearchField reçoit la valeur renvoyée. |
| XPath | Indiquez le XPath de l'élément de schéma devant recevoir la valeur renvoyée. |
Dans l'exemple ci-dessous, deux valeurs sont renvoyées :
<schema>
<bo/>
<mo/>
</schema>
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>BO Search </td>
<td><input oraField="bo" oraSearch="Z1-BOSRCH" oraSearchOut="BUS_OBJ_CD; MO_CD:mo;"></td>
</tr>
</table>
</body>
<xml>
<root>
<bo/>
<mo/>
</root>
</xml>
</html>
Afficher les erreurs
Afficher les variables d'erreur
Seules les variables d'erreur ci-dessous peuvent être affichées.
| Syntaxe |
|---|
| oraErrorVar="ERRMSG-TEXT" |
| oraErrorVar="ERRMSG-LONG" |
| oraErrorVar="ERRMSG-CATEGORY" |
| oraErrorVar="ERRMSG-NUMBER" |
...
<table width="100%" cellpadding="12">
<tr class="oraErrorText">
<td>
<a href="" onclick="oraShowErrorAlert(); return false;">
<span class="oraErrorText" oraErrorVar="ERRMSG-TEXT"></span>
</a>
</td>
</tr>
</table>
...
HTML affiché
Mettre en évidence un champ en erreur
| Syntaxe | Commentaires |
|---|---|
| oraError="automate:true|false; prefix: " | Avec automate:true, l'élément en erreur est automatiquement mis en évidence lors de l'émission de l'erreur. A noter que true est la valeur par défaut ; elle n'a donc pas à être spécifiée. Pour désactiver la mise en évidence du champ, spécifiez automate:false. |
| Le système compare le nom d'élément référencé dans l'erreur avec les noms d'élément dans la matrice IU. Si les éléments du schéma figurent dans un XPath qui ne peut pas être comparé à ce qui est référencé par l'erreur, utilisez prefix:XPath pour l'indiquer. |
Dans l'exemple HTML ci-dessous, les éléments de la matrice sont définis dans un groupe nommé boGroup. Le nom d'élément renvoyé par l'erreur ne mentionne pas ce groupe ; pour que la mise en évidence du champ fonctionne correctement, l'attribut prefix: doit donc indiquer le nom du groupe.
<html>
<head>
<title>User Zone Input</title>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body oraError="automate:true; prefix:boGroup">
<table width="100%" cellpadding="12">
<tr class="oraErrorText">
<td>
<a href="" onclick="oraShowErrorAlert(); return false;">
<span class="oraErrorText" oraErrorVar="ERRMSG-TEXT"></span>
</a>
</td>
</tr>
</table>
<table width="100%" border="0" cellpadding="4">
<tr style="padding-top:30px;">
<td align="right" class="label">User Id</td>
<td>
<span oraField="boGroup/userId" class="normal"/>
</td>
</tr>
<tr>
<td align="right" class="label">First Name</td>
<td>
<input oraField="boGroup/firstName" class="normal"/>
</td>
</tr>
<tr>
<td align="right" class="label">Last Name</td>
<td>
<input oraField="boGroup/lastName" class="normal"/>
</td>
</tr>
</table>
</body>
<xml>
<root>
<boGroup>
<userId>BOND007</userId>
<firstName>James</firstName>
<lastName></lastName>
</boGroup>
</root>
</xml>
</html>
HTML affiché avec élément en erreur égal à "lastName" :
Remplacer le nom de l'élément en erreur
Dans les rares cas où le nom d'élément renvoyé par l'erreur ne correspond pas au nom d'élément dans la matrice, vous pouvez ajouter un attribut explicite pour indiquer le nom de l'élément en erreur.
| Syntaxe | Valeurs valides | Commentaires |
|---|---|---|
| oraErrorElement= | "nom d'élément" | Le nom d'élément indiqué ici doit être strictement identique au nom de l'élément en erreur affecté lors de la génération de l'erreur. Il est possible de faire référence à plusieurs champs HTML à l'aide du même nom d'élément en erreur. |
L'exemple ci-dessous illustre un scénario où le nom d'élément associé à l'erreur diffère du nom d'élément dans la matrice.
<html>
<head>
<title>User Zone Input</title>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table width="100%" cellpadding="12">
<tr class="oraErrorText">
<td>
<a href="" onclick="oraShowErrorAlert(); return false;">
<span class="oraErrorText" oraErrorVar="ERRMSG-TEXT"></span>
</a>
</td>
</tr>
</table>
<table width="100%" border="0" cellpadding="4">
<tr style="padding-top:30px;">
<td align="right" class="label">User Id</td>
<td>
<span oraField="userId" class="normal"/>
</td>
</tr>
<tr>
<td align="right" class="label">First Name</td>
<td>
<input oraField="firstName" class="normal" oraErrorElement="firstName"/>
</td>
</tr>
<tr>
<td align="right" class="label">Last Name</td>
<td>
<input oraField="familyName" class="normal" oraErrorElement="lastName"/>
</td>
</tr>
</table>
</body>
<xml>
<root>
<userId>BOND007</userId>
<firstName>James</firstName>
<familyName></familyName>
</root>
</xml>
</html>
HTML affiché.
Afficher une fenêtre contextuelle d'erreur
Lorsque le texte de l'erreur est affiché, cette fonction peut être utilisée pour un affichage contextuel de la boîte de dialogue d'erreur standard (qui affiche plus d'informations) lorsque l'utilisateur clique sur le message d'erreur.
| Syntaxe |
|---|
| oraShowErrorAlert(); return false; |
<html>
<head>
<link rel="stylesheet" type="text/css" href="cisDisabled.css"/>
<link rel="stylesheet" type="text/css" href="cisEnabled.css"/>
</head>
<body>
<table width="100%" cellpadding="12">
<tr class="oraErrorText">
<td>
<a href="" onclick="oraShowErrorAlert(); return false;">
<span class="oraErrorText" oraErrorVar="ERRMSG-TEXT"></span>
</a>
</td>
</tr>
</table>
<table>
<tr>
<td >Address:</td>
<td><input type="text" oraField="address"/></td>
</tr>
<tr>
<td>City:</td>
<td><input type="text" oraField="city"/></td>
</tr>
<tr>
<td>State:</td>
<td><input type="text" oraField="state"/></td>
</tr>
<tr>
<td>Zip:</td>
<td><input type="text" oraField="zip"/></td>
</tr>
<tr>
<td/>
<td style="padding-top=15px;">
<oraInclude map="F1-SaveCancelButtons"/>
</td>
</tr>
</table>
</body>
<xml>
<root>
<address>123 Main St</address>
<city>Alameda</city>
<state>CA</state>
<zip>94770</zip>
</root>
</xml>
</html>
HTML affiché.
Boîte de dialogue d'erreur contextuelle standard lancée lorsque l'utilisateur clique sur le message d'erreur :
Lancer un script JavaScript pour des événements du navigateur
Utiliser JavaScript Framework
De nombreux événements JavaScript sont utilisables dans l'environnement HTML/JavaScript. Ce sont onLoad, onBlur, onChange, etc. Le framework de matrice IU utilise également certains de ces événements. Il est important que toutes les matrices IU que vous développez fonctionnent avec le framework afin que les résultats soient cohérents (les événements ne sont pas toujours exécutés dans le même ordre).
L'approche recommandée pour une gestion sûre des mises à jour des champs de chargement et de traitement dans les matrices IU est décrite ci-dessous.
Si un script JavaScript est requis dans un fragment ou une matrice IU XHTML, il faudra le lier dans une balise ![CDATA[ ]] de façon à obtenir un document XML valide. A noter que les balises elles-mêmes devront peut-être être transformées en commentaires pour assurer la compatibilité avec des navigateurs plus anciens. Par exemple :
<script type="text/javascript">
/* <![CDATA[ */
//
// javascript
//
/* ]]> */
</script>
Evénement de modification d'élément
| Syntaxe | Valeurs valides |
|---|---|
| oraChange=" " | Fonction JavaScript. |
Au moment du chargement de la matrice IU, si un gestionnaire d'événements est déjà attaché à un élément HTML, le framework l'enlève et attache un gestionnaire d'événements combiné. Le gestionnaire combiné appelle d'abord un gestionnaire du framework et ensuite les autres gestionnaires (personnalisés).
Dans l'exemple ci-dessous, la fonction oraInvokeBS est exécutée lorsque l'utilisateur clique sur le bouton.
<html>
<head>
<title>oraInvokeBS test</title>
</head>
<body>
<table>
<tr>
<td>User Id:</td>
<td>
<input oraField= "xmlGroup/userId"/>
<input type="button" value="Search" oraChange="oraInvokeBS('UserSearch','xmlGroup');"/>
</td>
</tr>
<tr>
<td/>
<td>Search Results</td>
</tr>
<tr>
<td/>
<td>
<table oraList="xmlGroup/searchList">
<tr>
<td><span oraField="userId"></span>
</td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<xml>
<root>
<xmlGroup>
<userId/>
<searchList>
<userId></userId>
</searchList>
</xmlGroup>
</root>
</xml>
</html>
Evénement de chargement de page
| Syntaxe | Valeurs valides |
|---|---|
| oraLoad=" " | Fonction JavaScript. |
-
Dans l'exemple ci-dessous, la fonction oraDisplayNone est exécutée lors du chargement de page :
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td oraLoad="oraDisplayNone(item,'userId','')">User Id: </td> <td><span oraField="userId"></span></td> </tr> </table> </body> <xml> <root> <userId>SPLAXT</userId> </root> </xml> </html> -
HTML affiché
Evénement après chargement de page
| Syntaxe | Valeurs valides |
|---|---|
| oraAfterLoad="" | Fonction JavaScript. |
Dans l'exemple ci-dessous, la fonction oraGetValueFromScript est exécutée après le chargement de page.
<div>
<label for="boGroup_parameters_externalSystem" oraLabel="boGroup/parameters/externalSystem">
</label>
<span>
<select oraSelect="bs:F1-RetrieveExternalSystems" class="oraInput"
id="boGroup_parameters_externalSystem" oraField="boGroup/parameters/externalSystem"
oraSelectOut="valuePath:results/externalSystem; descPath:results/description"
oraSelectIn="outboundMsgType:boGroup/parameters/outboundMsgType"
oraAfterLoad
="oraGetValueFromScript(document.getElementById('boGroup_parameters_externalSystem');">
</select>
</span>
</div>
Masquer des éléments
Masquer à l'aide d'une fonction
Le système propose plusieurs techniques pour masquer un élément HTML.
| Syntaxe | Valeurs valides | Commentaires |
|---|---|---|
| oraDisplayNone(item ); | (item, 'XPath', 'valeur', 'opérateur') | A utiliser pour masquer un élément selon la valeur d'un autre élément (référencé par son XPath). Pour interroger une valeur vide, indiquez pour valeur ' '. L'opérateur par défaut est '='. Un autre opérateur tel que '!=', '>' ou '<' peut être défini. |
| (item, function name,true | false) | A utiliser pour spécifier une fonction JavaScript, qui doit renvoyer une valeur booléenne. | |
| oraIsSuppress="true" | Utilisez cette option pour les champs qui doivent être masqués en permanence et qui ne dépendent pas d'un autre élément. Définissez cet attribut sur l'élément HTML (élément div). |
-
Exemple où l'étiquette User Id est masquée en l'absence de valeur pour l'ID utilisateur.
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td oraLoad="oraDisplayNone(item,'userId','')">User Id: </td> <td><span oraField="userId"></span></td> </tr> </table> </body> <xml> <root> <userId></userId> </root> </xml> </html> -
Exemple où le bouton Save est masqué lorsque l'utilisateur ne dispose pas de droits d'accès à l'action de modification ("C") pour le service applicatif "F1-DFLTS".
<html> <body> <table summary="" border="1" cellpadding="1" cellspacing="1"> <tr> <td oraLoad="oraDisplayNone(item, oraHasSecurity('F1-DFLTS', 'C'), false );"> <input name="Save" type="button" onclick="oraInvokeBO('CM-IndividualTaxpayer', null, 'replace')"/> </td> </tr> </table> </body> <xml> <root> <userId></userId> </root> </xml> </html>
Vérifier les droits de sécurité de l'utilisateur
Le système fournit deux fonctions qui permettent de vérifier les droits d'accès d'un utilisateur à un service applicatif donné ainsi que le mode d'accès. Elles sont souvent utilisées pour masquer des éléments.
| Syntaxe | Paramètres |
|---|---|
| oraHasSecurity( ) | 'Code de service applicatif' |
| 'Mode d'accès' | |
| oraHasSecurityPath('x','y') | 'XPath du service applicatif' |
| 'XPath du mode d'accès' |
Pour un exemple de fonction oraHasSecurity, voir la section précédente. L'exemple ci-dessous illustre un cas où le bouton d'état est masqué lorsque l'utilisateur ne dispose pas de droits d'accès au service applicatif "FORMTST" en mode d'accès "ACT".
<html>
<body>
<table>
<tr>
<td oraLoad="oraDisplayNone(item, oraHasSecurityPath('appService', 'accessMode'), false );">
<input oraField="statusLabel" type="button" onclick="oraRunScript('UpdateState','status');"/>
</td>
</tr>
</table>
</body>
<xml>
<root>
<status>ACTIVATE</status>
<statusLabel>Activate</statusLabel>
<appService>FORMTST</appService>
<accessMode>ACT</accessMode>
</root>
</xml>
</html>
Appeler des services basés sur schéma
Le système fournit des fonctions permettant d'appeler un objet métier, un service fonctionnel ou un script de service.
Fonction d'appel d'objet métier
Cette fonction est utilisée pour interagir directement avec un objet métier à partir du HTML de la matrice IU. Elle renvoie la valeur "true" ou "false" selon que l'appel rencontre ou non une erreur.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraInvokeBO( ) | 'Nom d'objet métier' | |
| 'XPath' ou null | Identifie un élément de groupe via XPath. Si vous spécifiez le mot null, la totalité de l'objet XML incorporé est transmise. | |
| 'action' | Indique l'action à utiliser. Valeurs valides : add, delete, read, update, replace, fastAdd et fastUpdate. Documentation de référence :
Pour plus d'informations sur les différentes actions des objets métier, voir Actions d'objet métier. |
Exemple avec instruction appelée dans une fonction JavaScript.
function invokeBO {
if (!oraInvokeBO('F1-User','xmlGroup','read')) {
oraShowErrorAlert();
return;
}
}
Exemple avec instruction appelée dans onClick.
<input type="button" class="oraButton" oraMdLabel="DISPLAY_LBL" onClick="oraInvokeBO('F1-User');"/>
Fonction d'appel de service fonctionnel
Cette fonction est utilisée pour interagir directement avec un service fonctionnel à partir du HTML de la matrice IU. Elle renvoie la valeur "true" ou "false" selon que l'appel rencontre ou non une erreur.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraInvokeBS( ) | 'Nom de service fonctionnel' | |
| 'XPath' ou null | Identifie un élément de groupe via XPath. Si vous spécifiez le mot null, la totalité de l'objet XML incorporé est transmise. |
Exemple avec instruction codée dans une fonction JavaScript.
function invokeBS {
if (!oraInvokeBS('F1-UserSearch','xmlGroup')) {
oraShowErrorAlert();
return;
}
}
Exemple avec instruction appelée via onClick.
<input type="button" class="oraButton" oraMdLabel="DISPLAY_LBL" onClick="oraInvokeBS('F1-RetrieveInfo');"/>
Fonction d'appel de script de service
Cette fonction est utilisée pour interagir directement avec un script de service à partir du HTML de la matrice IU. Elle renvoie la valeur "true" ou "false" selon que l'appel rencontre ou non une erreur.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraInvokeSS( ) | 'Nom de script de service' | |
| 'XPath' ou null | Identifie un élément de groupe via XPath. Si vous spécifiez le mot null, le document appartenant au noeud parent est transmis. Si le noeud parent est insuffisant, la syntaxe suivante peut être utilisée pour transmettre la totalité du document :
|
Exemple avec instruction appelée dans une fonction JavaScript :
function invokeSS {
if (!oraInvokeSS('F1-GetUsers','xmlGroup')) {
oraShowErrorAlert();
return;
}
}
Exemple avec instruction appelée dans onClick.
<input type="button" class="oraButton" oraMdLabel="DISPLAY_LBL" onClick="oraInvokeSS('F1-GetUserInfo');"/>
Actualiser une matrice ou une page de portail affichée
Actualiser une matrice
Cette fonction est utilisée pour actualiser uniquement la zone de matrice émettant la commande.
| Syntaxe |
|---|
| oraRefreshMap; |
...
<tr>
<td/>
<td><input type="button" onclick="oraRefreshMap();" value="Refresh"/></td>
</tr>
...
Actualiser une page
Cette fonction est utilisée pour actualiser toutes les zones du portail.
| Syntaxe |
|---|
| oraRefreshPage; |
...
<tr>
<td/>
<td><input type="button" onclick="oraRefreshPage();" value="Refresh"/></td>
</tr>
...
Lancer un script APT
Lancer un script APT
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraRunScript( ); | 'Code de script APT'. | |
| 'Elément XPath' | Une ou plusieurs valeurs d'élément peuvent être transmises au script APT où elles peuvent être référencées en tant que variables temporaires. |
Dans l'exemple ci-dessous, une variable temporaire nommée "personId" est créée avec la valeur "1234567890" et le script APT nommé "Edit Address" est lancé.
<html>
<body>
<table>
<tr>
<td>
<div oraField="address"></div>
<span oraField="city"></span>
<span>,</span>
<span oraField="state"></span>
<span oraField="zip"></span>
<span oraField="country"></span>
<a href="" onClick="oraRunScript('Edit Address','personId');">edit</a>
</td>
</tr>
</table>
</body>
<xml>
<root>
<personId>1234567890</personId>
<address>123 Main St</address>
<city>Alameda</city>
<state>CA</state>
<zip>94770</zip>
</root>
</xml>
</html>
HTML affiché.
Lancer un script APT avec des valeurs
Cette fonction est utilisée pour lancer un script APT avec des paires nom-valeur à placer en stockage temporaire. Plusieurs valeurs peuvent être transmises. Le script APT peut ensuite faire référence aux variables temporaires par leur nom.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraRunScriptWithValues( ); | 'Code de script APT'. | |
| 'Nom d'élément XPath':valeur | Une ou plusieurs paires nom d'élément:valeur. |
Dans l'exemple ci-dessous, une fonction JavaScript nommée "editUser()" est chargée de lancer le script APT nommé "UserEdit". La variable temporaire nommée "userId" sera créée avec la valeur "CMURRAY".
<html>
<head>
<script type="text/javascript">
function editUser() {
var values = {'userId': 'CMURRAY'};
oraRunScriptWithValues('UserEdit', values);
return;
}
</script>
</head>
<body>
...
</body>
</html>
Quitter la matrice IU avec des valeurs liées
Cette fonction est utilisée pour quitter une matrice IU. Lorsque vous quittez la matrice, vous pouvez spécifier une valeur à renvoyer au script et indiquer si le XML mis à jour doit être renvoyé.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraSubmitMap( ); | 'Valeur renvoyée' | |
| Valeur booléenne | Indique si le XML mis à jour doit être renvoyé. Valeur par défaut : true. |
Dans l'exemple ci-dessous, le bouton Save renvoie les informations mises à jour, le bouton Cancel ne le fait pas.
<html>
<body>
<table>
<tr>
<td/>
<td style="padding-bottom:15px;">
<a href="" onclick="oraShowErrorAlert(); return false;">
<span oraErrorVar="ERRMSG-TEXT"></span></a>
</td>
</tr>
<tr>
<td >Address:</td>
<td><input type="text" oraField="address"/></td>
</tr>
<tr>
<td>City:</td>
<td><input type="text" oraField="city"/></td>
</tr>
<tr>
<td>State:</td>
<td><input type="text" oraField="state"/></td>
</tr>
<tr>
<td>Zip:</td>
<td><input type="text" oraField="zip"/></td>
</tr>
<tr>
<td/>
<td style="padding-top=15px;">
<input type="button" value="Save" onClick="oraSubmitMap('SAVE');"/>
<input type="button" value="Cancel" onClick="oraSubmitMap('CANCEL',false);"/>
</td>
</tr>
</table>
</body>
<xml>
<root>
<address>123 Main St</address>
<city>Alameda</city>
<state>CA</state>
<zip>94770</zip>
</root>
</xml>
</html>
Boutons Save et Cancel affichés :
Inclure un fragment de matrice
Cette fonction est utilisée pour imbriquer un fragment de matrice dans une autre matrice IU. A noter qu'il est possible d'utiliser le noeud "include" dans une matrice ou un fragment de matrice.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| <oraInclude map=' ' prefixPath=' '/> | map='Code de matrice IU' | |
| prefixPath='Xpath' | Spécifiez éventuellement un préfixe XPath à ajouter à chaque valeur d'attribut oraField, oraLabel, oraList, oraSelect valuePath et descPath, oraDownloadData et oraUploadData incluse définie dans le HTML du fragment de matrice IU inclus. Remarque :
Cette fonctionnalité s'applique uniquement aux valeurs d'attribut XPath lorsque celles-ci n'apparaissent pas sous un attribut oraList. Les valeurs XPath dans un tableau contenant un attribut oraList ne sont pas concernées par prefixPath. |
-
Exemple de fragment de matrice avec deux boutons, nommé "F1-SaveCancelButtons".
<input onClick ="oraSubmitMap('SAVE');" oraMdLabel="SAVE_BTN_LBL" class="oraButton" type="button"/> <input onClick ="oraSubmitMap('CANCEL',false);" oraMdLabel="CANCEL_LBL" class="oraButton" type="button"/> -
Exemple de matrice incluant le fragment de matrice nommé "F1-SaveCancelButtons".
... <tr> <td colspan="2" align="center"> <oraInclude map="F1-SaveCancelButtons"/> </td> </tr> ...
Inclure un composant Web
Un composant Web est un élément HTML personnalisé qui produit une fonction d'interface utilisateur spécifique. Chaque composant Web pris en charge possède généralement un ou plusieurs attributs HTML définis qui affectent le fonctionnement du composant Web et son apparence. Les composants Web plus complexes peuvent avoir un objet de configuration système correspondant qui définit le comportement et les informations affichés par l'élément d'interface utilisateur résultant. Par exemple, le composant Web qui produit une "arborescence" d'informations possède une table de configuration d'arborescence, qui définit les détails sur la façon d'extraire les informations de l'arborescence et d'afficher chaque noeud.
Attributs communs
Voici quelques attributs communs pouvant être utilisés pour chaque composant Web :
-
Référence à l'instance spécifique de l'objet de configuration qui régit les détails à produire.
-
Capacité à transmettre les données de contexte sous forme de paires nom/valeur.
-
Un "mode" prenant en charge l'affichage d'un aperçu de la fonctionnalité
-
Valeur littérale. La valeur peut être référencée directement. Exemple :
treename="F1-Tree" -
Référence Xpath. Les références XPath doivent utiliser la syntaxe explicite x[value]. Exemple :
treename="x[migrationTree]" -
Référence de contexte global ou de portail. Ces références doivent utiliser la syntaxe explicite c[value].
treename="c[TREE_NAME]" -
Référence d'étiquette de champ. Ces références doivent utiliser la syntaxe explicite md[value] .
text=md[F1_ADD_LBL]" -
Référence de texte d'aide de champ. Ces références doivent utiliser la syntaxe explicite mdh[value] .
text=mdh[F1_OPERATIONS_LBL]"
Pour les attributs complexes qui prennent en charge des paires nom/valeur, la syntaxe de définition des noms et des valeurs suit les mêmes règles que celles ci-dessus pour les valeurs littérales, les références XPath et le contexte. Un signe deux-points (":") doit être utilisé pour séparer le nom de la valeur et un point-virgule (";") pour séparer chaque paire.
context="FIELD_NAME1:x[value1];FIELD_NAME2:F1AB;x[fieldName3]:c[FIELD_NAME3];"
Un composant Web donné peut avoir des attributs HTML supplémentaires propres à sa fonctionnalité.
<body>
<oraInclude map="F1-OJETLIBSR"/>
..
</body>
Les sections suivantes décrivent chaque composant Web pris en charge.
Arborescences
Pour plus d'informations sur la configuration de l'arborescence, voir Arborescences.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| <ou-tree...></ou-tree> | treename="singleValue" | Vous devez fournir une référence au nom de l'objet d'arborescence qui définit la configuration de l'arborescence à afficher. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. |
| context="..." | Vous pouvez éventuellement transmettre une ou plusieurs paires nom/valeur. La syntaxe suit l'exemple présenté dans les informations d'attributs complexes ci-dessus. |
L'exemple suivant utilise une référence explicite à une arborescence et ne transmet aucun contexte. L'arborescence dépend du contexte global auquel l'algorithme de noeud d'arborescence a accès.
<ou-tree treename="C1-PremiseTree"></ou-tree>
Données clés contextuelles
Pour plus d'informations sur la configuration liée à la définition de données clés contextuelles, voir Données clés contextuelles.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| <ou-insights ...></ou-insights> | insightType="singleValue" | Utilisez cet attribut pour indiquer un type de données clés à afficher. Cet attribut ou l'attribut de classe de données clés doit être fourni. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. |
| insightClass="singleValue" | Utilisez une classe de données clés pour afficher tous les types de données clés du groupe de données clés associé à cette classe. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. | |
| context="..." | Vous pouvez éventuellement transmettre une ou plusieurs paires nom/valeur. La syntaxe suit l'exemple présenté dans les informations d'attributs complexes ci-dessus. | |
| mode="preview" | Vous pouvez également transmettre un mode "preview" pour indiquer à l'algorithme de données clés sous-jacent qui prépare les données que les données clés sont appelées en mode aperçu, sans contexte disponible. Dans l'idéal, l'algorithme renvoie des exemples d'informations. | |
| class=" " | Indiquez éventuellement une classe d'aide CSS pour contrôler les aspects des données clés affichées. Valeurs prises en charge : class="card-full-width" : applicable aux données clés Carte. Utilisez cette classe d'options pour vous assurer que la largeur des données clés Carte s'ajuste à la largeur de la zone qui les contient. Les données clés Carte qui ne définissent pas ce paramètre utilisent une largeur fixe. |
L'exemple suivant provient de la matrice pour l'aperçu des données clés où le type de données clés est celui en contexte. Aucune donnée de contexte n'est nécessaire et le mode est "preview".
<ou-insights insightType="x[insightType]" mode="preview"></ou-insights>
L'exemple suivant utilise une classe de données clés et transmet des valeurs de contexte à partir d'éléments XPath avec des noms de contexte définis explicitement.
<ou-insights insightClass="C1CI" context="PER_ID:x[personId];ACCT_ID:x[accountId];PREM_ID:x[premiseId];"></ou-insights>
Bouton
Le composant web Bouton prend en charge l'ensemble standard de formats de bouton utilisé dans le système.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| <ou-button...></ou-button> | type=”singleValue” | Vous devez définir le type de bouton à afficher. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. Les valeurs de type valides sont :
Si aucun attribut de type n'est fourni, une image de "bouton cassé" s'affiche. |
| img=”singleValue” | Définissez le chemin de l'image à afficher. Cet attribut ou l'attribut de référence à l'image doit être fourni pour un type de bouton qui inclut une image. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. Notez que pour les images SVG, si la référence inclut uniquement le nom de fichier SVG sans chemin, le chemin est supposé être le référentiel SVG du Framework. |
|
| imgRef=”singleValue” | Définissez la référence de l'icône d'affichage de l'image à utiliser. Cet attribut ou l'attribut de l'image doit être fourni pour un type de bouton qui inclut une image. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. | |
| text="..." | Définissez les différents éléments de texte nécessaires au bouton. La syntaxe suit l'exemple présenté dans les informations d'attributs complexes ci-dessus. Les valeurs de nom d'élément de texte valides sont les suivantes :
|
|
| menu=”singleValue” | Définissez le menu à utiliser avec le bouton. Cet attribut doit être fourni pour un type de bouton qui inclut un contrôle de menu. Cet attribut attend une valeur unique qui respecte la syntaxe décrite dans la section à valeur unique ci-dessus. | |
| disabled=”singleValue” | Il s'agit d'un attribut HTML standard. La valeur "true"ou simplement la présence du texte "disabled" résultera en un bouton initialement désactivé. | |
| security="..." | Définissez éventuellement les paramètres de sécurité du bouton. Le bouton est masqué si l'utilisateur ne dispose pas des droits d'accès appropriés. La syntaxe suit l'exemple présenté dans les informations d'attributs complexes ci-dessus. Les valeurs de nom d'élément de sécurité valides sont les suivantes :
|
|
| clickAction="..." | Définissez éventuellement l'action à effectuer lorsque vous cliquez sur le bouton. La syntaxe suit l'exemple présenté dans les informations d'attributs complexes ci-dessus. Les valeurs de nom spécifiques pour l'attribut sont les suivantes :
L'attribut peut également inclure d'autres paires nom/valeur qui définissent les informations à transmettre au script ou à utiliser comme champs de contexte de navigation. Outre les paramètres d'attribut de sécurité, le système vérifie que l'utilisateur a accès au script ou au chemin de navigation avant d'effectuer l'action. L'attribut HTML standard 'onClick' peut toujours être utilisé. Si le HTML inclut un attribut 'onClick' et un attribut 'clickAction', l'attribut 'onClick' sera prioritaire |
Voici un exemple de bouton simple avec du texte.
<ou-button type="text" text="label:md[F1_BOOKMARK_LBL];"></ou-button>
Voici un exemple de bouton icône utilisant une référence d'icône d'affichage.
<ou-button type="image" imgRef="F1CMNT"></ou-button>
Voici un exemple de bouton de menu avec image.
<ou-button type="imageMenu" imgRef="F1STTGS" menu="CI_CONTEXTSCRIPT" text="tooltip:md[F1INSTY_VIS_LBL];></ou-button>
Voici un exemple de bouton avec texte qui permet d'accéder à une autre page.
<ou-button type="text" text="label:md[ALG_CD];tooltip:md[GOTO_ALG]" clickAction="action:NAVIGATE; navopt:f1algqTabMenu; ALG_CD:x[algorithm];></ou-button>
Afficher le schéma par défaut lors de l'ajout
Les valeurs par défaut figurant dans le schéma de la matrice d'IU sont affichées dans les champs d'entrée de la matrice si un noeud incorporé <action> a pour valeur "ADD" ou est vide.
| Syntaxe |
|---|
| <action>ADD</action> |
| <action> </action> |
La valeur par défaut du schéma de l'élément <description> sera affichée :
<schema>
<action/>
<boGroup type="group">
<key/>
<description default="enter description here"/>
</boGroup>
</schema>
<html>
<body>
<table summary="" border="1" cellpadding="1" cellspacing="1">
<tr>
<td>Description </td>
<td><input oraField="boGroup/description"></td>
</tr>
</table>
</body>
<xml>
<root>
<action>ADD</action>
<boGroup>
<key/>
<description/>
</boGroup>
</root>
</xml>
</html>
HTML affiché.
Configurer un graphique
Outre l'intégration de graphiques avec des zones, le système prend en charge l'utilisation des mêmes attributs dans le HTML de la matrice IU pour configurer une représentation graphique d'une liste XML. Le concepteur peut contrôler le type, la taille, la position et le contenu du graphique à l'aide de ces attributs. Pour plus d'informations sur les attributs et la syntaxe, voir la section Configuration de graphique d'explorateur de données.
Exemples de graphiques
-
Exemple de configuration d'un graphique à secteurs :
<html> <head> <title>Pie Chart</title> </head> <body> <div style="width:100%; height:290px;" oraChart="type:pie;" oraChartSeries1="list:set; labelPath:date; amount:amount; " oraChartBroadcast="BILL_ID:billId;"> </div> </body> <xml> <root> <set> <date>05-02-2003</date> <amount>163.24</amount> <billId>592211649441</billId> </set> <set> <date>06-02-2003</date> <amount>97.29</amount> <billId>592211649442</billId> </set> <set> <date>07-02-2003</date> <amount>54.38</amount> <billId>592211649443</billId> </set> </root> </xml> </html> -
Graphique à secteurs affiché pour une série unique :
-
Exemple de configuration d'un graphique à courbes, d'un graphique en grappes et d'un graphique à barres empilées, avec deux séries chacun :
<html> <head> <title>Stacked Chart</title> </head> <body> <div style="width:100%; height=300px;" oraChart="type:line;" oraChartSeries1="list:set; xaxis:date; label:Charge; amount:amount; " oraChartSeries2="list:set; xaxis:date; label:Balance; amount:balance; " oraChartBroadcast="BILL_ID:billId;"> </div> <div style="width:100%; height=300px;" oraChart="type:cluster;" oraChartSeries1="list:set; xaxis:date; label:Charge; amount:amount; " oraChartSeries2="list:set; xaxis:date; label:Balance; amount:balance; " oraChartBroadcast="BILL_ID:billId;"> </div> <div style="width:100%; height=300px;" oraChart="type:stacked;" oraChartSeries1="list:set; xaxis:date; label:Charge; amount:amount; " oraChartSeries2="list:set; xaxis:date; label:Balance; amount:balance; " oraChartBroadcast="BILL_ID:billId;"> </div> </body> <xml> <root> <set> <date>05-02-2003</date> <amount>163.24</amount> <balance>163.24</balance> <billId>592211649441</billId> </set> <set> <date>06-02-2003</date> <amount>97.29</amount> <balance>260.53</balance> <billId>592211649442</billId> </set> <set> <date>07-02-2003</date> <amount>54.38</amount> <balance>314.91</balance> <billId>592211649443</billId> </set> </root> </xml> </html> -
Trois types de graphique sont affichés, avec deux séries chacun : à courbes, en grappes et à barres empilées.
Importer et exporter un fichier CSV
Les attributs HTML ci-dessous peuvent être utilisés pour gérer à la fois l'importation et l'exportation entre une liste définie dans le schéma de la matrice et un fichier CSV (valeurs délimitées par des virgules). Notez que cette technique est uniquement recommandée pour un volume de données réduit ou moyen, par exemple qui ne dépasse pas plusieurs centaines de lignes. Pour les volumes plus élevés, il est recommandé d'utiliser la fonctionnalité d'import/export en mode batch à la place.
La syntaxe est la suivante : oraUploadData="type:embed;path:list xpath;useLabels:true;showCount:true"
La configuration de l'importation nécessite le nom du fichier CSV à importer et une liste XML cible. Par convention, chaque ligne CSV crée une instance de liste séparée. Chaque champ délimité par des virgules figurant dans le fichier est importé en tant qu'élément distinct dans la liste. Pour imbriquer une boîte de dialogue d'importation dans une matrice, l'attribut oraUploadData doit être associé à un élément conteneur tel que "div", "td" ou "span".
La valeur facultative useLabels:true indique que, pour l'analyse du fichier CSV d'importation, les en-têtes sont censés être des étiquettes.
Avec la valeur facultative showCount:true, le nombre d'enregistrements importés sera affiché.
Exemple d'attribut oraUploadData="embed" dans un élément "div".
<html>
<head>
<title>File Upload</title>
</head>
<body>
<div oraUploadData="type:embed;path:myList"> </div>
</body>
<xml>
<root>
<myList>
<id>838383930</id>
<name>Janice Smith</name>
</myList>
<myList>
<id>737773730</id>
<name>Bill McCollum</name>
</myList>
</root>
</xml>
</html>
Cette boîte de dialogue d'importation de fichier sera incorporée dans le corps de la page où l'attribut est oraUploadData est défini.
oraUploadData="type:popup;path:list xpath;useLabels:true;showOk:true;showCount:true"
La configuration de l'importation nécessite le nom du fichier CSV à importer et une liste XML cible. Par convention, chaque ligne CSV crée une instance de liste séparée. Chaque champ délimité par des virgules figurant dans le fichier est importé en tant qu'élément distinct dans la liste. Pour importer un fichier CSV à l'aide d'une boîte de dialogue contextuelle, l'attribut oraUploadData doit être associé à un élément d'entrée tel qu'un bouton, un lien de texte ou une image.
La valeur facultative useLabels:true indique que, pour l'analyse du fichier CSV d'importation, les en-têtes sont censés être des étiquettes.
Si la valeur facultative showOk:true est spécifiée, un bouton "OK" s'affichera à la fin de l'importation. La fenêtre contextuelle restera affichée jusqu'à ce que l'utilisateur clique sur le bouton. Avec la valeur showCount:true, le nombre d'enregistrements importés sera affiché.
Exemple d'attribut oraUploadData="popup" associé à un bouton :
<html>
<head>
<title>File Upload</title>
</head>
<body>
<input type="button" name="submitButton" oraUploadData="type:popup;path:myList;" value='Get Data'>
<table oraList="myList">
<tr/>
<tr>
<td><span oraField="id"/></td>
<td><span oraField="name"/></td>
</tr>
</table>
</body>
<xml>
<root>
<myList>
<id>838383930</id>
<name>Janice Smith</name>
</myList>
<myList>
<id>737773730</id>
<name>Bill McCollum</name>
</myList>
</root>
</xml>
</html>
HTML affiché :
Cliquer sur le bouton "Get Data" provoquera le lancement d'une boîte de dialogue d'importation de fichier standard (fournie par Framework) comme illustré ci-dessous.
oraDownloadData="list xpath"
La configuration de l'exportation nécessite le nom de la liste XML à exporter. Par convention, chaque instance de liste représente une ligne distincte du fichier créé. Par défaut, chaque élément de la liste est délimité par une virgule dans le fichier.
Exemple d'attribut oraDownloadData.
<html>
<head>
<title>File Download</title></head>
<body>
<input type="button" name="downloadButton" oraDownloadData="myList" value="Download"/>
</body>
<xml>
<root>
<myList>
<id>881-990987</id>
<name>John Mayweather</name>
</myList>
<myList>
<id>229-765467</id>
<name>Anna Mayweather</name>
</myList>
<myList>
<id>943-890432</id>
<name>Andrew Brewster</name>
</myList>
</root>
</xml>
</html>
HTML affiché :
Cliquer sur le bouton "Download" provoquera le lancement d'une boîte de dialogue d'exportation de fichier standard (fournie par Framework) comme illustré ci-dessous.
Une exportation réussie produit un fichier CSV.
Pour exporter les données d'une sous-liste, utilisez l'attribut oraDownloadDataInList à la place de l'attribut oraDownloadData. L'attribut oraDownloadDataInList indique le nom de la sous-liste. Le XPath de la sous-liste permet de sélectionner les données de la ligne voulue dans la liste parent. Ainsi, seule la sous-liste spécifique est exportée.
oraDownloadDataUseLabels="true"
L'attribut oraDownloadDataUseLabels peut être utilisé conjointement à l'attribut oraDownloadData décrit ci-dessus. Spécifiez oraDownloadDataUseLabels pour que le fichier CSV généré utilise les étiquettes d'élément comme en-têtes de colonne plutôt que les noms d'élément.
Construire des fragments de matrice de zone de portail
Les zones du portail peuvent référencer une matrice IU pour l'en-tête de zone et la zone de filtre. Cette matrice IU n'est pas un document HTML complet, mais est configurée comme un fragment de matrice IU. Lors de la construction d'un fragment de matrice de zone, vous pouvez faire référence aux variables de substitution ci-dessous. A noter que ces variables sont renseignées dynamiquement au moment de l'exécution avec des informations propres à la zone de la matrice dans le portail.
| Variable | Logique de remplacement |
|---|---|
| [$ZONEDESCRIPTION] | Texte de description de la zone. |
| [$SEQUENCEID] | ID de séquence de la zone. |
| [$ZONENAME] | Nom de la zone. |
| [$HELPTEXT] | Texte d'aide de la zone. |
| [$ZONEPARAMNAME] | Valeur de paramètre de la zone (ou vide si elle n'a pas été spécifiée). |
-
Pour un exemple, voir l'une des matrices suivantes : F1-UIMapHeader et F1-ExplorerHeader.
-
Ces matrices utilisent la balise oraInclude afin d'incorporer des fragments HTML pour le menu d'en-tête et les actions du framework. Reportez-vous aux paramètres de type de zone pour les fragments de matrice IU que vous devez inclure dans votre HTML.
-
Si vous voulez que l'icône de texte d'aide apparaisse en regard de la description de votre zone, vous devez faire figurer id="title_[$SEQUENCEID]" dans la section <td> contenant votre description.
-
Si du JavaScript doit être encapsulé dans un fragment de matrice IU, il faudra le lier dans une balise
![CDATA[ ]]de façon à obtenir un document XML valide. A noter que les balises elles-mêmes devront peut-être être transformées en commentaires pour assurer la compatibilité avec des navigateurs plus anciens. Par exemple :<script type="text/javascript"> /*<![CDATA[ */ // //javascript // /*]]> */ </script>
-
oraGetZoneSequence(zoneName). Utilise le code de la zone pour extraire son numéro de séquence.
-
oraIsZoneCollapsed(sequenceId). Utilise la séquence de la zone pour déterminer si elle est réduite.
-
oraHandleCollapse(seq). Réduit une zone.
-
oraHandleExpand(seq,refresh). Développe et/ou actualise une zone.
Exemple d'utilisation d'oraLoad[$SEQUENCEID] dans une fonction :
<script type="text/javascript">
function oraLoad[$SEQUENCEID]() {
checkRebateClaimStatus();
}
function checkRebateClaimStatus() {
var work = id(''analyticsFilterText[$SEQUENCEID]'',
document).cells[0].innerText.split('' '');
var rebateClaimId = work[work.length - 3];
id(''rebateClaimId'', document).value = rebateClaimId;
oraInvokeSS(''C1-CheckRCSt'',''checkRebateClaimStatus'', false);
var statusIndicator = id(''statusInd'', document).value;
if (statusIndicator == ''C1PE'' || statusIndicator == ''C1ID'') {
id(''addRebateClaimLine'', document).style.display = '''';
} else {
id(''addRebateClaimLine'', document).style.display = ''none'';
}
}
</script>
F1-ExplorerHeader affiché :
Appeler un objet métier
La fonction oraInvokeBO peut être utilisée dans un en-tête de zone de portail ou une matrice de filtre de zone. Elle est similaire à la commande décrite dans Fonction d'appel d'objet métier qui permet d'appeler un objet métier dans le HTML de la matrice IU. Voir cette section pour la description des trois premiers paramètres.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraInvokeBO( ) | 'Nom d'objet métier' | |
| 'XPath' ou null | ||
| 'action' | ||
| null | Ce doit être le quatrième argument. | |
| [$SEQUENCEID] | Ce doit être le cinquième argument. | |
| true | false | Spécifiez true si le fragment est utilisé dans un en-tête de zone de portail. Spécifiez false si le fragment est utilisé dans une matrice de filtre de zone. |
Exemple dans un en-tête de zone de portail :
oraInvokeBO('CM-User','xmlGroup','read', null, [$SEQUENCEID], true)
Appeler un service fonctionnel
La fonction oraInvokeBS peut être utilisée dans un en-tête de zone de portail ou une matrice de filtre de zone. Elle est similaire à la commande décrite dans Fonction d'appel de service fonctionnel qui permet d'appeler un service fonctionnel dans le HTML de la matrice IU. Voir cette section pour la description des deux premiers paramètres.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraInvokeBS( ) | 'Nom d'objet métier' | |
| 'XPath' ou null | ||
| null | Ce doit être le quatrième argument. | |
| [$SEQUENCEID] | Ce doit être le cinquième argument. | |
| true | false | Spécifiez true si le fragment est utilisé dans un en-tête de zone de portail. Spécifiez false si le fragment est utilisé dans une matrice de filtre de zone. |
Exemple dans un en-tête de zone de portail :
oraInvokeBS('CM-UserSearch','xmlGroup', null, [$SEQUENCEID], true)
Appeler un script de service
La fonction oraInvokeSS peut être utilisée dans un en-tête de zone de portail ou une matrice de filtre de zone. Elle est similaire à la commande décrite dans Fonction d'appel de script de service qui permet d'appeler un script de service dans le HTML de la matrice IU. Voir cette section pour la description des deux premiers paramètres.
| Syntaxe | Paramètres | Commentaires |
|---|---|---|
| oraInvokeSS( ) | 'Nom de script de service' | |
| 'XPath' ou null | ||
| null | Ce doit être le quatrième argument. | |
| [$SEQUENCEID] | Ce doit être le cinquième argument. | |
| true | false | Spécifiez true si le fragment est utilisé dans un en-tête de zone de portail. Spécifiez false si le fragment est utilisé dans une matrice de filtre de zone. |
Exemple dans un en-tête de zone de portail :
oraInvokeSS('UserSearch','xmlGroup', null, [$SEQUENCEID], true)
Détecter les modifications non enregistrées
Utilisez cette fonction pour renvoyer une valeur booléenne Vrai s'il existe des modifications non enregistrées. Le système interroge la fonction lorsque l'utilisateur tente de naviguer et, le cas échéant, émet un avertissement. Cette fonction est uniquement nécessaire si une matrice IU utilise du code javascript personnalisé pour gérer des éléments, avec lequel le système n'est pas en mesure de détecter si des modifications ont ou non été apportées. Notez également qu'il incombe au JavaScript de la matrice IU de gérer les valeurs booléennes utilisées pour cette fonction.
function hasUnsavedChanges(){
return isDirtyFlag;
}
Masquer les onglets du portail
Le produit permet d'utiliser JavaScript pour masquer un onglet du portail actuel en fonction d'une condition utilisant l'API JavaScript oraAuthorizeTab. Cette API accepte une fonction en paramètre et désactive l'indice d'onglet indiqué.
Par exemple, la matrice IU peut comporter une fonction pour désactiver des indices d'onglet :
function overrideTabIndex(index){
if (index == 2) return false;
if (index == 3) return false;
}
Le JavaScript est référencé dans "on load" :
<body class="oraZoneMap"
onLoad="oraAuthorizeTab(overrideTabIndex);">
Bibliothèques JavaScript requises
Toutes les fonctionnalités décrites dans ce document reposent sur une paire de bibliothèques JavaScript. Si vous écrivez et exécutez vos matrices entièrement dans le framework d'affichage de matrice IU, vous n'avez pas besoin d'insérer manuellement ces bibliothèques, le framework le fait pour vous au moment de l'affichage de la matrice IU.
src="privateUserMapSupport.js"
Votre document HTML doit faire référence à cette bibliothèque pour l'exécution de la liaison dans un environnement autonome.
<script type="text/javascript" src="privateUserMapSupport.js"></script>
src="userMapSupport.js"
Pour tirer parti de fonctions de boîtes à outils facultatives, vous devez faire référence à cette bibliothèque.
<script type="text/javascript" src="userMapSupport.js"></script>
onload="oraInitializeUserMap();"
Pour exécuter la liaison dans un environnement autonome, vous devez imbriquer la fonction onload suivante dans le noeud <body>.
<body onload="oraInitializeUserMap();">
