gwtipstricks:idxtipstricks:utilizzo_clausola_where_1_1

Mapguide: utilizzo clausola where 1=1

Le clausole where utilizzate nei layer MapGuide sono hook point indipendenti che usiamo per applicare i nostri filtri (tramite uno string.replace()) alle query eseguite da mapguide. Sono da mettere sempre in AND l'uno con l'altro, quindi non si danno fastidio fra di loro, essendo condizioni sempre vere:

1=1 ⇒ usato per applicare filtri che parzializzano sul drawing corrente le informazioni grafiche restituite da maestro

2=2 ⇒ usato per applicare filtri temporali che parzializzano per un dato istante, che deve stare nel range individuato dalle date contenute nei campi start_date ed end_date (relativi alla classe che ospita il layer). Il supporto ai filtri temporali c'è già, e si possono manipolare in maniera programmatica.

3=3 ⇒ usato per applicare filtri che parzializzano per ambito (se la classe del layer è ambitata)

Quindi è buona prassi, ogni volta che si crea un layer, a prescindere dal fatto che venga usato in una planimetria o una cartografia, aggiungere nella sezione 'Filter' la clausola completa

1=1 AND 2=2 AND 3=3

Non da fastidio e, se il layer necessita di altre clausole, si puo semplicemente fare cosi:

(1=1 AND 2=2 AND 3=3) AND (custom_clause)


In ogni caso, se non vengono utilizzati gli hook point (clausole where) nel filtro, ma si prova ad eseguire filtri in mappa, nel log viene generato un warning dettagliato, con nome layer e e hook point mancante.

  • gwtipstricks/idxtipstricks/utilizzo_clausola_where_1_1.txt
  • Ultima modifica: 2019/11/06 09:42
  • (modifica esterna)