Docs

# Importazione Dati

EagleMES offre un potente sistema di importazione dati che permette di caricare massivamente informazioni nel sistema utilizzando file Excel o CSV. Questa funzionalità è particolarmente utile durante la fase iniziale di configurazione o per aggiornamenti massivi.

# Panoramica

L'importazione dati in EagleMES permette di:

  • Caricare anagrafiche (clienti, fornitori, articoli)
  • Importare transazioni (ordini, movimenti di magazzino)
  • Aggiornare dati esistenti in modo massivo
  • Risparmiare tempo evitando inserimenti manuali ripetitivi

# Accesso alla Funzione di Importazione

# Metodo 1: Menu Globale

  1. Clicca sull'icona Cerca (🔍) nella barra superiore
  2. Digita "Data Import" o "Importazione Dati"
  3. Seleziona Data Import dai risultati

# Metodo 2: Da Lista DocType

  1. Naviga alla lista del tipo di documento che vuoi importare (es. Articoli, Clienti)
  2. Clicca sul pulsante Menu (tre puntini) in alto a destra
  3. Seleziona Importa

# Processo di Importazione Passo-Passo

# 1. Creazione Nuova Importazione

  1. Apri Data Import
  2. Clicca su Nuovo (New)
  3. Compila i campi iniziali:
    • Import Type: Seleziona il tipo di documento (es. Item, Customer, Supplier)
    • Import Name: Nome descrittivo per identificare l'importazione

# 2. Download Template

  1. Nella sezione Download Template, clicca su Download Template
  2. Scegli il formato:
    • Excel (consigliato per la compatibilità)
    • CSV (per file più leggeri)

# 3. Compilazione del File

  1. Apri il file template scaricato con Excel o LibreOffice
  2. Prima riga: Contiene i nomi tecnici dei campi (non modificare)
  3. Dalla seconda riga in poi: Inserisci i tuoi dati

# Regole Importanti

  • Campi obbligatori: Contrassegnati con * nell'intestazione
  • Formati data: Usa il formato YYYY-MM-DD (es. 2025-11-11)
  • Valori Si/No: Usa 1 per Sì, 0 per No
  • Campi collegati: Inserisci il nome esatto come appare nel sistema
  • Valute/Numeri: Usa il punto . come separatore decimale

# Esempio: Importazione Articoli

item_code* item_name* item_group* stock_uom* is_stock_item standard_rate
PROD-001 Prodotto A Raw Material Nos 1 100.50
PROD-002 Prodotto B Finished Goods Nos 1 250.00
SERV-001 Servizio X Services Unit 0 50.00

# 4. Caricamento del File

  1. Torna alla scheda Data Import in EagleMES
  2. Nella sezione Upload File, clicca su Allega
  3. Seleziona il file compilato dal tuo computer
  4. Clicca Carica

# 5. Mappatura dei Campi

Dopo il caricamento, il sistema mostra l'anteprima dei dati:

  1. Verifica la mappatura automatica delle colonne
  2. Se necessario, ricollega manualmente le colonne ai campi corretti
  3. Controlla l'anteprima dei dati nella tabella

# 6. Opzioni di Importazione

Prima di avviare l'importazione, configura le opzioni:

# Opzioni Disponibili

Importa solo nuovi record, ignora quelli esistenti

Aggiorna i record esistenti con i nuovi dati

Crea nuovi record e aggiorna quelli esistenti (consigliato)

Disabilita l'invio automatico di email durante l'importazione

# 7. Avvio dell'Importazione

  1. Clicca sul pulsante Start Import
  2. Il sistema elabora i dati in background
  3. Puoi monitorare il progresso nella barra di stato

# 8. Verifica dei Risultati

Dopo il completamento:

  1. Controlla il riepilogo dell'importazione:

    • Record importati con successo
    • Record con errori
    • Dettagli degli errori
  2. Se ci sono errori:

    • Scarica il Error Log (registro errori)
    • Correggi i dati nel file
    • Riprova l'importazione

# Casi d'Uso Comuni

# Importazione Articoli (Items)

Campi principali:

  • item_code - Codice articolo (univoco)
  • item_name - Nome articolo
  • item_group - Gruppo merceologico
  • stock_uom - Unità di misura
  • is_stock_item - Articolo di magazzino (1/0)
  • valuation_rate - Valore unitario

Esempio pratico:

Importare 500 articoli da catalogo fornitore in Excel

# Importazione Clienti (Customers)

Campi principali:

  • customer_name - Nome cliente
  • customer_type - Tipo (Company/Individual)
  • customer_group - Gruppo cliente
  • territory - Territorio/Area
  • email_id - Email
  • mobile_no - Telefono

# Importazione Fornitori (Suppliers)

