SviluppoPagamento protettoDettagli
- Le revisioni previste dal pacchetto sono gratuite.
- Se non risponde entro 3 giorni dalla consegna, il lavoro viene accettato automaticamente.
Il denaro viene riservato al momento del pagamento e sbloccato solo quando accetta il lavoro.

Esempio di risultato
Unire i file mensili delle vendite di 9 negozi in un unico report Excel
Come si esegue
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Cartella: sales/2026-10, 9 file trovati
2026-11-02 09:14:03 INFO shop-01.csv: 1.284 righe
2026-11-02 09:14:04 INFO shop-02.xlsx: 967 righe
2026-11-02 09:14:04 WARN shop-07.csv: saltate 3 righe senza prezzo (righe 88, 412, 913)
2026-11-02 09:14:05 INFO Fatto: 10.412 righe -> report-2026-10.xlsx (fogli "Vendite" e "Totali")
Impostazioni, non codice
I nomi delle colonne di ogni negozio si trovano in settings.ini, quindi un nuovo negozio o una colonna rinominata è una riga lì:
[columns]
date = Data, Data vendita, Giorno
product = Prodotto, Articolo, Descrizione
quantity = Q.tà, Quantità, Pz
price = Prezzo, Prezzo unitario
Una parte del codice
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Legge il file di un negozio e gli dà i nomi di colonna del report."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}: nessuna colonna per '{name}' (cercate: {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
File: un archivio ZIP con merge_sales.py (310 righe), settings.ini, requirements.txt e un README su come installare Python, eseguire lo script e cosa significa ogni messaggio del registro. Il cliente lo esegue sul proprio computer.
Cliente: una piccola catena di 9 cartolerie; ogni negozio invia le vendite del mese in un file CSV o Excel, con nomi di colonna leggermente diversi. Compito: un unico script che legge tutti i file di una cartella, porta le colonne a una stessa forma e scrive un solo report Excel con tutte le vendite e un foglio di totali per negozio.
Il cliente e tutti i dati sono inventati.
Informazioni sul servizio
Orari delle lezioni, turni, fasce di consegna o il programma di un evento vivono spesso in un foglio Google, e copiarli uno per uno in Google Calendar è lento e facile da sbagliare. Questo Google Apps Script legge le sue righe e crea un evento per ciascuna nel calendario che sceglie: titolo, inizio e fine, luogo e descrizione dalle sue colonne. Salva l'ID dell'evento nella riga, così quando cambia un orario e lo avvia di nuovo, l'evento si sposta invece di duplicarsi. Il Premium può distribuire gli eventi su più calendari, per esempio uno per insegnante o per aula. Gli invitati ricevono inviti solo se lo attiva. Gli eventi finiscono nel suo account Google, dove installa ed esegue lo script; non verifica sovrapposizioni e non prenota nulla per altri.
Cosa è incluso
- Cosa riceveUn archivio ZIP con il codice Apps Script e un README che spiega come aggiungerlo al foglio, scegliere il calendario ed eseguirlo; il codice è visibile anche nella pagina dell'ordine.
- Le sue colonneTitolo, data, inizio, fine, luogo e descrizione
- Nessun doppioneL'ID dell'evento nella riga la lega al suo evento
- Il suo fuso orarioOrari letti nel fuso orario che imposta
- Inviti solo se li vuoleGli invitati ricevono l'invito solo quando l'opzione è attiva
- Codice leggibileCon commenti, facile aggiungere una colonna in seguito
Come funziona
- 1CompitoLei invia le colonne del foglio e quale calendario usare
- 2CodiceScriviamo lo script e la guida all'installazione
- 3Lo proviLo esegue su una copia del foglio in un calendario di prova
- 4ModificheChiede modifiche nei limiti del pacchetto e invia eventuali messaggi di errore
Cosa ci serve da lei
I nomi delle colonne del foglio e qualche riga (vanno bene nomi inventati), come vi sono scritte date e orari, il suo fuso orario e il calendario in cui devono andare gli eventi (oppure, per il Premium, la colonna che sceglie il calendario). Cosa deve succedere quando una riga cambia o viene eliminata, e se gli invitati di una colonna devono ricevere inviti. Circa quante righe, e ogni quanto cambia il foglio.
Le chiederemo:
- Cosa c'è nel foglio?
- In quale calendario devono andare gli eventi?
- Cosa deve succedere quando le righe cambiano?
- Gli ospiti vanno invitati?
Confronto dei pacchetti
| Pacchetti | BaseDa righe a eventi15 € | StandardEventi con impostazioni30 € | PremiumStrumento calendario60 € |
|---|---|---|---|
| Tempi di consegna | 1 giorno | 2 giorni | 3 giorni |
| Revisioni | 1 | 2 | 3 |
| Codice | fino a 150 righe | fino a 400 righe | fino a 1.000 righe |
| File di codice | 1 | fino a 3 | fino a 8 |
| File di impostazioni | No | Sì | Sì |
| Messaggi di errore chiari e un log | No | Sì | Sì |
| Opzioni di avvio e una guida per eseguirlo a orari programmati | No | No | Sì |
| Guida all'installazione e all'avvio (README) | Sì | Sì | Sì |
| Linguaggio | Google Apps Script | Google Apps Script | Google Apps Script |
| Ordina Base | Ordina Standard | Ordina Premium |
Pagamento protetto
Paga al momento dell'ordine, ma il denaro viene sbloccato solo per un lavoro accettato.
- Prezzo fissoIl prezzo del pacchetto non cambia dopo il pagamento.
- Il denaro viene riservatoAl pagamento, l'importo viene solo riservato. Passa a Dleex quando accetta il lavoro.
- Verificato prima della consegnaOgni risultato passa un controllo di qualità prima di arrivare a lei, e lo vede nella pagina dell'ordine prima di accettarlo.
- Revisioni gratuiteRichieda revisioni nell'ambito del suo brief tante volte quante ne prevede il pacchetto.
- Accettazione dopo 3 giorniSe entro 3 giorni dalla consegna non accetta il lavoro né richiede una revisione, il lavoro viene accettato automaticamente. Se scrive nella chat dell'ordine dopo la consegna, l'ordine resta in attesa; dopo la nostra risposta potremmo far ripartire i 3 giorni e glielo indicheremo nella chat.
- Rifacimento o rimborso totaleSe il risultato non corrisponde al suo brief e le revisioni non hanno risolto il problema, oppure il lavoro richiede più del doppio dei tempi di consegna previsti, scriva nella chat dell'ordine: rifaremo il lavoro o le rimborseremo l'intero pagamento.
Domande e risposte
E se cambio una riga dopo che l'evento è stato creato?
Dallo Standard lo script trova l'evento tramite l'ID salvato nella riga e lo aggiorna. Nel Base, le righe che hanno già un evento vengono saltate, quindi l'evento lo modifica lei nel calendario.
Eliminerà eventi?
Solo nel Premium e solo secondo la regola che indica, per esempio rimuovere l'evento quando la riga è segnata Annullato. Gli eventi che non ha creato non vengono mai toccati.
Può inserire eventi nei calendari dei miei colleghi?
Nei calendari che può modificare, come quelli condivisi, sì. Altrimenti può invitarli come ospiti da una colonna, se attiva gli inviti.
Avete accesso al mio calendario?
No. Aggiunge lei lo script al suo foglio e ne autorizza l'accesso. Non accediamo mai al suo account Google.
Non hai trovato la risposta?


