Automazioni Python per attività d'ufficio ricorrenti: report di prodotti e giacenze per gli agenti, scadenzario dei lotti via email, sconti sui prodotti in scadenza, cataloghi PowerPoint generati da Excel e alcune utilità su Excel, immagini e PDF.
Richiede: database ARCA Evolution (SQL Server) per agent-product-report e
expiry-report; gli altri strumenti lavorano su file locali.
Strumenti sviluppati per le esigenze di un'azienda di distribuzione che usa ARCA Evolution, pubblicati in forma anonimizzata con l'autorizzazione dell'azienda.
Attività settimanali o mensili come estrarre dati dal gestionale, formattarli in Excel con immagini e colori, inviarli per email e impaginare cataloghi con centinaia di prodotti venivano svolte a mano.
Ogni attività è coperta da uno script autonomo, eseguibile manualmente o da un'attività pianificata:
automazioni-ufficio-python/
├── agent-product-report/ report Excel di prodotti e giacenze per gli agenti
├── expiry-report/ scadenzario dei lotti estratto da ARCA e inviato via email
├── expiry-discounts/ GUI per gli sconti sui prodotti in scadenza
├── pptx-catalog/ compilazione di un catalogo PowerPoint da Excel
└── utilities/
├── excel-price-list-images/ listino Excel con le immagini scaricate dai link
├── image-downloader/ download delle immagini articolo da Excel
└── pdf-price-extractor/ estrazione di codici e prezzi da un catalogo PDF
Ogni cartella ha un README con i dettagli d'uso.
- Python 3.10+: pandas, openpyxl, XlsxWriter, pyodbc, SQLAlchemy, python-dotenv
- Email: smtplib/imaplib e Gmail API
- GUI: tkinter, PyQt5
- Documenti e immagini: python-pptx, PyMuPDF, Pillow, BeautifulSoup, requests
-
Installare il driver ODBC per SQL Server e le dipendenze con
pip install -r requirements.txt. -
Copiare
.env.examplein.enve impostare:Variabile Usata da Significato SERVER_DB,DB_ARCAreport, scadenzario server/istanza e database di ARCA DB_USER,DB_PASSWORDreport, scadenzario credenziali SQL (vuote: autenticazione Windows) GMAIL_SENDER,GMAIL_TOKEN_FILEagent-product-report mittente e token OAuth Gmail REPORT_OUTPUT_DIRagent-product-report cartella dei report (default: cartella script) SMTP_SERVER,SMTP_PORT,IMAP_SERVERexpiry-report server di posta SMTP_USER,SMTP_PASSWORDexpiry-report account di invio SCADENZARIO_DESTINATARIexpiry-report indirizzi separati da virgola SCADENZARIO_OUTPUT_DIRexpiry-report cartella dei file generati
Il file .env non è versionato.