{ "common": { "settings": "Impostazioni", "theme": "Tema", "language": "Lingua", "dark": "Scuro", "light": "Chiaro", "logout": "Esci", "save": "Salva", "cancel": "Annulla", "close": "Chiudi", "delete": "Elimina", "edit": "Modifica", "new": "Nuovo", "search": "Cerca", "actions": "Azioni", "confirm": "Conferma", "back": "Indietro", "loading": "Caricamento...", "error": "Errore", "success": "Successo", "unknown": "Sconosciuto", "deleteAll": "Elimina Tutto", "generate": "Genera", "warning": "Attenzione", "create": "Crea", "deleteConfirm": "Eliminare questo elemento?", "optional": "Opzionale", "notes": "Note", "preview": "Anteprima", "none": "Nessuno", "view": "Dettaglio" }, "menu": { "dashboard": "Dashboard", "calendar": "Calendario", "events": "Eventi", "clients": "Clienti", "location": "Location", "articles": "Articoli", "resources": "Risorse", "warehouse": "Magazzino", "purchases": "Acquisti", "sales": "Vendite", "production": "Produzione", "hr": "Gestione Personale", "reports": "Report", "modules": "Moduli", "autoCodes": "Codici Auto", "customFields": "Campi Personalizzati" }, "dashboard": { "title": "Dashboard", "totalEvents": "Eventi Totali", "confirmed": "Confermati", "inQuote": "In Preventivo", "eventsToday": "Eventi Oggi", "upcomingEvents": "Prossimi Eventi (30 giorni)", "expiringQuotes": "Preventivi in Scadenza", "noEvents": "Nessun evento nei prossimi 30 giorni", "noQuotes": "Nessun preventivo in attesa", "generateDemoData": "Genera Dati Demo", "clearDatabase": "Pulisci Database", "generateDialogTitle": "Genera Dati Demo", "generateDialogText": "Questa operazione genera dati di test per dimostrazioni:
- 15 Clienti
- 10 Location
- 12 Risorse (staff)
- 20 Articoli
- 20 Eventi con dettagli

I dati esistenti non verranno modificati.", "clearDialogTitle": "Pulisci Database", "clearDialogWarning": "Attenzione: questa operazione elimina TUTTI i dati dal database!", "clearDialogText": "Verranno eliminati:
- Tutti gli eventi e i relativi dettagli
- Tutti i clienti
- Tutte le location
- Tutte le risorse
- Tutti gli articoli

Questa operazione non puo essere annullata.", "clearSuccess": "Database pulito. Eliminati: {{events}} eventi, {{clients}} clienti, {{locations}} location, {{resources}} risorse, {{articles}} articoli.", "generateError": "Errore durante la generazione dei dati", "clearError": "Errore durante la pulizia dei dati", "expires": "Scade: {{date}}", "guests": "{{count}} ospiti" }, "events": { "title": "Eventi", "newEvent": "Nuovo Evento", "code": "Codice", "date": "Data", "description": "Descrizione", "client": "Cliente", "location": "Location", "guests": "Ospiti", "status": "Stato", "type": "Tipo Evento", "eventDate": "Data Evento", "deleteSuccess": "Evento eliminato con successo", "detail": { "status": { "draft": "Scheda Evento", "quote": "Preventivo", "confirmed": "Confermato", "new": "Nuovo" }, "loading": "Caricamento...", "newEvent": "Nuovo Evento", "noDescription": "Senza descrizione", "actions": { "duplicate": "Duplica", "recalculate": "Ricalcola Qta", "confirm": "Conferma", "save": "Salva", "print": "Stampa PDF", "back": "Indietro" }, "fields": { "date": "Data Evento", "startTime": "Ora Inizio", "endTime": "Ora Fine", "type": "Tipo Evento", "description": "Descrizione Evento", "descriptionPlaceholder": "es. Matrimonio Rossi-Bianchi", "client": "Cliente", "location": "Location", "totalGuests": "N. Ospiti Totale", "costPerPerson": "Costo a Persona", "totalCost": "Costo Totale", "totalDeposits": "Totale Acconti", "balance": "Saldo", "status": "Stato" }, "tabs": { "guests": "Ospiti", "withdrawalList": "Lista Prelievo", "resources": "Risorse", "costs": "Costi", "notes": "Note" }, "guestsTab": { "total": "Totale ospiti", "add": "Aggiungi Tipo Ospite", "type": "Tipo Ospite", "quantity": "Quantità", "notes": "Note", "empty": "Nessun ospite aggiunto. Clicca \"Aggiungi Tipo Ospite\" per iniziare." }, "withdrawalTab": { "total": "Articoli in lista", "add": "Aggiungi Articolo", "code": "Codice", "article": "Articolo", "qtyRequested": "Qta Richiesta", "qtyCalculated": "Qta Calcolata", "qtyActual": "Qta Effettiva", "notes": "Note", "empty": "Nessun articolo in lista." }, "resourcesTab": { "total": "Risorse impegnate", "add": "Aggiungi Risorsa", "resource": "Risorsa", "quantity": "Quantità", "costUnit": "Costo Unitario", "costTotal": "Costo Totale", "notes": "Note", "empty": "Nessuna risorsa aggiunta." }, "dialogs": { "addGuest": "Aggiungi Ospite", "addArticle": "Aggiungi Articolo", "addResource": "Aggiungi Risorsa", "cancel": "Annulla", "add": "Aggiungi" } } }, "clients": { "title": "Clienti", "newClient": "Nuovo Cliente", "editClient": "Modifica Cliente", "code": "Codice", "altCode": "Cod. Alt.", "businessName": "Ragione Sociale", "city": "Città", "province": "Prov.", "phone": "Telefono", "email": "Email", "vat": "P.IVA", "address": "Indirizzo", "zip": "CAP", "pec": "PEC", "fiscalCode": "Codice Fiscale", "recipientCode": "Codice Destinatario", "generatedOnSave": "(Generato al salvataggio)", "autoGenerated": "Generato automaticamente", "willBeAssigned": "Verrà assegnato automaticamente", "deleteConfirm": "Eliminare questo cliente?" }, "location": { "title": "Location", "newLocation": "Nuova Location", "editLocation": "Modifica Location", "name": "Nome", "city": "Città", "province": "Prov.", "distance": "Distanza (km)", "contact": "Referente", "phone": "Telefono", "address": "Indirizzo", "zip": "CAP", "email": "Email", "deleteConfirm": "Eliminare questa location?" }, "articles": { "title": "Articoli", "newArticle": "Nuovo Articolo", "editArticle": "Modifica Articolo", "code": "Codice", "altCode": "Cod. Alt.", "description": "Descrizione", "type": "Tipo", "category": "Categoria", "available": "Disponibile", "qtyA": "Qta A", "qtyB": "Qta B", "qtyS": "Qta S", "uom": "UM", "qtyAvailable": "Quantità Disponibile", "unitOfMeasure": "Unità Misura", "qtyStdAdults": "Qta Std Adulti (A)", "qtyStdBuffet": "Qta Std Buffet (B)", "qtyStdSeated": "Qta Std Seduti (S)", "generatedOnSave": "(Generato al salvataggio)", "autoGenerated": "Generato automaticamente", "willBeAssigned": "Verrà assegnato automaticamente", "deleteConfirm": "Eliminare questo articolo?", "materialType": "Tipo Materiale" }, "resources": { "title": "Risorse", "newResource": "Nuova Risorsa", "editResource": "Modifica Risorsa", "name": "Nome", "surname": "Cognome", "type": "Tipo", "phone": "Telefono", "email": "Email", "resourceType": "Tipo Risorsa", "deleteConfirm": "Eliminare questa risorsa?" }, "calendar": { "title": "Calendario Eventi", "newEvent": "Nuovo Evento", "createEvent": "Crea Evento", "createEventConfirm": "Vuoi creare un nuovo evento per il giorno", "today": "Oggi", "month": "Mese", "week": "Settimana", "day": "Giorno" }, "status": { "scheda": "Scheda", "preventivo": "Preventivo", "confermato": "Confermato" }, "modules": { "warehouse": { "title": "Gestione Magazzino", "inventory": "Inventario", "movements": "Movimenti", "stock": "Giacenze", "categories": "Categorie" }, "hr": { "title": "Gestione Personale", "dipendenti": "Dipendenti", "contratti": "Contratti", "assenze": "Assenze", "pagamenti": "Pagamenti", "rimborsi": "Rimborsi" }, "admin": { "title": "Gestione Moduli", "subtitle": "Configura i moduli attivi e gestisci le subscription", "checkExpired": "Controlla Scadenze", "refresh": "Aggiorna", "expiringWarning": "{{count}} modulo/i in scadenza nei prossimi 30 giorni:", "disableConfirmTitle": "Conferma disattivazione", "disableConfirmText": "Sei sicuro di voler disattivare il modulo", "disableConfirmSubtext": "I dati inseriti rimarranno nel sistema ma non saranno più accessibili fino alla riattivazione.", "disable": "Disattiva", "enable": "Attiva", "purchase": "Acquista", "details": "Dettagli", "renew": "Rinnova", "active": "Attivo", "inactive": "Disattivo", "core": "Core", "annualPrice": "Prezzo annuale", "monthlyPrice": "Prezzo mensile", "dependencies": "Dipendenze", "subscriptionDetails": "Dettagli Subscription", "type": "Tipo", "startDate": "Data inizio", "endDate": "Data scadenza", "daysRemaining": "Giorni rimanenti", "autoRenew": "Rinnova automatico", "yes": "Sì", "no": "No", "purchaseTitle": "Attiva Modulo", "purchaseSubtitle": "Scegli il piano di abbonamento per il modulo {{name}}", "missingDependencies": "Questo modulo richiede i seguenti moduli che non sono attivi:", "subscriptionType": "Tipo di abbonamento", "monthly": "Mensile", "annual": "Annuale", "perMonth": "/mese", "perYear": "/anno", "savings": "Risparmi {{percent}}%", "autoRenewLabel": "Rinnova automatico alla scadenza", "orderSummary": "Riepilogo ordine", "total": "Totale", "activating": "Attivazione in corso...", "activateModule": "Attiva Modulo", "purchaseNote": "Potrai disattivare il modulo in qualsiasi momento dalle impostazioni. I dati inseriti rimarranno disponibili.", "includedFeatures": "Funzionalità incluse", "moduleNotFound": "Modulo non trovato", "moduleNotFoundText": "Il modulo richiesto non esiste.", "backToHome": "Torna alla Home", "status": "Stato", "module": "Modulo", "subscription": "Abbonamento", "activationError": "Errore durante l'attivazione del modulo" }, "features": { "warehouse": { "0": "Gestione anagrafica articoli", "1": "Movimenti di magazzino (carico/scarico)", "2": "Giacenze in tempo reale", "3": "Valorizzazione scorte (FIFO, LIFO, medio ponderato)", "4": "Inventario e rettifiche", "5": "Report giacenze e movimenti" }, "purchases": { "0": "Gestione ordini a fornitore", "1": "DDT di entrata", "2": "Fatture passive", "3": "Scadenziario pagamenti", "4": "Analisi acquisti per fornitore/articolo", "5": "Storico prezzi di acquisto" }, "sales": { "0": "Gestione ordini cliente", "1": "DDT di uscita", "2": "Fatturazione elettronica", "3": "Scadenziario incassi", "4": "Analisi vendite per cliente/articolo", "5": "Listini prezzi" }, "production": { "0": "Distinte base multilivello", "1": "Cicli di lavoro", "2": "Ordini di produzione", "3": "Pianificazione MRP", "4": "Avanzamento produzione", "5": "Costi di produzione" }, "quality": { "0": "Piani di controllo", "1": "Registrazione controlli", "2": "Gestione non conformità", "3": "Azioni correttive/preventive", "4": "Certificazioni e audit", "5": "Statistiche qualità" }, "hr": { "0": "Gestione anagrafica dipendenti", "1": "Gestione contratti", "2": "Registro assenze e ferie", "3": "Gestione pagamenti e stipendi", "4": "Note spese e rimborsi", "5": "Analisi costi personale" }, "default": "Funzionalità complete del modulo" } }, "autoCodes": { "title": "Codici Automatici", "subtitle": "Configura i pattern per la generazione automatica dei codici", "helpPattern": "Guida Pattern", "entity": "Entità", "prefix": "Prefisso", "pattern": "Pattern", "example": "Esempio", "sequence": "Sequenza", "reset": "Reset", "status": "Stato", "monthly": "Mensile", "yearly": "Annuale", "never": "Mai", "previewTooltip": "Anteprima prossimo codice", "resetTooltip": "Reset sequenza", "resetConfirmTitle": "Conferma Reset Sequenza", "resetConfirmText": "Sei sicuro di voler resettare la sequenza per", "resetWarning": "La sequenza verrà riportata a 0. Il prossimo codice generato partirà da 1.", "previewTitle": "Anteprima Prossimo Codice", "previewText": "Questo è il codice che verrà generato alla prossima creazione.\nLa sequenza non è stata incrementata.", "helpTitle": "Guida ai Pattern", "helpText": "I pattern definiscono come vengono generati i codici automatici. Puoi combinare testo statico e placeholder dinamici.", "placeholders": "Placeholder Disponibili", "examples": "Esempi di Pattern", "editTitle": "Modifica Configurazione", "prefixHelper": "Testo sostituito nel placeholder {PREFIX}", "patternHelper": "Pattern per generazione codice", "previewLabel": "Anteprima:", "resetSequence": "Reset Sequenza", "everyYear": "Ogni anno", "everyMonth": "Ogni mese", "generationActive": "Generazione attiva", "readOnly": "Codice non modificabile" }, "customFields": { "title": "Gestione Campi Personalizzati", "sectionTitle": "Campi Personalizzati", "entity": "Entità", "newField": "Nuovo Campo", "label": "Etichetta", "fieldName": "Nome Interno", "type": "Tipo", "required": "Obbligatorio", "order": "Ordine", "editField": "Modifica Campo", "deleteConfirm": "Sei sicuro di voler eliminare questo campo?", "fieldNameHelper": "Deve essere univoco per l'entità. Usa solo lettere minuscole e underscore.", "optionsJson": "Opzioni (JSON Array)", "optionsHelper": "Inserisci un array JSON valido di stringhe", "description": "Descrizione / Helper Text", "noFields": "Nessun campo personalizzato configurato per questa entità.", "types": { "text": "Testo", "number": "Numero", "date": "Data", "boolean": "Booleano (Sì/No)", "select": "Lista a discesa", "multiselect": "Selezione Multipla", "textarea": "Area di testo", "color": "Colore", "url": "URL", "email": "Email" }, "entities": { "client": "Clienti", "article": "Articoli (Catering)", "event": "Eventi", "warehousearticle": "Articoli Magazzino", "warehouselocation": "Magazzini", "resource": "Risorse (Staff)" } }, "reports": { "title": "Template Report", "import": "Importa", "newTemplate": "Nuovo Template", "filterCategory": "Filtra per categoria", "all": "Tutte", "importTemplate": "Importa Template", "noTemplates": "Nessun template trovato", "createFirstTemplate": "Crea il tuo primo template di report o importane uno esistente", "createTemplate": "Crea Template", "vertical": "Verticale", "horizontal": "Orizzontale", "edit": "Modifica", "duplicate": "Duplica", "export": "Esporta", "delete": "Elimina", "confirmDelete": "Conferma Eliminazione", "deleteConfirmText": "Sei sicuro di voler eliminare il template \"{{name}}\"?", "irreversibleAction": "Questa azione non può essere annullata.", "cancel": "Annulla", "deleting": "Eliminazione...", "importTitle": "Importa Template", "importText": "Seleziona un file .aprt da importare", "selectFile": "Seleziona File", "importing": "Importazione...", "categories": { "Evento": "Evento", "Cliente": "Cliente", "Articoli": "Articoli", "Generale": "Generale", "Importato": "Importato" }, "editor": { "newTemplate": "Nuovo Template", "templateUpdatedByOther": "Template aggiornato da un altro utente", "deleteSuccess": "Evento eliminato con successo", "detail": { "status": { "draft": "Scheda Evento", "quote": "Preventivo", "confirmed": "Confermato", "new": "Nuovo" }, "loading": "Caricamento...", "newEvent": "Nuovo Evento", "noDescription": "Senza descrizione", "actions": { "duplicate": "Duplica", "recalculate": "Ricalcola Qta", "confirm": "Conferma", "save": "Salva", "print": "Stampa PDF", "back": "Indietro" }, "fields": { "date": "Data Evento", "startTime": "Ora Inizio", "endTime": "Ora Fine", "type": "Tipo Evento", "description": "Descrizione Evento", "descriptionPlaceholder": "es. Matrimonio Rossi-Bianchi", "client": "Cliente", "location": "Location", "totalGuests": "N. Ospiti Totale", "costPerPerson": "Costo a Persona", "totalCost": "Costo Totale", "totalDeposits": "Totale Acconti", "balance": "Saldo", "status": "Stato" }, "tabs": { "guests": "Ospiti", "withdrawalList": "Lista Prelievo", "resources": "Risorse", "costs": "Costi", "notes": "Note" }, "guestsTab": { "total": "Totale ospiti", "add": "Aggiungi Tipo Ospite", "type": "Tipo Ospite", "quantity": "Quantità", "notes": "Note", "empty": "Nessun ospite aggiunto. Clicca \"Aggiungi Tipo Ospite\" per iniziare." }, "withdrawalTab": { "total": "Articoli in lista", "add": "Aggiungi Articolo", "code": "Codice", "article": "Articolo", "qtyRequested": "Qta Richiesta", "qtyCalculated": "Qta Calcolata", "qtyActual": "Qta Effettiva", "notes": "Note", "empty": "Nessun articolo in lista." }, "resourcesTab": { "total": "Risorse impegnate", "add": "Aggiungi Risorsa", "resource": "Risorsa", "quantity": "Quantità", "costUnit": "Costo Unitario", "costTotal": "Costo Totale", "notes": "Note", "empty": "Nessuna risorsa aggiunta." }, "dialogs": { "addGuest": "Aggiungi Ospite", "addArticle": "Aggiungi Articolo", "addResource": "Aggiungi Risorsa", "cancel": "Annulla", "add": "Aggiungi" } }, "saveSuccess": "Template salvato con successo", "saveError": "Errore nel salvataggio: {{error}}", "pageName": "Pagina {{number}}", "copyOf": "{{name}} (copia)", "newText": "Nuovo testo", "column": "Colonna {{number}}", "elementCopied": "Elemento copiato", "pastedSuffix": "_incollato", "copySuffix": "_copia", "groupingNotImplemented": "Raggruppamento non ancora implementato", "ungroupingNotImplemented": "Separazione non ancora implementata", "doubleClickToEdit": "Fai doppio click sul testo per modificarlo", "fitToContentNotImplemented": "Adatta al contenuto non ancora implementato", "selectDatasetForPreview": "Seleziona almeno un dataset per l'anteprima", "saveBeforePreview": "Salva il template prima di visualizzare l'anteprima", "previewError": "Errore nella generazione dell'anteprima: {{error}}", "panels": { "pages": "Pagine", "data": "Campi Dati", "properties": "Proprietà" }, "defaultPageName": "Pagina 1", "saveDialog": { "title": "Salva Template", "name": "Nome", "description": "Descrizione", "category": "Categoria", "cancel": "Annulla", "saving": "Salvataggio...", "save": "Salva" } } }, "purchases": { "supplier": { "title": "Fornitori", "newSupplier": "Nuovo Fornitore", "createTitle": "Nuovo Fornitore", "editTitle": "Modifica Fornitore", "columns": { "code": "Codice", "name": "Ragione Sociale", "vatNumber": "P.IVA", "email": "Email", "phone": "Telefono", "city": "Città", "status": "Stato" }, "fields": { "name": "Ragione Sociale", "vatNumber": "P.IVA", "fiscalCode": "Codice Fiscale", "address": "Indirizzo", "city": "Città", "province": "Provincia", "zipCode": "CAP", "country": "Nazione", "email": "Email", "pec": "PEC", "phone": "Telefono", "website": "Sito Web", "paymentTerms": "Termini di Pagamento", "notes": "Note" } }, "order": { "title": "Ordini Acquisto", "newOrder": "Nuovo Ordine", "createTitle": "Nuovo Ordine", "editTitle": "Modifica Ordine", "status": { "Draft": "Bozza", "Confirmed": "Confermato", "PartiallyReceived": "Parz. Ricevuto", "Received": "Ricevuto", "Cancelled": "Annullato" }, "columns": { "number": "Numero", "date": "Data", "supplier": "Fornitore", "status": "Stato", "total": "Totale" }, "fields": { "date": "Data Ordine", "expectedDate": "Data Prevista Consegna", "supplier": "Fornitore", "warehouse": "Magazzino Destinazione", "notes": "Note" }, "lines": { "article": "Articolo", "quantity": "Quantità", "price": "Prezzo Unit.", "discount": "Sconto %", "tax": "IVA %", "total": "Totale" }, "total": "Totale Ordine", "actions": { "confirm": "Conferma Ordine", "receive": "Ricevi Merce" } } }, "sales": { "order": { "title": "Ordini Vendita", "newOrder": "Nuovo Ordine", "createTitle": "Nuovo Ordine", "editTitle": "Modifica Ordine", "status": { "Draft": "Bozza", "Confirmed": "Confermato", "PartiallyShipped": "Parz. Spedito", "Shipped": "Spedito", "Invoiced": "Fatturato", "Cancelled": "Annullato" }, "columns": { "number": "Numero", "date": "Data", "customer": "Cliente", "status": "Stato", "total": "Totale" }, "fields": { "orderDate": "Data Ordine", "expectedDeliveryDate": "Data Prevista Consegna", "customer": "Cliente", "notes": "Note", "lineTotal": "Totale Riga", "article": "Articolo", "quantity": "Quantità", "unitPrice": "Prezzo Unit.", "discount": "Sconto %", "taxRate": "IVA %" }, "totals": { "gross": "Totale Lordo" }, "actions": { "confirm": "Conferma Ordine", "ship": "Spedisci Merce" } } }, "production": { "bom": { "title": "Distinte Base", "newBom": "Nuova Distinta Base", "createTitle": "Nuova Distinta Base", "editTitle": "Modifica Distinta Base", "fields": { "name": "Nome", "description": "Descrizione", "article": "Articolo Prodotto", "quantity": "Quantità Prodotta", "components": "Componenti", "componentArticle": "Articolo Componente", "componentQuantity": "Quantità", "scrapPercentage": "Scarto %", "noComponents": "Nessun componente aggiunto" }, "columns": { "name": "Nome", "article": "Articolo", "quantity": "Quantità" } }, "dashboard": { "title": "Dashboard Produzione", "activeOrders": "Ordini Attivi", "lateOrders": "Ordini in Ritardo", "mrpSuggestions": "Suggerimenti MRP", "completedToday": "Completati Oggi", "recentOrders": "Ordini Recenti" }, "order": { "title": "Ordini di Produzione", "newOrder": "Nuovo Ordine", "createTitle": "Nuovo Ordine", "editTitle": "Modifica Ordine", "subOrders": "Ordini Figli", "noSubOrders": "Nessun ordine figlio presente", "status": { "Draft": "Bozza", "Planned": "Pianificato", "Released": "Rilasciato", "InProgress": "In Corso", "Completed": "Completato", "Cancelled": "Annullato" }, "columns": { "code": "Codice", "startDate": "Data Inizio", "article": "Articolo", "parentOrder": "Ordine Padre", "quantity": "Quantità", "status": "Stato" }, "fields": { "article": "Articolo da Produrre", "quantity": "Quantità", "startDate": "Data Inizio", "dueDate": "Data Scadenza", "notes": "Note", "bom": "Distinta Base", "bomHelp": "Seleziona una DiBa per precompilare i componenti", "createChildOrders": "Crea ordini figli per semilavorati automaticamente" }, "actions": { "plan": "Pianifica", "release": "Rilascia", "start": "Avvia", "complete": "Completa" }, "phases": { "title": "Fasi di Produzione", "sequence": "Seq", "name": "Fase", "workCenter": "Centro di Lavoro", "status": "Stato", "progress": "Avanzamento", "actions": "Azioni", "start": "Avvia Fase", "complete": "Completa Fase", "quantity": "Qta Completata", "scrapped": "Qta Scartata", "duration": "Durata (min)", "durationHelp": "Stimata: {{estimated}} min", "statusValue": { "Pending": "In Attesa", "InProgress": "In Corso", "Completed": "Completata", "Paused": "In Pausa" } } }, "workCenter": { "title": "Centri di Lavoro", "new": "Nuovo Centro", "edit": "Modifica Centro", "fields": { "code": "Codice", "name": "Nome", "description": "Descrizione", "costPerHour": "Costo Orario" } }, "cycle": { "title": "Cicli Produttivi", "new": "Nuovo Ciclo", "createTitle": "Nuovo Ciclo Produttivo", "editTitle": "Modifica Ciclo Produttivo", "phases": "Fasi del Ciclo", "addPhase": "Aggiungi Fase", "noPhases": "Nessuna fase definita", "fields": { "name": "Nome Ciclo", "description": "Descrizione", "article": "Articolo", "isDefault": "Predefinito", "phaseName": "Nome Fase", "workCenter": "Centro di Lavoro", "duration": "Durata Unit. (min)", "setupTime": "Tempo Setup (min)" } }, "mrp": { "title": "Pianificazione MRP", "run": "Esegui MRP", "configurationTitle": "Configurazione MRP", "configurationDescription": "Seleziona le opzioni per l'esecuzione del calcolo MRP.", "includeSafetyStock": "Includi Scorta di Sicurezza", "includeSalesOrders": "Includi Ordini di Vendita", "includeForecasts": "Includi Previsioni", "columns": { "date": "Data Calcolo", "article": "Articolo", "type": "Tipo", "quantity": "Quantità", "reason": "Motivo" }, "type": { "production": "Produzione", "purchase": "Acquisto" }, "actions": { "process": "Processa / Crea Ordine" } } }, "warehouse": { "dashboard": { "newInbound": "Nuovo Carico", "stockLevels": "Giacenze", "activeArticles": "Articoli Attivi", "warehouses": "Magazzini", "totalValue": "Valore Totale", "lowStock": "Sotto Scorta", "outOfStock": "esauriti", "recentMovements": "Ultimi Movimenti", "viewAll": "Vedi tutti", "noRecentMovements": "Nessun movimento recente", "lines": "righe", "manage": "Gestisci", "draftMovements": "movimenti in bozza da confermare", "view": "Visualizza", "expiringBatches": "lotti in scadenza nei prossimi 30 giorni", "lowStockArticles": "Articoli Sotto Scorta", "noLowStockArticles": "Nessun articolo sotto scorta", "quickActions": "Azioni Rapide", "inbound": "Carico", "outbound": "Scarico", "transfer": "Trasferimento", "newArticle": "Nuovo Articolo", "inventory": "Inventario", "valuation": "Valorizzazione" }, "articles": { "title": "Anagrafica Articoli", "newArticle": "Nuovo Articolo", "columns": { "code": "Codice", "description": "Descrizione", "category": "Categoria", "uom": "U.M.", "averageCost": "Costo Medio", "status": "Stato", "active": "Attivo", "inactive": "Inattivo" }, "filters": { "searchPlaceholder": "Cerca per codice o descrizione...", "category": "Categoria", "all": "Tutte", "showAll": "Mostra Tutti", "onlyActive": "Solo Attivi", "viewList": "Vista Lista", "viewGrid": "Vista Griglia" }, "loadingError": "Errore nel caricamento degli articoli: {{error}}", "noArticlesFound": "Nessun articolo trovato", "actions": { "edit": "Modifica", "viewStock": "Visualizza Giacenze", "delete": "Elimina" }, "deleteDialog": { "title": "Conferma Eliminazione", "content": "Sei sicuro di voler eliminare l'articolo {{code}} - {{description}}?", "warning": "Questa azione non può essere annullata.", "cancel": "Annulla", "deleting": "Eliminazione...", "delete": "Elimina" } }, "articleForm": { "titleNew": "Nuovo Articolo", "titleEdit": "Articolo: {{code}}", "tabs": { "general": "Dati Generali", "stock": "Giacenze", "batches": "Lotti", "serials": "Matricole" }, "sections": { "basicInfo": "Informazioni Base", "stockLevels": "Livelli di Scorta", "costs": "Costi e Valorizzazione", "traceability": "Tracciabilità", "image": "Immagine", "summary": "Riepilogo" }, "fields": { "code": "Codice", "alternativeCode": "Codice Alternativo", "description": "Descrizione", "shortDescription": "Descrizione Breve", "category": "Categoria", "uom": "Unità di Misura", "barcode": "Codice a Barre", "notes": "Note", "minStock": "Scorta Minima", "maxStock": "Scorta Massima", "reorderPoint": "Punto di Riordino", "reorderQuantity": "Quantità Riordino", "standardCost": "Costo Standard", "stockManagement": "Gestione Stock", "valuationMethod": "Metodo di Valorizzazione", "batchManaged": "Gestione Lotti", "serialManaged": "Gestione Matricole", "expiryManaged": "Gestione Scadenza", "active": "Articolo Attivo" }, "helpers": { "generatedOnSave": "(Generato al salvataggio)", "willBeGenerated": "Verrà assegnato automaticamente", "generatedAutomatically": "Generato automaticamente", "optional": "Opzionale" }, "validation": { "codeRequired": "Il codice è obbligatorio", "descriptionRequired": "La descrizione è obbligatoria", "uomRequired": "L'unità di misura è obbligatoria" }, "errors": { "saveError": "Errore durante il salvataggio: {{error}}" }, "actions": { "upload": "Carica", "cancel": "Annulla", "save": "Salva", "saving": "Salvataggio..." }, "summary": { "averageCost": "Costo Medio", "lastPurchase": "Ultimo Acquisto" }, "tables": { "warehouse": "Magazzino", "quantity": "Quantità", "reserved": "Riservata", "available": "Disponibile", "value": "Valore", "batchNumber": "Numero Lotto", "expiryDate": "Data Scadenza", "status": "Stato", "serialNumber": "Matricola", "lot": "Lotto", "noStock": "Nessuna giacenza", "noBatches": "Nessun lotto", "noSerials": "Nessuna matricola" }, "status": { "expired": "Scaduto", "available": "Disponibile", "unavailable": "Non disponibile" }, "options": { "noCategory": "Nessuna" } }, "stockManagementType": { "Standard": "Standard", "NotManaged": "Non Gestito", "VariableWeight": "Peso Variabile", "Kit": "Kit" }, "valuationMethod": { "WeightedAverage": "Costo Medio Ponderato", "FIFO": "FIFO", "LIFO": "LIFO", "StandardCost": "Costo Standard", "SpecificCost": "Costo Specifico" }, "movements": { "title": "Movimenti di Magazzino", "filters": { "searchPlaceholder": "Cerca documento, riferimento...", "warehouse": "Magazzino", "all": "Tutti", "type": "Tipo", "status": "Stato", "from": "Da", "to": "A", "reset": "Reset" }, "columns": { "document": "Documento", "date": "Data", "type": "Tipo", "status": "Stato", "warehouse": "Magazzino", "destination": "Destinazione", "reason": "Causale", "lines": "Righe", "value": "Valore", "reference": "Riferimento" }, "actions": { "newMovement": "Nuovo Movimento", "inbound": "Carico", "outbound": "Scarico", "transfer": "Trasferimento", "adjustment": "Rettifica", "view": "Visualizza", "confirm": "Conferma", "cancel": "Annulla", "delete": "Elimina" }, "dialogs": { "confirm": { "title": "Conferma Movimento", "content": "Confermare il movimento {{doc}}?", "warning": "Le giacenze verranno aggiornate e il movimento non potrà più essere modificato.", "confirming": "Conferma...", "confirm": "Conferma", "cancel": "Annulla" }, "cancel": { "title": "Annulla Movimento", "content": "Annullare il movimento {{doc}}?", "warning": "Il movimento verrà marcato come annullato ma non eliminato.", "cancelling": "Annullamento...", "cancelMovement": "Annulla Movimento", "back": "Indietro" }, "delete": { "title": "Elimina Movimento", "content": "Eliminare definitivamente il movimento {{doc}}?", "warning": "Questa azione non può essere annullata.", "deleting": "Eliminazione...", "delete": "Elimina", "cancel": "Annulla" } }, "loadingError": "Errore nel caricamento dei movimenti: {{error}}" }, "movementType": { "Inbound": "Carico", "Outbound": "Scarico", "Transfer": "Trasferimento", "Adjustment": "Rettifica", "Production": "Produzione", "Consumption": "Consumo", "SupplierReturn": "Reso Fornitore", "CustomerReturn": "Reso Cliente" }, "movementStatus": { "Draft": "Bozza", "Confirmed": "Confermato", "Cancelled": "Annullato" }, "inbound": { "title": "Nuovo Carico", "subtitle": "Movimento di entrata merce in magazzino", "sections": { "movementData": "Dati Movimento", "lines": "Righe Movimento" }, "fields": { "date": "Data Movimento", "warehouse": "Magazzino", "documentNumber": "Numero Documento", "externalReference": "Riferimento Esterno", "notes": "Note", "article": "Articolo", "quantity": "Quantità", "unitCost": "Costo Unitario", "total": "Totale" }, "placeholders": { "documentNumber": "DDT, Fattura, etc.", "externalReference": "Ordine, Fornitore, etc.", "selectArticle": "Seleziona articolo" }, "actions": { "addLine": "Aggiungi Riga", "cancel": "Annulla", "saveDraft": "Salva Bozza", "saveAndConfirm": "Salva e Conferma" }, "totals": { "quantity": "Totale Quantità", "value": "Totale Valore" }, "validation": { "warehouseRequired": "Seleziona un magazzino", "dateRequired": "Inserisci la data", "linesRequired": "Inserisci almeno una riga con articolo e quantità" }, "errors": { "saveError": "Errore: {{error}}" } }, "outbound": { "title": "Nuovo Scarico", "subtitle": "Movimento di uscita merce da magazzino", "warnings": { "stockIssues": "Attenzione: alcune righe superano la disponibilità in magazzino", "overStock": "Quantità superiore alla disponibilità" }, "sections": { "movementData": "Dati Movimento", "lines": "Righe Movimento" }, "fields": { "date": "Data Movimento", "warehouse": "Magazzino", "documentNumber": "Numero Documento", "externalReference": "Riferimento Esterno", "notes": "Note", "article": "Articolo", "available": "Disponibile", "quantity": "Quantità" }, "placeholders": { "documentNumber": "DDT, Bolla, etc.", "externalReference": "Ordine, Cliente, etc.", "selectArticle": "Seleziona articolo", "notes": "Note" }, "actions": { "addLine": "Aggiungi Riga", "cancel": "Annulla", "saveDraft": "Salva Bozza", "saveAndConfirm": "Salva e Conferma" }, "totals": { "quantity": "Totale Quantità" }, "validation": { "warehouseRequired": "Seleziona un magazzino", "dateRequired": "Inserisci la data", "linesRequired": "Inserisci almeno una riga con articolo e quantità" }, "errors": { "saveError": "Errore: {{error}}" } }, "transfer": { "title": "Trasferimento tra Magazzini", "subtitle": "Sposta merce da un magazzino all'altro", "sections": { "transferData": "Dati Trasferimento", "lines": "Articoli da Trasferire" }, "fields": { "date": "Data", "sourceWarehouse": "Magazzino Origine", "destWarehouse": "Magazzino Destinazione", "document": "Documento", "externalReference": "Riferimento Esterno", "notes": "Note", "article": "Articolo", "available": "Disponibile", "quantity": "Quantità" }, "placeholders": { "article": "Articolo", "notes": "Note" }, "actions": { "add": "Aggiungi", "cancel": "Annulla", "saveDraft": "Salva Bozza", "saveAndConfirm": "Salva e Conferma" }, "totals": { "total": "Totale: {{value}}" }, "validation": { "sourceRequired": "Seleziona magazzino origine", "destRequired": "Seleziona magazzino destinazione", "sameWarehouse": "Origine e destinazione devono essere diversi", "dateRequired": "Inserisci la data", "linesRequired": "Inserisci almeno una riga" }, "errors": { "saveError": "Errore: {{error}}" } }, "locations": { "title": "Gestione Magazzini", "newWarehouse": "Nuovo Magazzino", "emptyState": { "title": "Nessun magazzino configurato", "action": "Aggiungi il primo magazzino" }, "card": { "default": "Magazzino Predefinito", "inactive": "Inattivo", "setDefault": "Imposta come predefinito", "edit": "Modifica", "delete": "Elimina" }, "dialog": { "createTitle": "Nuovo Magazzino", "editTitle": "Modifica Magazzino", "fields": { "code": "Codice", "alternativeCode": "Codice Alternativo", "name": "Nome", "description": "Descrizione", "type": "Tipo", "address": "Indirizzo", "isDefault": "Magazzino Predefinito", "isActive": "Attivo" }, "helpers": { "generatedOnSave": "(Generato al salvataggio)", "generatedAutomatically": "Generato automaticamente", "willBeAssigned": "Verrà assegnato automaticamente", "optional": "Opzionale" }, "validation": { "nameRequired": "Il nome è obbligatorio" }, "actions": { "cancel": "Annulla", "save": "Salva", "saving": "Salvataggio..." } }, "deleteDialog": { "title": "Conferma Eliminazione", "content": "Sei sicuro di voler eliminare il magazzino {{code}} - {{name}}?", "warning": "Questa azione non può essere annullata.", "deleting": "Eliminazione...", "delete": "Elimina", "cancel": "Annulla" }, "loadingError": "Errore nel caricamento dei magazzini: {{error}}" }, "warehouseType": { "Physical": "Fisico", "Transit": "Transito", "Returns": "Resi", "Defective": "Difettosi", "Subcontract": "Conto Lavoro" }, "stockLevels": { "title": "Giacenze di Magazzino", "valuation": "Valorizzazione", "summary": { "articles": "Articoli", "totalQuantity": "Quantità Totale", "totalValue": "Valore Totale", "lowStock": "Sotto Scorta" }, "filters": { "search": "Cerca articolo...", "warehouse": "Magazzino", "category": "Categoria", "lowStockOnly": "Solo sotto scorta", "allWarehouses": "Tutti", "allCategories": "Tutte" }, "columns": { "code": "Codice", "article": "Articolo", "warehouse": "Magazzino", "category": "Categoria", "quantity": "Giacenza", "reserved": "Riservata", "available": "Disponibile", "averageCost": "Costo Medio", "value": "Valore" }, "error": "Errore: {{error}}" }, "inventory": { "title": "Inventari Fisici", "newInventory": "Nuovo Inventario", "status": { "Draft": "Bozza", "InProgress": "In Corso", "Completed": "Completato", "Confirmed": "Confermato", "Cancelled": "Annullato" }, "columns": { "code": "Codice", "description": "Descrizione", "date": "Data Inventario", "warehouse": "Magazzino", "category": "Categoria", "status": "Stato", "progress": "Progresso", "actions": "Azioni" }, "actions": { "view": "Dettaglio", "start": "Avvia Conteggio", "continue": "Continua Conteggio", "cancel": "Annulla" }, "confirmCancel": "Sei sicuro di voler annullare questo inventario?", "form": { "title": { "new": "Nuovo Inventario", "edit": "Modifica Inventario", "editWithCode": "Inventario {{code}}" }, "breadcrumbs": { "list": "Inventari" }, "fields": { "description": "Descrizione", "date": "Data Inventario", "warehouse": "Magazzino", "category": "Categoria (Opzionale)", "type": "Tipo Inventario", "notes": "Note" }, "options": { "allCategories": "Tutte", "type": { "Full": "Completo", "Partial": "Parziale", "Cyclic": "Ciclico", "Sample": "A Campione" } }, "actions": { "back": "Indietro", "save": "Salva Modifiche", "create": "Crea e Inizia" } }, "count": { "title": "Inventario: {{description}}", "actions": { "back": "Indietro", "start": "Avvia Inventario", "complete": "Completa Conteggio", "confirm": "Conferma e Rettifica" }, "cards": { "date": "Data Inventario", "warehouse": "Magazzino", "totalLines": "Righe Totali", "countedLines": "Righe Contate" }, "alert": { "completed": "L'inventario è completato. Verifica le differenze prima di confermare. La conferma genererà automaticamente i movimenti di rettifica." }, "columns": { "articleCode": "Codice Articolo", "description": "Descrizione", "batch": "Lotto", "location": "Ubicazione", "theoreticalQty": "Qta Teorica", "countedQty": "Qta Contata", "difference": "Differenza" }, "confirmDialog": { "title": "Conferma Inventario", "content": "Sei sicuro di voler confermare l'inventario? Questa operazione è irreversibile e genererà i movimenti di rettifica per le differenze riscontrate.", "cancel": "Annulla", "confirm": "Conferma" } } } }, "personale": { "dipendentiTitle": "Gestione Dipendenti", "newDipendente": "Nuovo Dipendente", "editDipendente": "Modifica Dipendente", "nome": "Nome", "cognome": "Cognome", "codiceFiscale": "Codice Fiscale", "email": "Email", "telefono": "Telefono", "ruolo": "Ruolo", "indirizzo": "Indirizzo", "citta": "Città", "cap": "CAP", "dataAssunzione": "Data Assunzione", "dipartimento": "Dipartimento", "contrattiTitle": "Gestione Contratti", "newContratto": "Nuovo Contratto", "editContratto": "Modifica Contratto", "dipendente": "Dipendente", "tipoContratto": "Tipo Contratto", "dataInizio": "Data Inizio", "dataFine": "Data Fine", "retribuzione": "Retribuzione", "attivo": "Attivo", "assenzeTitle": "Gestione Assenze", "newAssenza": "Nuova Assenza", "editAssenza": "Modifica Assenza", "tipoAssenza": "Tipo Assenza", "stato": "Stato", "pagamentiTitle": "Gestione Pagamenti", "newPagamento": "Nuovo Pagamento", "editPagamento": "Modifica Pagamento", "data": "Data", "importo": "Importo", "causale": "Causale", "rimborsiTitle": "Gestione Rimborsi", "newRimborso": "Nuovo Rimborso", "editRimborso": "Modifica Rimborso", "descrizione": "Descrizione" } }