Mantenere Smartsheet in linea con il tuo file DuckDB, secondo un programma
Scrivi la query SQL una sola volta. Query Streams la esegue secondo la tua pianificazione, da ogni cinque minuti a settimanalmente, e scrive le righe nel tuo foglio Smartsheet. Abbina le righe tramite una chiave in modo che le modifiche vengano applicate correttamente e le righe escluse dalla query vengano rimosse, oppure aggiungile semplicemente. Niente Zapier, niente script, niente esportazioni. La prima volta ci vogliono circa quindici minuti, ed è incluso nel piano gratuito.
Quello che otterrai alla fine
Un foglio Smartsheet che contiene le righe restituite dalla query DuckDB e viene aggiornato a intervalli regolari, da cinque minuti a una volta alla settimana, con una ricevuta che riporta le modifiche apportate a ogni esecuzione. Ad esempio:
DuckDB holds your data in a file. Your team works in Smartsheet. The usual bridge is a Zapier or Make scenario, or a CSV someone uploads that breaks quietly and copies one row at a time. Query Streams Automation does it differently: the Agent that already reads your DuckDB file runs your saved SQL on a schedule and writes the whole result into Smartsheet in one pass, matching rows by a key so the sheet stays correct rather than growing.
Cosa ti servirà
Un account Query Streams
Il piano gratuito è sufficiente per questa guida. Registrati su my.querystreams.com.
DuckDB connesso tramite l'agente
The Agent installed on the computer that holds your DuckDB file, or on one that reads it from a network share, with the connection added in Data Agents. Not done yet? Connetti prima DuckDBCi vogliono circa dieci minuti.
Una query salvata
La SELECT che vuoi mantenere sincronizzata, salvata in Generatore di queryIl passaggio 1 qui sotto ne mostra uno. Se si desidera che le righe modificate vengano aggiornate sul posto, includere una colonna univoca per riga, come un ID.
Le tue credenziali di accesso a Smartsheet
Smartsheet richiede l'autorizzazione a Query Streams per leggere e scrivere fogli di calcolo. Anche un token di accesso API è valido.
Dove si svolge il lavoro? Sul computer su cui è in esecuzione l'Agent, la query viene eseguita in base alla pianificazione e le righe vengono scritte in Smartsheet; pertanto, il computer deve rimanere acceso. Il browser può essere chiuso. Query Streams non memorizza mai le righe.
File on another computer? The Agent does not have to run on the computer that holds your DuckDB file: it can read the file from a network share. Reaching a file on a network share, below, shows what that takes.
Configuralo in sei passaggi
-
Salva la query che desideri mantenere sincronizzata
Apri Generatore di query, scegli la tua connessione DuckDB (non sei ancora connesso? Inizia da qui), e scrivi la SELECT che restituisce esattamente le righe e le colonne che desideri in Smartsheet. Questa estrae alcune colonne da un ordini tavolo:
Esempio · SQLSELECT order_id, customer_name, order_total FROM main.orders ORDER BY order_total DESC LIMIT 100;
Eseguilo, poi Risparmiare con un nome che riconoscerai, come "Ordini per Smartsheet". Mantieni una colonna univoca per riga nella SELECT, qui ID ordineQuesta è la chiave che Full Sync utilizza per aggiornare le righe direttamente sul posto. Modifica e salva nuovamente la query in seguito e l'automazione rileverà la modifica alla successiva esecuzione.
-
Apri Automazione e scegli Smartsheet
Nel portale, apri Automazione (menu principale) Flussi → Programmati → Automazione) e clicca Nuova automazione. La procedura guidata ha cinque brevi passaggi. Su Passo 1 clicca sul Smartsheet carta.
Visualizzi invece la sezione "Prima di iniziare"? La procedura guidata si apre solo quando un agente è online con una connessione e almeno una query salvata è presente. La pagina elenca quale delle tre query manca e fornisce un link per recuperarla.
-
Connetti Smartsheet
SU Passo 2 clic Connettiti con SmartsheetAccedi e autorizzalo. Smartsheet ti chiede di consentire a Query Streams di leggere e scrivere fogli. Anche un token di accesso API funziona. Sei già connesso? La pagina offre Utilizza questa connessione Invece.
-
Scegli dove atterrano le righe
SU Passo 3 scegliere il Foglio le righe dovrebbero essere inserite. Crea prima il foglio in Smartsheet se desideri un foglio vuoto; la procedura guidata elenca solo i fogli esistenti. Un'automazione per foglio.
-
Scegli la query e decidi come vengono visualizzate le righe
SU Passo 4 aprire il Query salvata Seleziona la query dal passaggio 1. Query Streams la esegue una volta per leggere le colonne, ti indica quante righe restituisce e ti mostra due opzioni:
Aggiungi · veloceAppendice
Ogni esecuzione aggiunge le righe della query in fondo al foglio. Nulla viene aggiornato né eliminato, quindi è la soluzione ideale per archiviare rapidamente log, eventi e cronologia. Non è necessaria una colonna chiave. Una riga che non subisce modifiche non viene aggiunta nuovamente; una riga i cui valori sono cambiati viene aggiunta come nuova riga sottostante, mentre la precedente rimane invariata.
Sincronizzazione completa · specchiSincronizzazione completa
Le righe sono abbinate da un chiave colonna come un ID ordine. Le nuove righe vengono aggiunte, le righe modificate vengono aggiornate direttamente e le righe che non vengono più restituite dalla query vengono rimosse, incluse le righe inserite manualmente nel foglio, quindi è consigliabile conservare le righe inserite manualmente in un altro foglio. Questa è la soluzione ideale per inventario, pipeline, dati anagrafici e dashboard.
Dettagli su Smartsheet. La colonna principale del foglio viene rinominata con il nome della colonna chiave e una colonna mappata di tipo Data, Casella di controllo, Menu a tendina o Contatto viene convertita in Testo/Numero in modo che i valori della query siano compatibili. Le colonne non considerate dalla query rimangono invariate.
La sincronizzazione completa viene impostata per colonna, ed è proprio questo che la rende utile in un foglio di calcolo condiviso:
- Chiave
- La colonna che identifica una riga, ad esempio ID ordineDeve essere univoco nel risultato della query; Query Streams lo verifica automaticamente e rifiuta i duplicati.
- Sincronizzazione
- I dati vengono sovrascritti da DuckDB a ogni esecuzione. Se qualcuno modifica una colonna di sincronizzazione in Smartsheet, l'esecuzione successiva ripristina il valore originale.
- Conserva
- Viene scritta al primo arrivo della riga e non viene più confrontata, quindi una modifica in DuckDB non attiva un aggiornamento. Per note, responsabili e date di follow-up inseriti manualmente dal team, utilizzare una colonna che non è inclusa nella query: le colonne presenti solo in Smartsheet non vengono mai modificate dalla sincronizzazione.
Quale dei due è più veloce? La modalità "Aggiungi" scrive senza prima leggere il foglio di calcolo. La modalità "Sincronizzazione completa" lo legge, confronta ogni riga e scrive solo le differenze, quindi richiede più tempo ma il foglio corrisponde sempre alla query. È possibile passare da una modalità all'altra in un secondo momento dal pannello di modifica dell'automazione.
Per un foglio di cui ti puoi fidare, clicca Crea tutte le colonne come Sincronizzate, quindi fai clic sull'icona della chiave su ID ordine per renderlo il ChiaveQuery Streams analizza l'intero risultato per confermare che la chiave sia univoca e ti avvisa in caso contrario. Conserva le note del tuo team in colonne che non fanno parte della query; queste non vengono mai modificate. Per un registro che dovrebbe solo crescere, fai clic Crea tutte le colonne come Mantieni invece e salta il tasto. Fai clic Continuare.
-
Imposta il programma, dagli un nome, crealo
SU Passo 5 scegliere Eseguire secondo un programma e scegli un Frequenza:
Frequenza Corse Ogni 5 minuti ogni 5 minuti, il più veloce consentito Ogni 15 minuti ogni 15 minuti Ogni 30 minuti ogni 30 minuti Ogni ora all'inizio di ogni ora Tutti i giorni alle 9:00 ogni giorno alle 9:00, l'impostazione predefinita Tutti i giorni alle 6 del mattino tutti i giorni alle 6:00 Nei giorni feriali alle 9:00 Dal lunedì al venerdì alle 9:00 Settimanale (lunedì ore 9:00) ogni lunedì alle 9:00 Programma personalizzato i tuoi minuti, ore, giorni della settimana o giorni del mese I tempi seguono il Fuso orario tu scegli, che inizia come il tuo browser. Puoi anche scegliere Solo manuale e premere Correre Puoi eseguire l'automazione quando vuoi; una pianificazione può essere aggiunta in seguito dal pannello di modifica dell'automazione. Le esecuzioni pianificate avvengono sull'agente, quindi continuano anche quando il browser è chiuso. Se il computer su cui è in esecuzione l'agente è spento quando è prevista un'esecuzione, l'esecuzione mancata viene eseguita una sola volta, poco dopo il riavvio dell'agente.
Dagli un Nome dell'integrazione, come “Ordini a Smartsheet, giornalieri”, controlla il Pronto a creare riassunto e clicca Creazione di automazioneTornato alla pagina Automazione, premi Correre Esegui subito la prima sincronizzazione invece di aspettare la pianificazione. Apri Smartsheet: le righe sono lì, sotto le intestazioni di colonna.
Questo è tutto. D'ora in poi il foglio di calcolo si aggiorna automaticamente. Nulla esce dalla rete tranne le righe restituite dalla query e nessuno deve ricordarsi di eseguire nulla.
Ciò che vedi dopo
IL Pagina sull'automazione elenca ogni automazione con il relativo stato, origine, destinazione, chiave, pianificazione, ultima sincronizzazione e conteggio delle righe. Aprine una per il Esecuzioni scheda: ogni esecuzione con il relativo trigger (manuale o pianificato), durata e righe create, aggiornate, eliminate e invariate. Prestazione La scheda mostra i dati elaborati e il tasso di successo nell'arco di 7-90 giorni.
Ti viene comunicato quando si ferma
Ogni organizzazione ha un Problemi di sincronizzazione Regola di avviso fin dal primo giorno: una notifica in-app e un'email in caso di errore di sincronizzazione, e un'ulteriore notifica al termine del processo. Un messaggio per ogni errore, mai uno per ogni tentativo di sincronizzazione. Disattivalo o modifica i canali in Streams → Avvisi e segnalazioni.
Si mette in pausa quando dovrebbe
Se Smartsheet smette di accettare la connessione o il connettore dati viene eliminato, l'automazione si interrompe e ne indica il motivo. Riconnettiti o seleziona una nuova origine e premi Riprendi. Altri errori consentono di proseguire con la pianificazione e vengono visualizzati nella riga.
Colonna chiave mancante
Se qualcuno rinomina o elimina la colonna chiave in Smartsheet, la sincronizzazione completa si interrompe prima di scrivere qualsiasi cosa e mostra Opzioni fisse: ripristina la colonna con il suo nome esatto ed esegui nuovamente la sincronizzazione. Le altre colonne non vengono mai eliminate durante la sincronizzazione.
Cosa consentono i piani
L'automazione è inclusa in tutti i piani, compreso quello gratuito, senza limiti al numero di automazioni che è possibile creare. Ogni piano limita invece il numero di righe che una query può restituire per ogni esecuzione:
| Piano | Righe per esecuzione |
|---|---|
| Gratuito | 125 |
| Nucleo personale | 500 |
| Plus personale | 1,000 |
| Nucleo aziendale | 2,500 |
| Business Plus | 5,000 |
| Gestione massima | 10,000 |
| Nucleo aziendale | 25,000 |
| Enterprise Plus | 100,000 |
| Enterprise Max | 250,000 |
Se una query restituisce più risultati, l'esecuzione viene sospesa anziché interrotta e l'automazione indica quale piano è più adatto o suggerisce di aggiungere un filtro, ad esempio un intervallo di date. Ogni esecuzione completata con successo viene inoltre conteggiata ai fini della quota di Data Realm, lo stesso pool utilizzato dalle query di Excel e Fogli Google. Consulta la pagina dei prezzi per le indennità.
Buone mosse successive
- Aggiungi un filtro alla query, ad esempio gli ultimi 90 giorni, in modo che il foglio rimanga piccolo e veloce e rispetti il limite di righe del tuo piano.
- Conserva gli appunti scritti a mano in colonne separate., al di fuori della query, quindi sopravvivono a ogni sincronizzazione.
- Raggruppa le tue automazioni Una volta che ne hai creati alcuni, puoi modificarli dal pannello Modifica; la pagina Automazione filtra per gruppo.
Reaching a file on a network share
The Agent opens files as a background service, not as you, so a file on another computer needs one extra step. Which step depends on the computer the Agent runs on.
If the test cannot get to the share, look for these words in its result: unreachable means the Agent’s computer got no answer from the server. On Linux or a Mac, not mounted means the share still has to be mounted, and that message includes the exact mount command for your server.
DuckDB file on a share? DuckDB allows one writer at a time, so the Agent cannot open a file that another program has open for writing; on a \\server\share path the test says it is open for writing by another program. Close it there, or point the connector at a file nobody is writing to. Every query reads the file across the network, so a large file answers more slowly than it would from a local disk.
Test failed on a share?
Every run reaches the file the same way the connection test does. If runs start failing after something changed on the file server, a new password for example, open the connector in Agenti dati e clicca Verifica la connessione. The test result, and the line under the file path, name the problem:
| Messaggio | Causa | Aggiustare |
|---|---|---|
| DuckDB database file not found: followed by a \\server\share path you know is right | No login is stored, so the Agent tried the share as its own account and could not see the file: the share turned that account away, or the server did not answer. In the first case the line under the path says Access denied for the agent’s service account. | Cliccare Service identity under the path and store a login that can read the share. If the line under the path does not say access denied, check that the Agent’s computer can open the share at all. |
| Share \\server: access denied — add credentials for this server | A login is stored, but that account has no permission on the share, or another sign-in to the same server is in the way; the message before this line says which. | Ask whoever runs the server to give that account read access, or store an account that has it. For a sign-in in the way, see the two rows on one login per server below. |
| Share \\server: the credentials were refused — check the username and password | The server turned the stored login down: a typo, the wrong domain, or a password changed since it was saved, which also stops runs that used to work. | Click the chip under the path and type the password again; for an account made on the server itself, leave Domain blank. After a refused login the Agent waits a minute before it tries that same one again, so the account is not locked out; saving a corrected password tries straight away. |
| Share \\server: server unreachable from the agent machine | The Agent’s computer got no answer from the server: a wrong server name, the server is off, or a firewall blocks file sharing. | On the Agent’s computer, open the same \\server\share path in File Explorer. If that fails too, it is a network problem for whoever runs the network. |
| Another connector on this agent already signs in to \\server as … | Windows lets one computer sign in to a server as one account at a time, and another connector on this Agent uses a different login for that server. | Store the same login the other connector uses, or change it on every connector that reads that server. |
| Windows already holds a sign-in to \\server for … | Something on the Agent’s computer other than the Agent is already signed in to that server as a different account, and the Agent never closes a sign-in it did not make. | Do what the rest of the message says: use that same account on this connector, or close the other sign-in on the Agent’s computer. If it says the share is already readable through that sign-in, choose Use service identity in the login box instead. |
| This agent build cannot sign in to \\server with stored credentials. | The Agent is an older version that cannot use stored logins. | Update the Agent, then test again. |
| \\server\share is not mounted on this Linux agent (o macOS agent) | The Agent runs on Linux or a Mac and the share has not been mounted on its computer yet; logins stored in the Portal are not used there. | Mount it with the command the message gives you, then test again. Step by step: su Linux · on a Mac. |
| … is open for writing by another program | DuckDB allows one writer at a time, and another program has the file open for writing. | Close the file in that program, or point the connector at a file nobody is writing to. |
Domande che le persone si pongono
La sincronizzazione sovrascriverà le note aggiunte dal mio team in Smartsheet?
Non se le note si trovano in una colonna separata. Le colonne che esistono solo in Smartsheet e non nella query non vengono mai modificate, quindi aggiungi una colonna Note o Proprietario accanto a quelle sincronizzate e digita lì. Colonne contrassegnate Sincronizzazione vengono ripristinati al valore DuckDB ad ogni esecuzione; Conserva Le colonne vengono riempite al primo arrivo di una riga e non vengono confrontate successivamente.
I miei dati DuckDB vengono memorizzati da Query Streams?
No. L'agente esegue la query sul tuo lato e invia le righe direttamente a Smartsheet tramite un collegamento crittografato. Query Streams conserva la configurazione, la pianificazione e il conteggio delle righe per ogni esecuzione, non le righe stesse.
Il mio computer deve rimanere acceso?
È il computer che esegue l'Agent a farlo, perché è l'Agent che esegue la query e scrive su Smartsheet. Il tuo laptop e il tuo browser possono essere chiusi. Se quel computer è spento quando è prevista un'esecuzione, l'esecuzione mancata si verifica una sola volta, poco dopo il riavvio dell'Agent.
Posso modificare la query in seguito?
Sì. Modifica e salva il file in Query Builder e la successiva esecuzione utilizzerà automaticamente la nuova versione. Se aggiungi o rimuovi colonne, apri il pannello di modifica dell'automazione per mapparle.
È possibile che due automazioni scrivano sullo stesso foglio di calcolo?
No, una sola automazione per foglio. Imposta una seconda automazione su un foglio diverso oppure amplia la query alla base della prima.
Il piano gratuito copre davvero tutto questo?
Sì. Il piano gratuito è un piano che mantieni, non una prova che scade. L'automazione è inclusa in ogni piano; ciò che cambia a seconda del piano è il numero di righe che una query può restituire per ogni esecuzione. Scopri esattamente cosa include il piano gratuito. pagina dei prezzi.
Guide correlate
Ogni guida per DuckDB
Non è proprio la tua configurazione?
- Hai una cartella di file Parquet anziché un file di database DuckDB? Parquet Folder li legge tutti come un'unica tabella → Parquet Folder
Setup trouble?
- Agent says the file or folder does not exist, or access is denied? Mapped drives, network shares, OneDrive and Linux home folders each need one fix → Where the Agent can read files from
- Agent shows Offline, or Test connection and Browse are greyed out? Check that the Agent is online → Is the Agent online?