Campi principali:

  • supplier_name - Nome fornitore
  • supplier_group - Gruppo fornitore
  • supplier_type - Tipo fornitore
  • email_id - Email
  • mobile_no - Telefono

# Importazione Distinte Base (BOM)

Particolarità:

  • Richiede importazione separata per intestazione e righe
  • Prima importare i BOM (header)
  • Poi importare i BOM Items (componenti)

# Tabelle Figlie (Child Tables)

Alcuni documenti hanno tabelle figlie (es. Righe Ordine). Per importarle:

# Metodo 1: File Separati

  1. Importa prima il documento principale (Parent)
  2. Poi importa la tabella figlia collegandola al parent

# Metodo 2: File Unico con Colonne Ripetute

Utilizza la notazione con tilde ~ per campi ripetuti:

item_code | items~item_code | items~qty | items~rate
PROD-001  | COMP-A          | 5         | 10.00
PROD-001  | COMP-B          | 3         | 15.00

# Suggerimenti e Best Practices

# Preparazione Dati

  1. Pulisci i dati: Rimuovi spazi extra, caratteri speciali
  2. Verifica univocità: Assicurati che i codici siano univoci
  3. Completa i riferimenti: Verifica che i collegamenti (es. Customer Group) esistano già nel sistema
  4. Backup: Fai sempre un backup prima di importazioni massive

# Durante l'Importazione

  • Inizia con dati di base: Prima anagrafiche (gruppi, categorie), poi transazioni
  • Procedi per blocchi: Importa 100-500 record alla volta per grandi dataset
  • Monitora gli errori: Controlla subito gli errori e correggili

# Gestione Errori Comuni

Errore Causa Soluzione
"Duplicate entry" Codice già esistente Verifica univocità o usa modalità Update
"Link validation failed" Riferimento inesistente Crea prima il record collegato
"Invalid date format" Formato data errato Usa YYYY-MM-DD
"Mandatory field missing" Campo obbligatorio vuoto Compila tutti i campi con *

# Importazione Avanzata

# Import tramite API

Per importazioni automatizzate, usa l'API REST di ERPNext:

import requests

url = "https://tuoserver.com/api/method/frappe.core.doctype.data_import.data_import.import_file"
headers = {
    "Authorization": "token API_KEY:API_SECRET"
}
files = {
    "file": open("dati.xlsx", "rb")
}
data = {
    "doctype": "Item",
    "import_type": "Insert"
}

response = requests.post(url, headers=headers, files=files, data=data)

# Importazione Programmata

Utilizza il Data Import Tool con scheduled jobs per importazioni ricorrenti.


# Limiti e Considerazioni

# Limiti Tecnici

  • Dimensione file: Massimo 25 MB per upload
  • Righe per importazione: Raccomandato max 10.000 righe
  • Timeout: Importazioni molto lunghe potrebbero andare in timeout

# Soluzioni per Grandi Volumi

  1. Suddividi il file in più importazioni
  2. Usa l'API per importazioni programmatiche
  3. Ottimizza il server (aumenta timeout, memoria)

# Strumenti Alternativi

# Data Import Tool Legacy

Alcune versioni di ERPNext includono anche il vecchio strumento:

  • Setup → Data Import Tool
  • Meno flessibile ma più semplice per importazioni basiche

# Import tramite Codice

Per casi complessi, sviluppa script Python personalizzati usando l'ORM di Frappe.


# Checklist Pre-Importazione

Prima di ogni importazione, verifica:

  • Ho scaricato il template corretto per il DocType?
  • Tutti i campi obbligatori sono compilati?
  • I formati data/numero sono corretti?
  • I riferimenti esterni (link) esistono già nel sistema?
  • Ho fatto un test con pochi record?
  • Ho un backup recente del sistema?
  • Ho scelto la modalità corretta (Insert/Update)?

# Video Tutorial


# Risoluzione Problemi

# Il file non viene caricato

Possibili cause:

  • File troppo grande (>25 MB)
  • Formato non supportato
  • Colonne del template modificate

Soluzione:

  • Riduci dimensione file
  • Usa formato Excel (.xlsx) o CSV
  • Riscarica template originale

# Errori di validazione

Possibili cause:

  • Dati non conformi ai requisiti del campo
  • Campi obbligatori mancanti
  • Formati errati

Soluzione:

  • Leggi attentamente il messaggio di errore
  • Correggi i dati nel file sorgente
  • Controlla il Data Type di ogni campo

# Importazione lenta

Possibili cause:

  • Troppe righe
  • Server con risorse limitate
  • Validazioni complesse

Soluzione:

  • Suddividi in importazioni più piccole
  • Esegui durante orari di basso utilizzo
  • Ottimizza configurazione server

# Prossimi Passi

Dopo aver importato i dati base, esplora: