Prima di creare il proprio sito è preferibile leggere la documentazione:Prima di iniziare.
Il link dinamico è un token che permette di elaborare i clic dell'utente sui campi sensibili della pagina HTML che sono i tag <a> o i tag <input type='button'>.
<input type='button' adx="MyDynamicLink" value="Clicca qui">
<a adx="MyDynamicLink">Clicca qui</a>
I tre parametri principali di un link dinamico sono:
1. l'azione Web,
2. la pagina Web di destinazione,
3. la selezione.
L'ordine della lista è l'ordine secondo il quale questi parametri sono elaborati dal server XTEND.
Esistono due tipi di azioni che sono:
Ogni azione è dichiarata nel dizionario mediante una scheda di parametrizzazione.
Si tratta della pagina visualizzata in risposta alla richiesta inoltrata sul server.
Ogni pagina è dichiarata nel dizionario tramite una scheda di parametrizzazione.
La pagina di destinazione può essere modificata dall'azione.
Per modificare la pagina di destinazione tramite programma (4GL), utilizzare il reindirizzamento (programmato) dei link dinamici:
Valorizzare un parametro del sottoprogramma con il codice del link dinamico (con o senza azione/selezione) che punti sulla pagina di destinazione.
Il link dinamico può inviare una selezione a destinazione del blocco principale della pagina target per modificarne i criteri di selezione.
La selezione permette di gestire il link elenco dettaglio, l'ordinamento dei riquadri o il raffinamento delle query.
Per maggiori informazioni, vedere, vedere la documentazione sui Token Blocchi.
I parametri seguenti sono presi in considerazione dai link dinamici.
Codice | Parametri | Descrizione |
xacceptreload | Nessuno | Forza l'azione del link dinamico ad eseguirsi sul ricaricamento della pagina HTML (F5) anche se il refresh è bloccato nella parametrizzazione dell'azione ('Attivo su reload') |
xparams | QueryString | Aggiunge i parametri nell'URL del link dinamico |
<a adx="MyDynLink:xacceptreload&xparams=?PARCOD1=VAL1~PARCOD2=VAL2#xtdbottom">
Questo esempio:
Esempio che mostra come effettuare un posizionamento all'interno della pagina di destinazione (tramite il parametro HTML xparams) quando l'utente clicca su un link dinamico:
<!--Link dinamico nella pagina origine-->
<input type="button" value="Clicca qui" adx="MYDYNLINK:xparams=#segnalibro">
<a adx="MYDYNLINK:xparams=#segnalibro">Clicca qui</a>
<!--Pagina di destinazione-->
<body>
<!--Codice HTML -->
<a name="segnalibro">
<!--Posizionamento della pagina quando l'utente clicca sul bottone qui in alto-->
<!--Codice HTML -->
</body>
Esempio che valorizza le variabili utente PARCOD1 e PARCODE con VAL1 e VAL2 (mediante il parametro HTML xparams) quando l'utente clicca su un link dinamico:
<!--Link dinamico nella pagina origine-->
<input type="button" value="Clicca qui" adx="MYDYNLINK:xparams=?PARCOD1=VAL1~PARCOD2=VAL2">
<a adx="MYDYNLINK:xparams=?PARCOD1=VAL1~PARCOD2=VAL2">Clicca qui</a>
Il link elenco dettaglio consiste nel definire un link per accedere al dettaglio di una entità visualizzata in un elenco.
Per esempio: accedere al dettaglio dell'articolo a partire dal catalogo.
La pagina dettaglio contiene generalmente le informazioni complementari che provengono da altre tabelle diverse da quelle usate per visualizzare l'elenco.
Per esempio: la scheda di descrizione completa di un prodotto o i prodotti associati (cross-selling).
Inversamente l'utente dovrà poter ritornare all'elenco a partire dalla pagina dettaglio senza perdere il contesto dell'elenco (criteri di selezione, paginazione...).
Il link dinamico seleziona una entità in modo che il codice sia uguale a quello della riga corrente.
La riga corrente è identificata dal blocco ACURRENT (in cima alla sequenza del contesto di dati).
Il link 'Sostituisci selezione del blocco principale'.
<table>
<tr>
<th><b>Codice</b></th>
<th><b>Descrizione</b></th>
</tr>
<!--Blocco elenco-->
<!adx="BLKITMLST">
<tr>
<!--Link a dettaglio-->
<td><a adx="DLKDETAIL"><span adx="CODICE"></span></td>
<td adx="DESCR"></td>
</tr>
<!adx="BLKITMLST">
</table>
Il blocco mono-record ha una selezione di tipo 'Ultimo link cliccato' affinché utilizzi i criteri di selezione del link dinamico cliccato dall'utente (quello creato precedentemente con la selezione su ACURRENT.CODE).
<!--Blocco dettaglio-->
<!adx="BLKDETAIL">
<b>Codice </b><span adx="CODICE"></span><br>
<b>Descrizione </b><span adx="DESCR"></span><br>
<b>Prezzo </b><span adx="PREZZO"></span><br>
<b>Stock </b><span adx="STOCK"></span><br>
<!adx="BLKDETAIL">
<!--Ritorno all'elenco ->
<a adx="DLKRETOURLISTE">ritorno elenco</a>
Per visualizzare i dati complementari derivati da un'altra tabella o vista (per esempio una descrizione completa di un articolo o dei prodotti associati):
Il link dinamico ADLKRETURN permette di effettuare un ritorno alle pagine XTEND che sono state consultate.
Esempio:
Se si pagina su un catalogo di articoli il link ADLKRETURN visualizzerà la pagina che ha preceduto la visualizzazione del catalogo senza tenere conto delle azioni di paginazione contrariamente al tasto back del browser.
Il motore XTEND gestisce una sequenza di pagine consultate per sessione utente la cui dimensione è parametrizzabile tramite il parametro di configurazione:
xtend.server.gensetup.misc.rtnstacksize (20 di default).
Codice | Parametri | Azione | Descrizione |
ADLKFIRSTPAGE | No | ABLKFIRSTPAGE | Visualizza la prima pagina di un blocco |
ADLKNEXTPAGE | No | ABLKNEXTPAGE | Visualizza la pagina successiva di un blocco |
ADLKLASTPAGE | No | ABLKLASTPAGE | Visualizza l'ultima pagina di un blocco |
ADLKSELECT | No | ABLKSELECT | Seleziona la riga di un blocco |
ADLKUNSELECT | No | ABLKUNSELECT | Deseleziona la riga selezionata di un blocco |
ADLKRESTOREFORM | No | ARESTOREFORM | Ripristina un form HTML con i valori iniziali |
ADLKRESTORESESSION | No | ARESTORESESSION | Visualizza l'ultima pagina aperta prima di chiudere il browser |
ADLKLOGIN | Sì | ASESSLOGIN | Login dell'utente |
ADLKLOGOUT | No | ASESSLOGOUT | Disconnette l'utente |
ADLKSWITCHCOOKIES | No | ASESSSWITCHCOOKIES | Scambia la modalità 'senza cookies' e la modalità 'con cookies' |
ADLKTRACESET | No | ATRACESET | Aggiornamento della traccia XTEND |
ADLKRETURN | No | No | Ritorno alla pagina precedente |
ADLKPOSTPAGE | No | No | Inoltra il form della pagina corrente e ritorna sulla stessa pagina |
ADLKSWITCHSITE | Sì | No | Apre un altro sito XTEND |
ADLKSWITCHLANG | Sì | No | No Cambio della lingua utente |
Campi
I seguenti campi sono presenti in questo folder :
| Codice del link dinamico. |
| Sito Web corrente. |
| Permette di definire una descrizione associata ad ogni scheda. |
Chiudi
Presentazione
Parametri generali del link dinamico.
Il Riquadro "Param. Accesso sottoprogramma" è alimentato se si verificano le seguenti condizioni:
Quando questo riquadro non è vuoto, permette di definire una selezione su questi parametri.
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
Avanzamento
| Selezionare 'si' per tracciare le chiamate al link dinamico nel log del server XTEND. |
| Selezionare 'si' per utilizzare il metodo HTTP GET; il link deve essere preso in considerazione dai motori di ricerca (web crawlers).
|
Destinazione
| Selezionare:
|
| Pagina di arrivo. |
Dinamicità
| Codice dell'entità selezionata se il link dinamico posta una selezione per il blocco principale della pagina di destinazione.
|
| Esistono tre tipi di modifica dei criteri di un blocco da un link dinamico. 1. I criteri del link dinamico 'Sostituisci selezione del blocco principale'SELEZIONE DEL BLOCCO = CRITERI DI SELEZIONE DEL LINK 2. I criteri del link dinamico 'Aggiungi a selezione del blocco principale'Effettua un affinamento della consultazione del blocco con i criteri del link. 3. I criteri del link dinamico 'Somma a selezione in corso del blocco principale'Effettua un affinamento della consultazione del blocco aggiungendo (AND logico) la selezione del link dinamico alla query corrente del blocco.
|
| Codice dell'azione web se il link dinamico possiede un'azione.
|
| Contrassegnare la casella affinché i parametri dell'azione dichiarati come 'Campi web obbligatori' siano controllati automaticamente da XTEND. |
Riquadro Param. Accesso sottoprogramma
| Codice del parametro sottoprogramma. |
|
|
|
|
| Codice del blocco per l'origine 'Token campo'. |
|   |
| Codice del campo per l'origine 'Token campo'. |
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
Riquadro Parametri
| Codice del parametro dell'azione. |
|
|
|
|
| Codice del blocco per l'origine 'Token campo'. |
|   |
| Codice del campo per l'origine 'Token campo'. |
Concatenamento
| Si tratta della pagina che verrà visualizzata se l'azione termina con un errore.
|
| 'Si' per indicare che è il programma 4GL che restituisce il codice del link dinamico in un parametro del sottoprogramma. Concatenamento dinamico definito dal programma 4GLIl programma 4GL può decidere quale link dinamico concatenare restituendo il codice del link in un parametro del sottoprogramma.
Il codice del link dinamico può anche venire memorizzato in una variabile sessione (variabile utente).
La pagina visualizzata a seguito del concatenamento di più link dinamici è la pagina web associata all'ultimo link dinamico elaborato. |
|   |
|   |
Riquadro Collegam.
| Codice del link dinamico da eseguire. Elenco dei link dinamici: i link dinamici inseriti nell'elenco verranno eseguiti sequenzialmente fino a quando il web service non restituirà un errore. |
Chiudi
Presentazione
Il link dinamico ha la capacità di inviare una selezione con destinazione il blocco principale (AMAIN) della pagina di destinazione. Se la selezione del blocco è 'alterabile' e se le entità selezionate sono identitche, il blocco effettuerà la selezione inviata dal link dinamico (in funzione del parametro 'Applicazione selezione').
I campi di questo folder sono attivi solo se è stato selezionato un codice entità nel campo 'Selezione sull'entità' della videata 'Generale'.
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
Caratteristiche
| Nessuna: selezione di tutti i record. Consultazione: applicazione dei criteri di selezione del blocco. Ultimo link cliccato: applicazione dei criteri di selezione del link dinamico cliccato per accedere alla pagina che contiene il blocco. |
| No: la query SQL associata al blocco non può essere modificata da quella di un link dinamico. Si: la query può essere modificata da quella associata ad un link dinamico.
|
| Scelta dell'ottimizzazione proposta dall'interfaccia. Nessuna: Nessuna ottimizzazione Nessun blob: l'interfaccia non restituisce i campi di tipo blob Nessun clob: l'interfaccia non restituisce i campi di tipo clob Nessun clob né blob: l'interfaccia non restituisce i campi di tipo blob e clob |
Sintesi selezione
| Consultazione del blocco in formato testo |
Riquadro Criteri di selezione
| Operatore logico di concatenamento delle operazioni. |
| Parentesi aperte. |
| Campo dell'entità il cui valore è il primo operando dell'operazione. |
| Operatore di confronto. |
|
|
| Si inserisce qui il valore del parametro. Questo viene inserito a seconda dei casi come numero,data o codice alfanumerico. Quando il parametro è di tipo menù locale, si può a piacere inserire l'inizio della descrizione, o il valore numerico corrispondente al range della descrizione nell'elenco. Quando il codice è controllato da una tabella allegata, si può utilizzare un tasto di selezione per sceglierlo. |
| Codice del blocco per l'origine 'Token campo'. |
|   |
| Codice del campo per l'origine 'Token campo'. |
| Parentesi chiuse. |
|
|
|   |
Entità
| Indica le entità che verranno create a partire dal risultato della consultazione. |
| Interfaccia di tipo 'Accesso dati' che verrà richiamata. |
| Tipo di interfaccia 'Accesso dati' che verrà richiamata. |
Chiudi
Campi
I seguenti campi sono presenti in questo folder :
Caratteristiche
| Selezionare un tipo di ordinamento:
|
|
|
Riquadro Ord
| Nome del campo per l'origine 'Token campo'. |
| Ordinamento Ascendente/Discendente. |
Chiudi
Di default, le seguenti stampe sono associate alla funzione :
PRTSCR : Stampa Videata
Ma ciò lo si può modificare tramite parametrizzazione.
Questo bottone permette di copiare un link dinamico. |
Un token link dinamico è sempre inserito come attributo di un tag HTML <a> o <input type='button'>.
Quando il server XTEND costruisce dinamicamente la pagina HTML: genera, dove si trovano i token link dinamico, una chiamata ad una funzione JavaScript della libreria XTEND (xtdDoDlk) sull'evento onClick.
I parametri della funzione xtdDoDlk sono contestuali e permettono alla libreria XTEND di costituire i dati (xml) da inviare al server XTEND per elaborare l'azione e la selezione.
<a href="javascript:xtdDoSubmit('MYDLK',null);"
onclick="xtdDoDlk(this,'MYDLK',null,null,'XAA',0,null,event,false,'_1',false,null,false);">
<input type="button"
onclick="xtdDoDlk(this,'MYDLK',null,'MYBLOCK','XA',0,null,event,true,'',false,null,true);"
value="Aggiungi al carrello"/>
Quando l'utente clicca su un link dinamico, il contesto di dati della pagina non esiste più sul server.
E' esistito durante la costruzione della pagina e poi è stato cancellato.
Il server XTEND memorizza, nella pagina HTML (tag <span id="xtdctx">), il contesto di dati necessario all'elaborazione in seguito alle selezioni e alle azioni dei link dinamici.
Uno dei ruoli della funzione JavaScript xtdDoDlk è di ritrovare il contesto di dati associato al link dinamico per inviarlo al server.
Esempio:
Per un link elenco/dettaglio (catalogo) si vuole visualizzare nella pagina 'dettaglio' l'oggetto (articolo) su cui si è cliccato. Questa operazione consiste, per il server XTEND:
Il fatto di memorizzare il contesto nella pagina HTML assicura un buon un buon funzionamento di XTEND con il tasto Back del browser.
Per chiamare un link dinamico da programma in JavaScript (non generato da XTEND), utilizzare la funzione qui in basso:
//aElmt è l'elemento del DOM su cui si è cliccato
//aDlk è il codice del link dinamico da richiamare
//aParams è opzionale e contiene i parametri dell'url (query string)
funzione xtdCallDlk(aElmt,aDlk,aParams){}
Questa funzione può essere utilizzata solo se il link dinamico non ha nessun riferimento ai campi XTEND nei criteri di selezione o ai parametri dell'azione.
Sono presi in considerazione solo i criteri o i parametri di tipo 'Campo web'.
In alcuni casi, lo sviluppatore può essere chiamato ad intercettare il clic per effettuare dei controlli.
Dichiarare una funzione JavaScript di nome xtdDoMyDlk affinché la libreria (XtendLib.js) la chiami passando in parametro l'oggetto contestuale aDomOut (classe CXtdDomOut) che permette di accedere a tutte le informazioni sul link dinamico.
Questa funzione restituisce 'false' per interrompere l'elaborazione.
funzione xtdDoMyDlk(aDomOut)
{
if (aDomOut.isDlk("MyDynLink"))
{
// L'utente ha cliccato sul link MyDynLink
return confirm("Confermi l'azione");
}
return true;
}
E' possibile intercettare il processo appena prima dell'invio del form al server (submit) creando una funzione JavaScript xDoMySubmit nella pagina:
funzione xDoMySubmit(aDlk,aDomOut){
// Restituisce false per interrompere il processo
return true;
}
Classe del parametro aDomOut che dà accesso al contesto del link dinamico.
// Restituisce il valore della variabile utente aKey
aDomOut.getUserVar(aKey);
// Restituisce il codice del link dinamico su cui l'utente ha cliccato
aDomOut.getDynLinkId();
// Restituisce l'indice della riga (da 0 a N) se l'utente ha cliccato
// su un link che è in un blocco riquadro'
aDomOut.getCurLineIdx();
// Restituisce true se l'utente ha cliccato sul link aArg
// aArg è sia un riquadro di link sia una String
aDomOut.isDlk(aArg);
if (aDomOut.isDlk("DLK1","DLK2")){
// Codice se l'utente ha cliccato su "DLK1" o "DLK2"
}
// Restituisce l'elenco dei parametri web (Class CXtdDlkWebParamsOut)
aDomOut.getWebParameters();
// Per conoscere il valore del parametro web aName
// aIdx è l'indice del valore se valore multiplo
aDomOut.getWebParameters().getParamValue(aName,aIdx)
// Restituisce un Array che contiene i valori del parametro web aName
aDomOut.getWebParameters().getParamValues(aName)
// Restituisce il valore di un criterio di selezione o parametro di azione
// aFieldName è il nome del campo XTEND utilizzato per il mapping
aDomOut.getDlkParamValues(aFieldName);
// Idem getDlkParamValues - aParamId è l'ID del parametro nel mapping
// - Per un criterio di selezione l'ID è SEL + range del criterio (1-N)
// - Questo è più esatto del getDlkParamValues poiché è l'ID e non il nome del campo XTEND
aDomOut.getDlkParamValuesById(aParamId);
Quando un parametro di azione è dichiarato come 'Campo web obbligatorio' la libreria controlla automaticamente:
Per aggiungere dei controlli supplementari sui parametri web, aggiungere la funzione xtdWebParamCheckValue qui in basso nella pagina HTML.
Questa funzione è richiamata per ogni parametro web dell'azione associata al link dinamico e restituisce true per validare l'inserimento.
Vedere l'esempio nell'inserimento del form del sito ASAMPLE.
Parametri:
function xtdWebParamCheckValue(aWebParamOut,aInputFieldName,
aInputFieldIndex,aInputFieldValue){
// Esempio: Controllo del formato della mail sul campo MAICOD
if (aInputFieldName=="MAICOD"){
var wEmail=xtdCheckEmail(aInputFieldValue);
if (wEmail && wEmail!=aInputFieldValue){
//Formato OK
//Si aggiorna il valore con il formato calcolato da xtdCheckEmail
aWebParamOut.setValue(aInputFieldIndex,wEmail);
}
//True per validare l'inserimento - False per non validare
return wEmail!=null;
}
}
// Restituisce True se parametro obbligatorio
aWebParamOut.isMandatory();
// Restituisce l'indice del campo nel form HTML
// -> Possono esserci più campi con lo stesso nome nel form (riquadro)
aWebParamOut.getIndex();
// Restituisce l'elemento DOM
aWebParamOut.getElement(aIdx)
//aValue è un Array
aWebParamOut.setValues(aValue);
//aIdx è l'indice (0 - N) del valore
aWebParamOut.setValue(aIdx,aValue);
// Restituisce il valore di un altro parametro Web
// -> Utile se il controllo del valore di un parametro dipende da altri parametri
aWebParamOut.getParamValue(aName,aIdx);
// Restituisce il valore in un Array
aWebParamOut.getValues();
// Restituisce il valore dell'indice aldx
aWebParamOut.getValue(aIdx);
// Restituisce il valore dell'indice 0
aWebParamOut.getFirstValue();
// Restituisce l'attribut name
aWebParamOut.getName();
// Restituisce il tipo di parametro definito nel dizionario XTEND
aWebParamOut.isInteger();
aWebParamOut.isX3Menu();
aWebParamOut.isDecimal();
aWebParamOut.isCurrency();
aWebParamOut.isDate();
aWebParamOut.isString();
aWebParamOut.isNumeric();
// Restituisce il tipo di elemento del DOM del parametro
aWebParamOut.isHidden(aIdx);
aWebParamOut.isInputText(aIdx);
aWebParamOut.isCheckBox(aIdx);
aWebParamOut.isRadio(aIdx);
aWebParamOut.isTextArea(aIdx);
aWebParamOut.isSelect(aIdx);
Se la funzione xtdWebParamCheck è presente nella pagina, la libreria XTEND richiama questa funzione prima di effettuare il controllo del parametro.
Questa funziona restituisce 'true' per effettuare il controllo del valore e false per bloccare il controllo.
E' particolarmente utile neglio elenchi di picking con selezione delle righe tramite una casella da contrassegnare. Permette di filtrare le righe per effettuare il controllo solo sulle righe che sono contrassegnate.
Vedere l'esempio nell'inserimento del form del sito ASAMPLE.
Parametri:
var gNbChecked=0;
// Restituisce true se il parametro web aInputFieldName/aInputFieldIndex deve essere controllato
funzione xtdWebParamCheck(aWebParamsOut,aInputFieldName,aInputFieldIndex){
/*
Esempio per un elenco di picking con checkboxes (ASELECTED) per selezionare le righe.
Non si controlla il campo AQUANTITY se la riga non è selezionata
*/
if (aInputFieldName=="AQUANTITY"){
// gNbChecked è un contatore delle righe selezionate
// Permette di bloccare l'azione se non è selezionata nessuna riga
if (aInputFieldIndex==0) gNbChecked=0;
// Riga selezionata se il valore ASELECTED è uguale a 1
if (aWebParamsOut.getParamValue("ASELECTED",aInputFieldIndex)=="1"){
gNbChecked++;
return true;
}
return false;
}
return true;
}
I CheckBox hanno la particolarità di non essere reinviati nel form HTML se non sono contrassegnati.
Questo comportamento non è compatibile con il motore XTEND che si basa sugli indici del campo nel form HTML per associare i dati inseriti nella stessa riga di un riquadro.
Per fare in modo che un CheckBox sia rwinviato anche se non è contrassegnato, la libreria XTEND sostituisce i CheckBox non contrassegnati con un campo 'input hidden' di stesso nome appena prima di inviare il form al server (xtdProcessCheckBoxes).
Il valore utilizzato per valorizzare i CheckBox non contrassegnati è dato dalla variabile globale gXtdCBUnSelelectedValue che è nulla di default (var gXtdCBUnSelelectedValue="").
Per modificare il valore:
<script>
// Page onLoad event
function xBodyOnLoad()
{
// Set '0' value for unselected checkboxes
xtdSetUnSelelectedValue('0');
// Page initialization code
}
</script>
<body onLoad="xBodyOnLoad();">
<form>
//Html code
</form>
</body>
Durante il parsing della pagina, XTEND individua tutti i CheckBox che hanno un token adx e costituisce un elenco che è inviato al client nel contesto di dati della pagina. Sono i Check Box di questo elenco ad essere presi in considerazione dalla funzione xtdProcessCheckBoxes.
Il server XTEND invia al browser, nel contesto di dati della pagina, le informazioni sui 'Regional Settings' corrispondenti alla lingua corrente.
Per accedere a queste informazioni:
var wRegSettings=gXtdDOMFactory.getXtdDomIn().getRegionalSettings();
// Separatore di decimali
wRegSettings.getDecimalSep();
// Separatore di migliaia
wRegSettings.getThousandSep();
// Ordine della data - MDY=0 - DMY=1 - YMD=2
wRegSettings.getDateOrder();
// Data pilota per il calcolo delle date X3
wRegSettings.getDatePivot();
Le funzioni qui in basso permettono di aggiungere/eliminare variabili e criteri utente.
Le funzioni xtdAjax* aggiornano le variabili sul server tramite una richiesta Ajax, senza sottomettere il form HTML.
Le altre funzioni (a parte xtdGetUserVar) sottomettono il form HTML.
// ---------------------------------------------------------------
function xtdRemoveUserVar(aId);
function xtdSetUserVar(aId,aValue);
function xtdGetUserVar(aId);
function xtdRemoveUserCrit(aId);
// ---------------------------------------------------------------
function xtdAjaxRemoveUserVar(aId);
function xtdAjaxRemoveAllUserVar();
function xtdAjaxSetUserVar(aId,aValue);
function xtdAjaxRemoveUserCrit(aId);
function xtdAjaxRemoveAllUserCrit();
function xtdAjaxSetUserCrit(aId,aValue);
function xtdRemoveAllUserCrit();
La funzione qui in basso visualizza un messaggio calcolato dal server XTEND.
Il messaggio è restituito nella lingua corrente del sito.
Parametri:
function xtdAlert(aId,aP1,aP2,aP3,aP4);
// L'esempio qui in basso visualizza
// 'Connesso all'applicazione con il codice utente DIS001'
xtdAlert("ASESSLOGIN2","DIS001");
La classe qui in basso dà accesso al contesto di chiamata della pagina per conoscere il risultato di una azione:
var wCallCtx==gXtdDOMFactory.getXtdDomIn().getCallingCtx();
// ---------------------------------------------------------------
// CLASS CXtdCallingCtx
// ---------------------------------------------------------------
// Link dinamico utilizzato per visualizzare la pagina corrente
wCallCtx.getDynLink();
// True se la pagina è il risultato di una azione
wCallCtx.hasAction();
// Codice dell'azione
wCallCtx.getAction();
// True se l'azione si è svolta correttamente - False se errore
wCallCtx.getActionResult();