Scopo
La proprietà Active indica se lo span è attivo cioè se deve notificare subito le modifiche al server non appena lo span perde il fuoco (se è un campo di testo), oppure non appena viene modificato se è di tipo combo. Tale proprietà ha effetto solo se il book è contenuto in una porzione di videata web.
Normalmente questa proprietà viene utilizzata nell'evento di Load della videata per indicare quali span devono o meno essere attivi.
Sintassi
boolean act = False // Lo span è attivo?
//
ena := Span.Active
//
ena := Span.Active
Quando letta
Restituisce True se lo span è attivo, False altrimenti.
Quando impostata
Indica al sistema se lo span è attivo.
Esempio di codice
// *******************************************
// Sblocca il book per permettere le modifiche
// *******************************************
public void ImpiegatiBookMod.UnlockBook()
{
// Il book è sbloccato
Parametri.BookBloccato := False
//
// Abilito in scrittura gli span
ImpiegatiBook.ReportImp.TitoloImpiegati.Enabled := True
ImpiegatiBook.ReportImp.CognomeImpiegati.Enabled := True
ImpiegatiBook.ReportImp.NomeImpiegati.Enabled := True
//
// Rendo attivi gli span
ImpiegatiBook.ReportImp.TitoloImpiegati.Active := True
ImpiegatiBook.ReportImp.CognomeImpiegati.Active := True
ImpiegatiBook.ReportImp.NomeImpiegati.Active := True
//
// Mostro il riguadro attorno alle box modificabili... così si vedono
ImpiegatiBook.ReportImp.Cognome.VisualStyle := RiquadroBianco
ImpiegatiBook.ReportImp.Nome.VisualStyle := RiquadroBianco
//
// Definisco i possibili valori del campo TITOLO
ImpiegatiBook.ReportImp.TitoloImpiegati.EmptyValueList()
ImpiegatiBook.ReportImp.TitoloImpiegati.SetSpanValueListItem(Dott.,
Dott., Dott.)
ImpiegatiBook.ReportImp.TitoloImpiegati.SetSpanValueListItem(Dott.ssa,
Dott.ssa, Dott.ssa)
ImpiegatiBook.ReportImp.TitoloImpiegati.SetSpanValueListItem(Ing., Ing.
, Ing.)
//
// Aggiorno tutto il book
ImpiegatiBook.Refresh(ONE, C-1)
}
// Sblocca il book per permettere le modifiche
// *******************************************
public void ImpiegatiBookMod.UnlockBook()
{
// Il book è sbloccato
Parametri.BookBloccato := False
//
// Abilito in scrittura gli span
ImpiegatiBook.ReportImp.TitoloImpiegati.Enabled := True
ImpiegatiBook.ReportImp.CognomeImpiegati.Enabled := True
ImpiegatiBook.ReportImp.NomeImpiegati.Enabled := True
//
// Rendo attivi gli span
ImpiegatiBook.ReportImp.TitoloImpiegati.Active := True
ImpiegatiBook.ReportImp.CognomeImpiegati.Active := True
ImpiegatiBook.ReportImp.NomeImpiegati.Active := True
//
// Mostro il riguadro attorno alle box modificabili... così si vedono
ImpiegatiBook.ReportImp.Cognome.VisualStyle := RiquadroBianco
ImpiegatiBook.ReportImp.Nome.VisualStyle := RiquadroBianco
//
// Definisco i possibili valori del campo TITOLO
ImpiegatiBook.ReportImp.TitoloImpiegati.EmptyValueList()
ImpiegatiBook.ReportImp.TitoloImpiegati.SetSpanValueListItem(Dott.,
Dott., Dott.)
ImpiegatiBook.ReportImp.TitoloImpiegati.SetSpanValueListItem(Dott.ssa,
Dott.ssa, Dott.ssa)
ImpiegatiBook.ReportImp.TitoloImpiegati.SetSpanValueListItem(Ing., Ing.
, Ing.)
//
// Aggiorno tutto il book
ImpiegatiBook.Refresh(ONE, C-1)
}
- Attenzione: Se la proprietà Active viene modificata all'interno degli eventi di formattazione dell'oggetto che contiene lo span (evento OnFormatting della pagina se lo span è contenuto in una box di pagina o evento di BeforeFormatting della sezione se lo span è contenuta in una box di sezione) la modifica ha effetto solo sullo span in fase di formattazione (consulta il videocorso Mastro On Formatting). Se la proprietà Active viene modificata al di fuori dagli eventi di formattazione dell'oggetto che contiene lo span, da quel momento in poi tutte le copie dello span avranno la proprietà Active valorizzata allo stesso modo. In quest'ultimo caso è come se alla proprietà Active fosse stato fornito tale valore a design-time.
- Se la proprietà Active viene modificata all'interno di una procedura legata alla box che contiene lo span tale modifica ha effetto solo sulla singola copia dello span. Tale modifica equivale ad una modifica alla proprietà fatta all'interno degli eventi di formattazione dell'oggetto che contiene lo span.
- Se viene modificata la proprietà Active durante gli eventi di formattazione dell'oggetto che contiene lo span o durante la procedura collegata alla box che contiene lo span non è necessario ristampare il book. Tale modifica avrà effetto immediato. Qualora, invece, la modifica sia fatta fuori dagli eventi di validazione e non all'interno della procedura collegata alla box che contiene lo span potrebbe essere necessario ristampare il book utilizzando la procedura Refresh dello stesso.
- Il comportamento degli span attivi cambia in base al tipo: i campi di testo comunicano col server quando l'utente modifica il testo e dà il fuoco ad un altro span o oggetto presente a video; le combo box chiamano il server quando l'utente cambia la selezione; i radio button ed i check-box effettuano il submit non appena l'utente clicca cambiandone lo stato.
- Normalmente non è necessario utiizzare questa proprietà perchè è più comodo utilizzare il flag Active nelle proprietà dello span all'interno di Instant Developer per attivare lo span.
- Normalmente si rendono attivi gli span il cui valore modifica sostanzialmente l'aspetto o il funzionamento del book. Ad esempio se alcuni span sono editabili in base al valore di un check-box è conveniente rendere attivo il check-box in modo da rendere subito evidente la possibilità di editare gli span o meno.
- A partire dalla versione 13.0.5600 è possibile modificare il valore della proprietà Active anche nell'evento AfterFormatting della sezione che contiene lo span.
Ultima modifica: 02/11/2022 / Validità: da 8.0.3560