Ho un report di Data Explorer che utilizza 2 parametri di data con valori predefiniti codificati.
-- [params]
-- date :start_date = 2024-12-01
-- date :end_date = 2025-01-01
I valori predefiniti codificati funzionano per la maggior parte dei tipi di parametri, ma per i parametri di data, vorrei poter impostare valori dinamici, come il lunedì della settimana corrente come data di inizio e il venerdì della settimana corrente come data di fine:
-- [params]
-- date :start_date = cast(date_trunc('week', current_date) as date) + 0
-- date :end_date = cast(date_trunc('week', current_date) as date) + 4
^ questo ovviamente non ha funzionato.
Mi piacerebbe molto mantenere lo stesso report con quei parametri di data esposti in modo da poter continuare a eseguire il report manualmente per date diverse, se necessario. Ma voglio anche utilizzare lo stesso report con il plugin Automation per aggiornamenti post ricorrenti su un argomento utilizzando la funzione “Pianifica un post in un argomento con i risultati di Data Explorer”.
Qualsiasi suggerimento su come potrei raggiungere questo obiettivo?
Direi che dovrai “fare una fork” del report, averne uno specifico che compensi correttamente in base alla data corrente per l’esploratore di dati e poi un secondo report per l’uso manuale.
So che è un po’ fastidioso avere delle copie, ma sembra la soluzione più semplice.
Se il numero diventa alto, un ottimo approccio è usare l’API di Discourse per configurarlo e mantenere la fonte su GitHub. In questo modo si può anche portare la cronologia e evitare il forking manuale.
Funzionerebbe spostare i valori predefiniti nella query e usarli finché non viene selezionata alcuna data? Quindi, qualcosa del genere:
-- [params]
-- null date :start_date
-- null date :end_date
SELECT id as topic_id, created_at
FROM topics
WHERE created_at > COALESCE(:start_date, CAST(date_trunc('week', current_date) AS DATE))
AND created_at < COALESCE(:end_date, CAST(date_trunc('week', current_date) AS DATE)+4)