Condizioni di notifica
Se in un pannello è contenuta una query di lookup basata su documenti in cui è stata attivata la funzione di Smart Lookup, l'evento OnGetSmartLookup viene notificato al documento durante la gestione della procedura di smart lookup, cioè quando l'utente scrive testo nei campi di lookup e preme il tasto INVIO.
Utilizzo consigliato
Questo evento può essere utilizzato per modificare il comportamento standard della procedura di Smart Lookup, descritta di seguito.
Argomenti
Document | Documento tipo usato come fonte della lista valori. |
Recordset | Recordset che occorre riempire se si personalizzano le chiamate eseguite durante l'evento di Smart Lookup. |
Level | La procedura di Smart Lookup esegue più tentativi, allargando sempre più il campo di ricerca. Questo parametro intero indica il tentativo a cui si è arrivati. |
Null Value | Parametro di output booleano. Se lo si imposta a true, verrà ritornato il valore NULL (nessun risultato trovato) al pannello. |
Skip | Parametro di output booleano. Se lo si imposta a true non verranno eseguite le chiamate standard per il livello attuale. |
Cancel | Parametro di output booleano. Se lo si imposta a true, la procedura di Smart Lookup verrà interrotta. |
Caller Document | Documento per cui viene lanciata la procedura di Smart Lookup. Può essere nullo. |
Url Path | Parte di URL che verrà appeso all'endpoint del servizio per effettuare la chiamata. |
Parameters | Parametri che verranno inviati durante la chiamata. |
- Durante la gestione dell'evento, le proprietà valorizzate del documento indicano i dati che l'utente ha introdotto e gli eventuali filtri specificati nella query di lookup del pannello.
- L'elenco dei livelli di ricerca è il seguente:
Livello 0: vengono cercati i dati che corrispondono esattamente a ciò che l'utente ha inserito, usando clausole AND se l'utente ha inserito dati in più campi.
Livello 1: vengono cercati i dati che cominciano per quello che l'utente ha inserito, usando clausole AND se l'utente ha inserito dati in più campi.
Livello 2: vengono cercati i dati che contengono ciò che l'utente ha inserito, usando clausole AND se l'utente ha inserito dati in più campi.
Livello 3: vengono cercati i dati che contengono ciò che l'utente ha inserito, usando clausole OR se l'utente ha inserito dati in più campi.
Livello 4: vengono cercati i dati che contengono ciò che l'utente ha inserito, cercando in tutte le proprietà del documento e usando clausole OR se l'utente ha inserito dati in più campi. In questo livello non vengono prese in considerazione le proprietà di tipo testo qualora la loro lunghezza massima sia inferiore a 5 caratteri. - Impostando il parametro Skip a true verranno effettuati sempre nuovi tentativi, finché non verrà impostato a true anche il parametro Cancel, oppure Null Value.
- Per ottenere il corretto caricamento delle proprietà, è necessario che i nomi fisici (DB Code) e l'ordine delle colonne del recordset siano corrispondenti ai nomi fisici (DBCode) e all'ordine delle proprietà del documento da caricare.
- Qualora il servizio richieda l'autenticazione OAuth e l'Access Token sia scaduto, il framework tenta di rinnovarlo automaticamente se è valorizzato anche il Refresh Token.
- Quando viene notificato questo evento, il framework ha già preparato la chiamata valorizzando opportunamente i parametri UrlPath e Parameters.
- Internamente verrà usata la funzione GetHTTP per effettuare la chiamata con la mappa dei parametri così com'è. Essa contiene già il parametro ID_HEADERS con gli header da aggiungere alla richiesta tra cui l'header per l'autenticazione (
Authorization: Bearer AccessToken
).
Ultima modifica: 15/11/2021 / Validità: da 13.1.5700