Condizioni di notifica
Questo evento viene notificato al documento per conoscere la definizione di una Named Property. Questo può avvenire nei seguenti casi:
- In un pannello DO è stata aggiunta alla master query un'espressione (costante stringa) che rappresenta una colonna calcolata del pannello. In questo caso il pannello notifica l'evento al documento per conoscere la definizione della proprietà calcolata.
- Se in una procedura Visual Code viene usata la funzione GetNamedPropertyDefinition per sapere la definizione della colonna calcolata sul documento.
Utilizzo consigliato
Occorre gestire questo evento se si desidera che il documento abbia proprietà calcolate. Per ogni proprietà calcolata riconosciuta occorre impostare almeno il tipo (DataType) e la lunghezza (MaxLength). Se una Named Property non viene riconosciuta, non effettuare alcuna impostazione sul parametro PropertyDefinition in modo da far sapere al chiamante che la proprietà non viene gestita.
Argomenti
Property Name | E' il nome della Named Property di cui si richiede la definizione |
Property Definition | E' l'oggetto di tipo IDPropertyDefinition che deve essere usato per comunicare al chiamante la definizione della proprietà |
Esempio di codice
// **************************************************************
// Fired when the framework want know a named property definition
// **************************************************************
event Ordine.GetNamedPropertyDefinition(
string PropertyName //
IDPropertyDefinition PropertyDefinition //
)
{
// Voglio riconoscere la proprietà nominata NUMERO RIGHE che rappresenta il numero di righe
// dell'ordine
if Upper(PropertyName) = NUMERO RIGHE
{
// E' una proprietà intera
PropertyDefinition.DataType := Integer
//
// Al massimo di 3 cifre
PropertyDefinition.MaxLength := C3
}
}
// Fired when the framework want know a named property definition
// **************************************************************
event Ordine.GetNamedPropertyDefinition(
string PropertyName //
IDPropertyDefinition PropertyDefinition //
)
{
// Voglio riconoscere la proprietà nominata NUMERO RIGHE che rappresenta il numero di righe
// dell'ordine
if Upper(PropertyName) = NUMERO RIGHE
{
// E' una proprietà intera
PropertyDefinition.DataType := Integer
//
// Al massimo di 3 cifre
PropertyDefinition.MaxLength := C3
}
}
- Se la proprietà non viene riconosciuta, è consigliabile di non toccare l'oggetto IDPropertyDefinition passato come parametro.
- Tramite le Named Property è possibile definire un pannello completamente riconfigurabile a runtime.
Ultima modifica: 03/01/2022 / Validità: da 6.5.2680