FAQ - domande frequenti

{description

Domanda

Come posso fare una vista che mi trova i record (della mia sezione "eventi") che filtri quelli passati da quelli futuri?
Premesso che uno dei campi dei record è proprio la DATA dell'evento ed è di tipo data, immagino serva una vista che filtra i risultati che hanno il campo DATA maggiore o minore di "la data odierna" ma come dico a Sar-At la data odierna?
Deve essere una vista per esperti?

Risposta

Il trucchetto che spieghiamo tra poco vale per tutte le versioni di Sar-At da 7.0 in su. Quando vengono confrontate numericamente (quindi si guarda se siano minori, maggiori, minor-uguali, eccetera) le date, Sar-At considera "zero" la data odierna. Il numero 1 equivale a domani, -1 a ieri.
Quindi è sufficiente creare un filtro che peschi le date "maggiore di zero" per trovare tutti e soli gli eventi nel futuro, "maggiore o ugiale a zero" per trovare quelli di oggi o del futuro, eccetera.

Vale anche la pena di notare che una Vista creata con questi canoni è automaticamente compatibile con la cache di Sar-At, dunque molto molto veloce nell'esecuzione. In alternativa, sarebbe certamente possibile scrivere una Vista avanzata usando la funzione SQL chiamata CURDATE, ma a quel punto otterremmo una Vista la cui presenza in una pagina mastro impedisce l'uso della cache.