Esportazioni su fogli di calcolo

Una riga per obiettivo raggiunto, in un foglio o elenco di sua proprietà, per chi nel team non aprirà mai uno strumento BI.

1. Quale scegliere

Svolgono lo stesso compito. La differenza è quale account usa già l’azienda.

Google SheetsMicrosoft SharePoint
Una riga diventauna riga aggiunta a un foglioun elemento in un elenco
Da fornirechiave di account di servizio, ID del foglio di calcolotenant, ID client, client secret, ID sito, ID elenco
Colonneotto, in ordine fissoquelle dell’elenco: le consultiamo prima
Configurazione necessariacreare un account di servizio e condividere il foglio con essoregistrare un’app e concederle un sito

È il fratello minore del connettore BigQuery. Quello serve ai team dati con SQL; questo a chi vuole ordinare per valore e inviare i primi dieci risultati alle vendite.

2. Google Sheets: la condivisione che tutti dimenticano

Un account di servizio è un utente autonomo, con un’e-mail propria che termina in .iam.gserviceaccount.com. Creare la chiave non basta: deve condividere il foglio con quell’indirizzo, come farebbe con un collega.

Senza questo passaggio ogni scrittura restituisce 403. Lo diciamo esplicitamente nel messaggio, perché quello di Google non lo menziona e si finisce per passare un pomeriggio sulla chiave.

Incolli l’URL completo se è più semplice

L’ID del foglio è la parte tra /d/ e /edit. Incolli l’indirizzo completo e ne estraiamo quella parte.

I valori vengono scritti grezzi, volutamente

Non come «inseriti dall’utente». Altrimenti Google leggerebbe un ID cliente come 00123 come numero, eliminando gli zeri iniziali, e un valore che inizia con = diventerebbe una formula.

3. SharePoint: leggiamo le colonne prima di scrivere

SharePoint rifiuta un elemento che nomina una colonna inesistente e i nomi interni sono quelli scelti alla creazione dell’elenco. Supporre un insieme fisso sarebbe una scommessa persa con un cliente su due.

Recuperiamo quindi le colonne una volta all’ora e scriviamo solo in quelle esistenti e non di sola lettura. Un elenco con la sola colonna predefinita Title riceve il nome dell’obiettivo e nient’altro, invece di fallire per ogni obiettivo.

Le colonne facoltative, se le crea: MPSession, MPChannel, MPUser, MPValue, MPCurrency, MPUrl, MPTime.

Il permesso consigliato da Microsoft non è quello che serve

Per questa chiamata, la documentazione Microsoft indica Sites.ReadWrite.All come permesso minimo. Concede scrittura a tutti i siti del tenant, per un’integrazione che compila un solo elenco.

Usi invece Sites.Selected : un’app con quel permesso non ha accesso per impostazione predefinita e un amministratore le concede scrittura su un solo sito. Concedere entrambi annulla la restrizione - il permesso ristretto funziona solo finché l’app non ne ha altri.

4. Cosa arriva nella riga

Timestamp, progetto, sessione, ID cliente, nome obiettivo, valore, valuta e link di riproduzione. In SharePoint gli stessi valori vanno nelle colonne esistenti, nel formato richiesto dal tipo: una colonna collegamento riceve un oggetto link, una colonna testo lo stesso indirizzo come testo.

Una cella vuota significa «nessun valore concordato», non zero

Un obiettivo senza valore monetario lascia la cella vuota. Uno zero entrerebbe nella somma del foglio producendo un totale mai esistito.

L’ID cliente viene cercato alla consegna

Non quando scatta l’obiettivo. L’identificazione avviene di solito all’accesso, quindi spesso dopo l’obiettivo. Cercare pochi secondi dopo costa meno alla nostra pipeline di eventi e aumenta la possibilità di trovare un nome.

Entrambe le credenziali sono conservate cifrate con AES-256-GCM, mai più mostrate e volutamente escluse dalla coda interna che trasporta l’attività.

Tutti i marchi citati appartengono ai rispettivi titolari. MousePlayer non ha rapporti commerciali con questi fornitori.