Utilizzare la finestra di dialogo Condizione di tracciamento per definire le istruzioni SQL relative al controllo del tracciamento di rete. È necessario conoscere SQL e il modello di dati.
Immettere l'istruzione direttamente o fare clic su Genera per generare una bozza di query SQL. Quindi, fare clic su Assistente per avviare Assistente SQL.
Funzione di costo: istruzione SQL che restituisce un numero; se il costo non è applicabile, verrà restituito il valore NULL. Quest'ultimo viene considerato come costo zero.
Condizione di arresto: istruzione SQL che restituisce il valore NULL se la condizione non è applicabile. In questo caso, l'entità geografica non è finale; sarà invece finale se la condizione restituisce qualsiasi altro numero.
Bozza di query SQL |
Descrizione |
Esempio: tracciamento relativo ad un impianto con condizione di arresto |
case /* Point */ when &f_class_id=33 then ( select case /* Armature */ when f_class_id_attr=3 then ( select 1 from GA_ARMATURE where fid=ga_point.fid_attr and <CONDIZIONE>) else null end from GA_POINT ga_point where fid=&fid) else null end |
Esempio: tracciamento non relativo ad un impianto con condizione di arresto |
case /* <classe di entità geografiche> */ when &f_class_id=<id> then ( select 1 from <classe di entità geografiche> where fid=&fid and <CONDIZIONE>) else null end |
<CONDIZIONE> |
Segnaposto utilizzato in una condizione di arresto. Quando si desidera arrestare il tracciamento, sostituire questo valore con l'attributo che contiene le informazioni. Esempio: l'attributo OPEN = YES indica la presenza di armature aperte. case /* Point */ when &f_class_id=33 then ( select case /* Armature */ when f_class_id_attr=3 then ( select 1 from GA_ARMATURE where fid=ga_point.fid_attr and not OPEN = 'yes') else null end from GA_POINT ga_point where fid=&fid) else null end |
Esempio: tracciamento relativo ad un impianto con funzione di costo |
case /* Point */ when &f_class_id=33 then ( select case /* Armature */ when f_class_id_attr=3 then ( select <VALORE> from GA_ARMATURE where fid=ga_point.fid_attr) else null end from GA_POINT ga_point where fid=&fid) else null end |
Esempio: tracciamento non relativo ad un impianto con condizione di arresto |
case /* <classe di entità geografiche> */ when &f_class_id=137 then nvl(( select <VALORE> from <classe di entità geografiche> where fid=&fid ),0) else 0 end |
<VALORE> |
Segnaposto utilizzato in una funzione di costo. Sostituire questo valore con l'attributo di costo da ridurre al minimo nel tracciamento. Esempio: PIPE_LENGTH |
select 1 |
select dell'Helper per una condizione di arresto per ottenere un valore non NULL se si applica la condizione. |