Specificare una chiamata alla variabile di linguaggio dell'applet con una chiamata di funzione Net.Data. Non è necessaria alcuna dichiarazione per la chiamata di funzione. Utilizzare la sintassi che segue per la chiamata di funzione:
@DTWA_AppletName(parm1, parm2, ..., parmN)
Per scrivere un file della macro che genera le tag dell'applet:
%define{ DATABASE = "celdial" <=variabile Net.Data: nome database MyGraph.codebase = "/netdata-java" <=Parametro applet obbligatorio MyGraph.height = "200" <=Parametro applet obbligatorio MyGraph.width = "400" <=Parametro applet obbligatorio MyTitle = "Titolo" <=Variabile Net.Data: nome pagina Web MyTable = %TABLE(all) <=Tabella per i risultati dell'interrogazione %}
%FUNCTION(DTW_SQL) mySQL(OUT table){ select name, age from ibmuser.guests %}
Ad esempio:
%HTML(report){<=Inizion blocco HTML @mySQL(MyTable) <=Chiamata alla funzione SQL mySQL @DTWA_MyGraph( MyTitle, DTW_COLUMN(ages) MyTable) <=Chiamata funzione applet %}
E' possibile specificare gli attributi delle tags dell'applet in un punto qualsiasi della macro di Net.Data. Net.Data sostituisce tutte le variabili di formato AppletName.attribute nella tag dell'applet come attributi. La sintassi per la definizione di un attributo di una tag dell'applet è mostrato di seguito:
%define AppletName.attribute = "value"
Tali attributi sono richiesti per tutte le applet:
Ad esempio, se l'applet è denominata MyGraph, è possibile definire gli attributi richiesti come mostrato di seguito:
%DEFINE{ MyGraph.codebase = "/netdata-java/" MyGraph.height = "200" MyGraph.width = "400" %}
Non è necessario che l'assegnazione sia presente in una sezione DEFINE. E' possibile impostare il valore con la funzione DTW_ASSIGN. Se non viene definita alcuna variabile per NomeApplet.code, Net.Data aggiunge un parametro code predefinito per la tag dell'applet. Il valore del parametro code è NomeApplet.class, in cui NomeApplet è il nome dell'applet.
Nella chiamata di funzione è necessario definire un elenco di parametri da trasferire all'ambiente di linguaggio dell'applet di Java. E' possibile trasferire i parametri che includono:
Quando viene trasferito un parametro, Net.Data crea una tag PARAM dell'applet di Java nell'emissione HTML con il nome e il valore assegnato al parametro. Non è possibile trasferire string literals o risultati di chiamate di funzione.
E' possibile utilizzare le variabili di Net.Data come parametri. Se viene definita una variabile nel blocco DEFINE della macro e il valore della variabile viene trasferito nella chiamata di funzione DTWA_NomeApplet, Net.Data genera una tag PARAM che ha lo stesso nome e lo stesso valore della variabile. Ad esempio, nel caso della seguente istruzione macro:
%define{ ... MyTitle = "This is my Title" %} %HTML (report){ @DTWA_MyGraph( MyTitle, ...) %}
Net.Data fornisce la seguente tag PARAM dell'applet:
<param name = 'MyTitle' value = "This is my Title" >
Net.Data genera automaticamente una tag PARAM con il nome DTW_NUMBER_OF_TABLES ogni volta che viene chiamato l'ambiente di linguaggio applet di Java, specificando se la chiamata di funzione ha trasferito variabili di tabella. Il valore è il numero delle variabili di tabella che Net.Data utilizza nella funzione. Se non vengono specificate variabili di tabella nella chiamata di funzione, viene generata la tag che segue:
<param name = "DTW_NUMBER_OF_TABLES" value = "0" >
E' possibile trasferire una o più variabili di tabella come parametri sulla chiamata di funzione. Se viene specificata una variabile di tabella di Net.Data su una chiamata di funzione DTWA_NomeApplet, Net.Data genera le seguenti tag PARAM:
Questa tag indica i nomi delle tabelle da trasferire. La tag presenta la seguente sintassi:
<param name = 'DTW_TABLE_i_NAME' value = "tname" >
In cui i è il numero della tabella basata sulla chiamata di funzione e tname è il nome della tabella.
Le tag PARAM vengono generate per specificare il numero di righe e di colonne per una tabella. La tag presenta la seguente sintassi:
<param name = 'DTW_tname_NUMBER_OF_ROWS' value = "righe" > <param name = 'DTW_tname_NUMBER_OF_COLUMNS' value = "col" >
In cui il nome della tabella è tname, righe è il numero di righe della tabella e col è il numero di colonne della tabella. Questa coppia di tag viene generata per ogni tabella univoca specificata nella chiamata di funzione.
Questa tag PARAM indica il nome per una particolare colonna. La tag presenta la seguente sintassi:
<param name = 'DTW_tname_COLUMN_NAME_j' value = "cname" >
In cui il nome della tabella è tname, j è il numero della colonna e cname è il nome della colonna.
Questa tag PARAM indica i valori per una particolare riga/colonna. La tag presenta la seguente sintassi:
<param name = 'DTW_tname_cname_VALUE_k' value = "val" >
In cui il nome tabella è tname, cname è il nome colonna, k è il numero riga e val è il valore che corrisponde al valore della riga e della colonna corrispondenti.
E' possibile trasferire una colonna di una tabella come un parametro su una chiamata di funzione per generare le tag per una colonna specifica. Net.Data genera le tag dell'applet corrispondenti solo per la colonna specificata. Un parametro della colonna della tabella utilizza la seguente sintassi:
@DTWA_AppletName(DTW_COLUMN( x )Table)
In cui x è il nome o il numero della colonna nella tabella.
I parametri della colonna della tabella utilizzano le stesse tag dell'applet definite per i parametri della tabella.
La variabile DTW_APPLET_ALTTEXT indica il testo da visualizzare su browser che non supportano Java o su cui il supporto Java non è attivato. Ad esempio, la seguente definizione di variabile:
%define DTW_APPLET_ALTTEXT = "<P>Il browser non è abilitato per Java."
produce i seguenti tag HTML e testo:
<P>Il browser non è abilitato per Java.<BR>
Se la variabile non è definita, non verrà visualizzato alcun testo alternativo.