Scopo
Indica al sistema se occorre comprimere i file Javascript e CSS utilizzati dal framework RD3. Qualora l'applicazione non usi la compressione il sistema invia al browser, all'avvio di una nuova sessione, il file Desktop.htm che rappresenta la pagina inziale dell'applicazione web. Al suo interno vengono elencati tutti i file che il browser deve scaricare. Ad oggi vengono inviati al browser i seguenti file:
Template\RD3\ClientParams.js |
Template\RD3\DDManager.js |
Template\RD3\Desktop.js |
Template\RD3\full.js |
Template\RD3\GlobalObject.js |
Template\RD3\HashTable.js |
Template\RD3\KBManager.js |
Template\RD3\MessagePump.js |
Template\RD3\ServerParams.js |
Template\RD3\Debug\DebuggerItem.js |
Template\RD3\Debug\DebuggerManager.js |
Template\RD3\Events\ClientEvents.js |
Template\RD3\Events\IDEvent.js |
Template\RD3\GFX\GFX.js |
Template\RD3\GFX\GFXManager.js |
Template\RD3\Objects\ATimer.js |
Template\RD3\Objects\Book.js |
Template\RD3\Objects\BookBox.js |
Template\RD3\Objects\BookPage.js |
Template\RD3\Objects\BookSection.js |
Template\RD3\Objects\BookSpan.js |
Template\RD3\Objects\ButtonBar.js |
Template\RD3\Objects\CmdList.js |
Template\RD3\Objects\Command.js |
Template\RD3\Objects\Graph.js |
Template\RD3\Objects\IDPanel.js |
Template\RD3\Objects\IndHandler.js |
Template\RD3\Objects\Indicator.js |
Template\RD3\Objects\Message.js |
Template\RD3\Objects\MessageBox.js |
Template\RD3\Objects\MessageTooltip.js |
Template\RD3\Objects\PDFPrint.js |
Template\RD3\Objects\PField.js |
Template\RD3\Objects\PGroup.js |
Template\RD3\Objects\PopupDelay.js |
Template\RD3\Objects\PopupError.js |
Template\RD3\Objects\PopupFrame.js |
Template\RD3\Objects\PopupPreview.js |
Template\RD3\Objects\PPage.js |
Template\RD3\Objects\PValue.js |
Template\RD3\Objects\Tab.js |
Template\RD3\Objects\TabbedView.js |
Template\RD3\Objects\TimerHandler.js |
Template\RD3\Objects\Tree.js |
Template\RD3\Objects\TreeNode.js |
Template\RD3\Objects\ValueList.js |
Template\RD3\Objects\ValueListItem.js |
Template\RD3\Objects\VisAttrList.js |
Template\RD3\Objects\VisAttrObj.js |
Template\RD3\Objects\WebEntryPoint.js |
Template\RD3\Objects\WebForm.js |
Template\RD3\Objects\WebFrame.js |
Sintassi
Applicazione.CompressRD3 := True
Quando letta
Restituisce True se l'applicazione sta effettuando la compressione dei file utilizzati dal framework RD3, False altrimenti.
Quando impostata
Indica al sistema se occorre comprimere i file utilizzati dal framework RD3.
Esempio di codice
// **************************************************************
// Evento notificato dall'applicazione quando viene inizializzata
// **************************************************************
event IDApp.Initialize()
{
IDApp.UserRole := "Amministratore"
//
// Attivo comunque la compressione dei file RD3
IDApp.CompressRD3 := True
}
// Evento notificato dall'applicazione quando viene inizializzata
// **************************************************************
event IDApp.Initialize()
{
IDApp.UserRole := "Amministratore"
//
// Attivo comunque la compressione dei file RD3
IDApp.CompressRD3 := True
}
- Il sistema calcola in automatico il valore della proprietà CompressRD3: se l'applicazione è compilata senza debug la proprietà viene valorizzata a True mentre se l'applicazioen viene compilata con il debug attivato la proprietà viene valorizzata a False. Questo perché se viene attivato il debug è più facile analizzare il codice Javascript utilizzando il debugger proprietario del browser. Poiché il sistema calcola il valore della proprietà prima dell'evento Initialize il programmatore può, qualora lo desideri, cambiarne il valore in tale evento.
- Qualora venga attivata la compressione il sistema utilizza il file Desktop_sm.htm. Come è possibile osservare a differenza del file Desktop.htm, tale file non è completo. Il sistema, infatti, aggiunge altro HTML alla fine del file per inviare, in una sola risposta, sia il file Desktop_sm.htm sia tutte le immagini facenti parte del template. Così il browser con un'unica connessione al server riceve sia i file .js sia tutte le immagini del template utilizzato. In questo modo viene completamente eliminato l'effetto "spettinato", ovvero quel fastidioso effetto tipico delle applicazioni web che fa sì che l'utente veda la pagina muoversi man mano che le immagini vengono scaricate. Inviando tutte le immagini all'avvio il browser ha già tutte le immagini in memoria e può mostrare subito la pagina completa all'utente.
-
Qualora si desideri modificare a mano i file Javascript o i file CSS è necessario comprimerli per poterli servire quando l'applicazione viene compilata senza debug o il parametro viene valorizzato a True. Per fare questo nella cartella c:\Program Files\INDE\CURRENT\Template è presente il file batch CompactRD3.bat il cui scopo è quello di compattare tutti i file Javasctip del template e creare un apposito file chiamato full.js che viene poi compresso ed inviato al browser. Tale batch file comprime anche il file rd3.css (presente in ognuna delle tre directory dei temi grafici) generando il file rd3_sm.css. Tale batch utilizza il tool open source YUI Compressor prodotto da Yahoo che occorre scaricare ed installare. Una volta installato occorre modificare il file CompactRD3.bat nella seconda riga indicando il percorso completo del file JAR del compressore, scrivendo per esempio:
set YUICOMP="C:\Varie\yuicompressor-2.4.2\build\yuicompressor-2.4.2.jar"
Ultima modifica: 09/05/2022 / Validità: da 8.0.3560