Utilice el cuadro de diálogo Condición de rastreo para definir sentencias SQL que controlarán el rastreo de la red. Se necesita conocimiento de SQL y modelo de datos.
Introduzca la sentencia directamente o pulse Generar para generar un esbozo de consulta SQL. A continuación, pulse Asistente para abrir el Asistente SQL.
Función de coste: sentencia SQL que devuelve un número; puede devolver NULL si el coste no se puede aplicar. Esto se considera como coste cero.
Condición de parada: sentencia SQL que devuelve NULL si la condición no se puede aplicar. En ese caso, el elemento no es de parada. Si la condición devuelve cualquier otro número, se trata de un elemento de parada.
Esbozo de consulta SQL |
Descripción |
Ejemplo: rastreo de suministro con condición de parada |
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 <CONDITION>) else null end from GA_POINT ga_point where fid=&fid) else null end |
Ejemplo: rastreo de un sistema que no es de suministro con condición de parada |
case /* <feature class> */ when &f_class_id=<id> then ( select 1 from <feature class> where fid=&fid and <CONDITION>) else null end |
<CONDITION> |
Marcador de posición usado en una condición de parada. Sustituya este valor con el atributo que contiene la información sobre cuándo desea detener el rastreo. Ejemplo: el atributo OPEN = YES indica armaduras abiertas. 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 |
Ejemplo: rastreo de suministro con función de coste |
case /* Point */ when &f_class_id=33 then ( select case /* Armature */ when f_class_id_attr=3 then ( select <VALUE> from GA_ARMATURE where fid=ga_point.fid_attr) else null end from GA_POINT ga_point where fid=&fid) else null end |
Ejemplo: rastreo de un sistema que no es de suministro con condición de parada |
case /* <feature class> */ when &f_class_id=137 then nvl(( select <VALUE> from <feature class> where fid=&fid ),0) else 0 end |
<VALUE> |
Marcador de posición usado en una función de coste. Sustituya este valor con el atributo de coste que se minimizará durante el rastreo. Ejemplo: PIPE_LENTH |
select 1 |
Select de ayuda para que una condición de parada obtenga un valor de devolución que no sea nulo si se aplican las condiciones. |