Uno script che rinomina le scansioni o prepara un report è utile, ma lo diventa davvero quando parte da solo, senza che nessuno debba ricordarsene. Su Windows lo strumento per farlo è già installato: l'Utilità di pianificazione. È potente e anche un po' scoraggiante, con decine di opzioni distribuite su sei schede. Vediamo quali contano davvero per automatizzare il lavoro d'ufficio.
Aprire lo strumento
Si cerca «Utilità di pianificazione» nel menu Start, oppure si digita taskschd.msc nella finestra Esegui (Win+R). A sinistra c'è la Libreria Utilità di pianificazione, che contiene già molte attività di sistema. Conviene creare una cartella propria, per esempio «Ufficio», con il comando Nuova cartella: tenere separate le proprie attività da quelle di Windows rende tutto più facile da gestire.
Attività di base o attività completa
Nel pannello a destra ci sono due comandi. Crea attività di base è una procedura guidata in pochi passaggi, adatta ai casi più semplici. Crea attività apre invece la finestra completa con tutte le schede. Anche per un primo esperimento consiglio la seconda: le opzioni che fanno la differenza tra un'attività affidabile e una che fallisce in silenzio stanno proprio lì.
Le schede che contano
Generale
Qui si dà un nome chiaro all'attività e una descrizione che spieghi che cosa fa e chi l'ha creata. L'opzione decisiva è la scelta tra Esegui solo se l'utente è connesso ed Esegui indipendentemente dalla connessione dell'utente. La prima mostra eventuali finestre ma richiede che siate collegati; la seconda lavora anche a sessione chiusa, senza interfaccia visibile, e chiede la password dell'account. Esegui con i privilegi più elevati va attivata solo se lo script ne ha davvero bisogno.
Attivazione
Definisce quando parte l'attività: a un orario, ogni giorno o settimana, all'avvio del computer, all'accesso di un utente, oppure al verificarsi di un evento registrato nel Visualizzatore eventi. Per un report mattutino basta un'attivazione giornaliera, magari solo nei giorni feriali scegliendo l'opzione settimanale e spuntando da lunedì a venerdì.
Azioni
È il cuore dell'attività: Avvia programma. L'errore più comune è indicare direttamente il file .py. È più robusto indicare l'interprete e passare lo script come argomento:
| Campo | Esempio |
|---|---|
| Programma o script | C:\Python312\pythonw.exe |
| Aggiungi argomenti | C:\Automazioni\report.py |
| Inizio in | C:\Automazioni |
Il campo Inizio in viene spesso lasciato vuoto, ed è la causa di molti script che funzionano a mano ma non pianificati: senza cartella di lavoro, i percorsi relativi come dati.xlsx puntano altrove. pythonw.exe è la variante dell'interprete che non apre la finestra nera del terminale.
Condizioni
Su un portatile la casella Avvia l'attività solo se il computer è alimentato da rete elettrica è attiva per impostazione predefinita. Se il computer è a batteria all'ora prevista, l'attività semplicemente non parte. Decidete consapevolmente se lasciarla.
Impostazioni
Due opzioni da attivare quasi sempre: Esegui l'attività il prima possibile dopo una mancata esecuzione pianificata, utile se il PC era spento all'orario stabilito, e Se l'attività non riesce, riavvia ogni, che ritenta dopo un intervallo. Utile anche il limite Arresta l'attività se è in esecuzione da più di, che impedisce a uno script bloccato di restare attivo per giorni.
Creare attività dalla riga di comando
Per replicare la stessa attività su più computer, la procedura grafica è scomoda. Il comando schtasks permette di farlo in una riga:
schtasks /Create /TN "Ufficio\Report mattutino" /SC DAILY /ST 08:15 ^
/TR "C:\Python312\pythonw.exe C:\Automazioni\report.py"
Si possono anche esportare le attività in XML dalla finestra grafica e reimportarle altrove, mantenendo tutte le impostazioni.
Capire se ha funzionato
La colonna Risultato ultima esecuzione mostra un codice: 0x0 significa che il programma è terminato senza errori. Qualsiasi altro valore indica un problema, ma è un'informazione scarna. Per vedere i dettagli si abilita la cronologia dal pannello destro con Abilita cronologia di tutte le attività, e si consulta la scheda Cronologia della singola attività.
La soluzione migliore resta però far scrivere allo script un proprio file di log, con data, ora e messaggi di errore leggibili. Nel mio lavoro lo considero obbligatorio: quando un'automazione notturna non produce il risultato atteso, il log è l'unico testimone di quello che è successo.
Errori frequenti
- Percorsi di rete: le unità mappate come
Z:spesso non esistono quando l'utente non è connesso; usate il percorso completo\\server\cartella. - Password cambiata: se l'attività gira con un account la cui password viene modificata, smette di partire finché non la si aggiorna.
- Ambiente diverso: variabili e programmi disponibili nella vostra sessione possono mancare in quella pianificata.
- Finestre di dialogo: uno script che chiede conferma all'utente resterà in attesa per sempre se gira senza interfaccia.
In sintesi
- Usate Crea attività invece della procedura guidata per accedere alle opzioni importanti.
- Indicate interprete, argomenti e soprattutto la cartella Inizio in.
- Controllate le condizioni sull'alimentazione e attivate i tentativi dopo un errore.
- Usate
schtaskso l'esportazione XML per replicare le attività. - Fate scrivere allo script un log: il codice
0x0da solo non basta.