# NLS_ENCODING=UNICODE
#-------------------------------------------------------------------------------
# Copyright (c) 2000, 2007 IBM Corporation and others.
# All rights reserved. This program and the accompanying materials
# are made available under the terms of the Eclipse Public License v1.0
# which accompanies this distribution, and is available at
# http://www.eclipse.org/legal/epl-v10.html
#
# Contributors:
# IBM Corporation - initial implementation.
#-------------------------------------------------------------------------------
# NLS_MESSAGEFORMAT_VAR

# Generic Dialog Titles
moveDialog_title=Sposta
deleteDialog_title=Elimina elemento
errorDialog_title=Errore
errorDialog_cannotRename=Impossibile rinominare {0} ''{1}'' in ''{2}''. Risolvere il problema riportato in Dettagli e fare clic su OK per continuare oppure su Annulla per interrompere questa operazione.

# Confirm References Removal Dialog
deleteReferencesDialog_title=Conferma rimozione riferimenti
deleteReferencesDialog_text=All'elemento o agli elementi che si stanno per eliminare sono ancora associati riferimenti di altri elementi della libreria dei metodi. Con l'eliminazione verranno rimossi i riferimenti e nel contempo verranno aggiornati gli elementi che ne fanno uso.  Assicurarsi di disporre dell'autorizzazione per aggiornare gli elementi che fanno uso di riferimenti prima di scegliere OK.  Fare clic su Dettagli per esaminare l'elenco degli elementi che fanno riferimento agli elementi che si sta per eliminare.

# Resolve Name Conflict Dialog
resolveNameConflictDialog_title=Risolvi conflitto nomi elementi
resolveNameConflictDialog_text=Immettere un nuovo {0} per ''{1}'':

# Select Deliverables Dialog
selectDeliverablesDialog_title=Seleziona componente distribuibile
selectDeliverablesDialog_text=Selezionare un componente distribuibile in cui si desidera assegnare il prodotto di lavoro ''{0}''.

# New Process Component Dialog
newProcessComponentDialog_title=Nuovo componente processo
nameLabel_text=Nome:
defaultConfigLabel_text=Configurazione predefinita:
baseProcessLabel_text=Processo di base:
basedOnProcessesLabel_text=Basato su processi:
SpecifyNameText=Specificare un nome valido.

# Role Association Dialog
selectAssociationLabel_text=Seleziona associazione per l''operazione ''{0}''

# Remove Association dialog
removeAssociationDialog_text=Rimuovi associazione

# Select Teams Dialog
selectTeamsDialog_title=Seleziona team
selectTeamsDialog_text=Selezionare un team in cui si desidera assegnare un ruolo ''{0}''.

# Task Selection Dialog
taskSelectionDialog_title=Selezione operazione
titleLabel_text=Seleziona attivit\u00e0...

# Error Messages
emptyElementNameError_msg=IUPL0100E: Il nome {0} manca.\nTutti gli elementi di metodo e di processo devono avere un nome.\nImmettere un nome valido e provare di nuovo.
emptyElementNameError_simple_msg=Il nome non pu\u00f2 essere vuoto. Specificare un nome valido.
duplicateElementNameError_msg=IUPL0101E: Il nome ''{0}'' esiste gi\u00e0.\nUn elemento del metodo deve avere un nome univoco.\nImmettere un altro nome e provare di nuovo.
duplicateElementNameError_msg2=Immettere un altro nome e provare di nuovo.
duplicateElementNameError_simple_msg=Il nome esiste gi\u00e0. Specificare un altro nome.
invalidElementNameError1_msg=IUPL0102E: Il nome ''{0}'' non \u00e8 valido.\nIl nome di un elemento del metodo non pu\u00f2 iniziare con uno spazio.\nImmettere un nome valido e provare di nuovo.
invalidElementNameError2_msg=IUPL0103E: Il nome ''{0}'' non \u00e8 valido.\nIl nome di un elemento del metodo non pu\u00f2 terminare con un punto.\nImmettere un nome valido e provare di nuovo.
invalidElementNameError3_msg=IUPL0104E: Il nome ''{0}'' non \u00e8 valido.\nIl nome di un elemento del metodo non pu\u00f2 contenere questi caratteri: \\ / : * ? " < > ; | [ ] #\nImmettere un nome valido e provare di nuovo.
invalidElementNameError4_msg=IUPL0105E: Il nome ''{0}'' non \u00e8 valido.\nIl nome di un elemento del metodo non pu\u00f2 contenere il carattere: & \nImmettere un nome valido e riprovare.
invalidPluginNameError_msg=IUPL0121E: Il nome ''{0}'' non \u00e8 valido.\nIl nome del plug-in del metodo non pu\u00f2 contenere i seguenti caratteri: \\ / : * ? " < > ; | # % ''\nImmettere un nome valido e provare di nuovo.
filePathNameTooLong_msg=Nome percorso file troppo lungo (supera ''{0}'') 
noConfigError_msg=La libreria del metodo corrente non contiene configurazioni del metodo.\nPer creare un nuovo processo, \u00e8 necessaria una configurazione di metodo.\nCreare una configurazione di metodo e provare di nuovo.
noDeliveryProcessError_msg=IUPL0106E: La libreria dei metodi corrente non contiene processi di distribuzione.\nPer creare un nuovo contributo al processo, occorre un processo di distribuzione di base.\nCreare un processo di distribuzione e provare di nuovo.
noDefaultConfigError_msg=IUPL0107E: Non \u00e8 stata selezionata alcuna configurazione di metodo.\n\u00c8 necessario assegnare al nuovo processo una configurazione di metodo predefinita.\nSelezionare una configurazione di metodo e provare di nuovo.
noBaseProcessError_msg=IUPL0108E: Nessun processo di consegna selezionato.\nUn contributo al processo richiede un processo di distribuzione di base.\nSelezionare un processo di distribuzione e provare di nuovo.
createProcessError_msg=IUPL0109E: Impossibile creare il processo correttamente.
createElementError_msg=IUPL0110E: Impossibile creare l'elemento correttamente.
deleteElementError_msg=IUPL0111E: Impossibile eliminare l'elemento correttamente.
duplicateContentFileError_msg=IUPL0112E: Impossibile creare o rinominare  il file del contenuto per l''elemento affinch\u00e9 corrisponda al nome dell''elemento.\n\nUn file ''{0}'' esiste gi\u00e0.\n\nImmettere un altro nome e provare di nuovo.
duplicateContentFileError_simple_msg=Un file del contenuto con lo stesso nome esiste gi\u00e0. Specificare un altro nome.
undoCommandError_msg=IUPL0113E: Impossibile completare il comando ''{0}''.\n\nSi \u00e8 verificato un errore: {1}
invalidPredecessorError_msg=IUPL0114E: L'indice del predecessore specificato non \u00e8 valido.\n\nGli indici dei predecessori devono essere valori interi presenti nella colonna 'Indice'.\n\nSpecificare un valore valido e provare di nuovo.
UserInteractionHelper_errRelationshipExists=IUPL0100W: ''{0}'' \u00e8 gi\u00e0 associato a ''{1}''.  \u00c8 consentita una sola associazione di questo tipo.  Per assegnare ''{0}'' a ''{2}'' \u00e8 necessario prima eliminarlo da ''{1}''.
error_msgWithDetails=IUPL0116E: Si \u00e8 verificato un errore. Fare clic su Dettagli per ulteriori informazioni.
error_msg=IUPL0117E: Si \u00e8 verificato un errore. Controllare il log degli errori per ulteriori dettagli.
Suppression_nameDuplication=IUPL0118E: Dopo questa operazione si verificher\u00e0 un conflitto di nome. Controllare il nome dell'elemento per la duplicazione e provare nuovamente
Suppression_presentationNameDuplication=IUPL0119E: Dopo questa operazione si verificher\u00e0 un conflitto di nome. Controllare il nome della presentazione dell'elemento per la duplicazione e provare nuovamente

# Error Reasons
error_reason=Si \u00e8 verificato un errore. Fare clic su Dettagli per ulteriori informazioni.
saveProcessError_reason=Si \u00e8 verificato un errore durante il salvataggio del processo ''{0}''. Fare clic su Dettagli per ulteriori informazioni.
deleteReferencesError_reason=Si \u00e8 verificato un errore durante la rimozione dei riferimenti associati a questo elemento. Fare clic su Dettagli per ulteriori informazioni.
saveFileError_reason=Si \u00e8 verificato un errore durante il salvataggio del file ''{0}''. Fare clic su Dettagli per ulteriori informazioni.
invalidReferencesError_reason=Rilevati elementi di metodo con riferimenti non validi come risultato di una copia da un plug-in all'altro.\nQuesti riferimenti verranno rimossi. Continuare?
unresolvedObjectError_reason=Non \u00e8 possibile modificare un oggetto che non \u00e8 stato risolto: {0}(URI = {1}){2}

# Warning messages
MethodElementAddCommand_originalNotFoundWarning_msg=IUPL0118W: Impossibile trovare uno o pi\u00f9 elementi di origine. I file associati nella cartella delle risorse non verr\u00e0 copiato.
ActivityAddCommand_originalNotFoundWarning_msg=IUPL0119W: Impossibile trovare uno o pi\u00f9 elementi di origine. I pacchetti del processo associati non verranno copiati.
ActivityDropCommand_deepCopy_promptConfigurationMsg=Copiare tutti i descrittori?\n\nFacendo clic su No si copiano solo i descrittori che fanno parte della configurazione corrente.
deepCopy_promptMsg=Si ottiene una copia di tutti gli elementi collegati in modo dinamico necessaria per mantenerli separati d'ora in poi. Continuare?
deepCopy_title=Copia completa

# Progress messages
creatingProcessComponentTask_name=Creazione del componente del processo ''{0}'' in corso...
processingReferencesTask_name=Elaborazione dei riferimenti in corso...
deletingElementsTask_name=Eliminazione degli elementi e dei file associati in corso...
checkingReferencesTask_name=Verifica dei riferimenti in corso...
removingReferencestask_name=Rimozione dei riferimenti in corso...
savingModifiedFilesTask_name=Salvataggio dei file modificati in corso...
checkAffectedResourcesTask_name=Verifica delle risorse coinvolte...
movingTask_name=Spostamento in corso...
movingFilesTask_name=Spostamento dei file in corso...
copyingResourcesTask_name=Copia delle risorse in corso...
copyingActivities_msg=Copia dell''attivit\u00e0 ''{0}''
savingFileTask_name=Salvataggio del file ''{0}'' in corso...
savingResources_msg=Salvataggio risorse in corso

# UI Text
element_text=elemento
createElement_text=Crea elemento
createProcess_text=Crea processo
contributesTo_text=Contribuisce a
localContributesTo_text=Contribuisce localmente a
extends_text=Estende
replaces_text=Sostituisce
extends_replaces_text=Estensioni e sostituzioni
localReplaces_text=Sostituisce localmente
localReplacementAndDeepCopy_text=Sostituzione locale e Cop&ia profonda
elementType_text={0}: {1}
deliverables_text=Componenti distribuibili
contributeToActivity_text=Contribuisci ad attivit\u00e0
ActivityDropCommand_label=Attivit\u00e0 di rilascio
replaceActivity_text=Sostituisci attivit\u00e0
file_text=file
directory_text=directory
unresolved_text=(non risolto ''{0}'')
assists_text=Esecutore di assistenza
unknown_text=Sconosciuto
command_done=Completato

# The following UI text should be reviewed.
Util_labelpath_variabilitywithplugin_info={0} ({1} ''{2}'' in ''{3}'')
Util_labelpath_variability_info={0} ({1} ''{2}'')
ui_ref_delete=Il descrittore ''{0}'' dispone dei seguenti riferimenti che non sono utilizzati altrove.\nSelezionare i riferimenti che si desidera eliminare:
ui_ref_delete2=I seguenti riferimenti non sono utilizzati da nessuna parte.\nSelezionare i riferimenti che si desidera eliminare:
ui_references=Riferimenti
ui_workproduct_descriptor_description=Il descrittore di prodotti di lavoro ''{0}'' \u00e8 associato (Output di) al descrittore di operazioni ''{1}''
ui_workproductdescriptor_options=Opzioni
ui_workproductdescriptor_outputlabel=Rimuovi descrittore di prodotti di lavoro come output del descrittore di operazioni
ui_workproductdescriptor_delete_task=Elimina descrittore di operazioni dall'attivit\u00e0
ui_UserInteractionHelper_defaultconfigcheck=L''elemento selezionato ''{0}'' non \u00e8 la configurazione predefinita del processo.\nAggiungere questo elemento e le relative dipendenze alla configurazione predefinita?
ui_UserInteractionHelper_genericErr_message_text=Errori durante l'operazione. Fare clic su dettagli per ulteriori informazioni.
ProcessAutoSynchronizeAction_noDescriptorToSynch=Nessun descrittore con elemento di metodo collegato rilevato per la sincronizzazione
util_configurablecomposedadapter_refershingviewer=Errore durante l'aggiornamento del visualizzatore
confirm_remove_references_text=Gli elementi riportati nei dettagli potrebbero avere riferimenti non consentiti a questa guida in seguito alla conversione. Fare clic su OK per rimuoverli e continuare.
confirmDescriptorsDeletion_title=Conferma eliminazione descrittori
confirmDescriptorsDeletion_msg=Gli elementi che si stanno per eliminare sono ancora associati a riferimenti di altri elementi della libreria dei metodi.  Fare clic su S\u00ec per eliminarli anche questi descrittori.  Assicurarsi di disporre dell'autorizzazione per eliminare i descrittori prima di fare clic su S\u00ec.  Fare clic su Dettagli per esaminare l'elenco di descrittori che fanno riferimento agli elementi che si stanno per eliminare.
util_configurablecomposedadapter_unhandled_exception=Eccezione non gestita
util_ProcessUtil_err_same_breakdown_element=Impossibile avere lo stesso elemento di interruzione come predecessore e successore
ui_UserInteractionHelper_wplistdlg_msg=Il prodotto del lavoro ''{0}'' \u00e8 un output delle seguenti operazioni.\nSelezionare le operazioni per le quali si desidera creare i descrittori corrispondenti.
ui_UserInteractionHelper_rolelistdlg_msg=La regola ''{0}'' \u00e8 responsabile dei seguenti prodotti di lavoro.\nSelezionare i prodotti di lavoro per i quali si desidera creare i descrittori corrispondenti.
util_configurablecomposedadapter_fatalerr=Errore irreversibile
ui_UserInteractionHelper_workproducts=Prodotti di lavoro
util_ProcessUtil_err_same_sub_element=Impossibile collegare un elemento di interruzione a uno dei relativi elementi secondari.
util_ProcessUtil_err_wrong_element=Impossibile collegare all'elemento un elemento diverso da quello di suddivisione del lavoro.
util_ProcessUtil_err_child_element=Impossibile collegare un elemento di suddivisione a uno dei relativi elementi children.
ui_UserInteractionHelper_tasks=Operazioni
ui_association_task_selection=Selezione operazioni...
util_ProcessUtil_childadapter=\ \ adattatore dell'elemento child:

util_ProcessUtil_err_setparent=Impossibile impostare elemento parent per elemento child
util_tngutil_cannot_edit_resource=Impossibile modificare risorsa.
util_ProcessUtil_contributesto=contribuisce a ''{0}''
util_ProcessUtil_localContributesto=contribuisce localmente a ''{0}''
process_extends=estende ''{0}''
process_replaces=sostituisce ''{0}''
process_localReplaces=sostituisce localmente ''{0}''
# Filter constants externalized strings.
FilterConstants_disciplines_text=Discipline
FilterConstants_disciplinegroupings_text=Raggruppamenti discipline
FilterConstants_whitepapers_text=Whitepaper
FilterConstants_toolmentors_text=Guide dei tool
FilterConstants_tools_text=Strumenti
FilterConstants_roles_text=Ruoli
FilterConstants_tasks_text=Operazioni
FilterConstants_reusableassets_text=Risorse riutilizzabili
FilterConstants_all_text=I pi\u00f9 comuni
FilterConstants_processes_text=Processi
FilterConstants_activities_text=Attivit\u00e0
FilterConstants_practices_text=Pratiche
FilterConstants_templates_text=Modelli
FilterConstants_workproducts_text=Prodotti di lavoro
FilterConstants_checklists_text=Elenchi di controllo
FilterConstants_guidelines_text=Linee guida
FilterConstants_rolesets_text=Serie di ruoli
FilterConstants_guidance_text=Guida
FilterConstants_concepts_text=Concetti
FilterConstants_examples_text=Esempi
FilterConstants_contentpackages_text=Pacchetti del contenuto
FilterConstants_roledescriptors_text=Descrittori di ruoli
FilterConstants_rolesetgropuings_text=Raggruppamenti serie di ruoli
FilterConstants_taskdescriptors_text=Descrittori di operazioni
FilterConstants_contentelements_text=Elementi del contenuto
ProcessAutoSynchronizeAction_prepare=Preparazione alla sincronizzazione in corso...
FilterConstants_workproductdescriptors_text=Descrittori di prodotti di lavoro
FilterConstants_allcontentelements_text=Tutti gli elementi del contenuto
FilterConstants_supportingmaterials_text=Materiale di supporto
MethodElementAddCommand_errorSavingFiles=Errore durante il salvataggio dei file
FilterConstants_customcategories_text=Categorie personalizzate
FilterConstants_workproducttypes_text=Tipi di prodotto di lavoro
DeleteMethodElementCommand_warningMsg=Eliminazione completata con avviso
FilterConstants_methodplugins_text=Plug-in del metodo
UserInteractionHelper_lockedPlugin=IUPL0120E: Il plug-in ''{0}'' \u00e8 bloccato.
FilterConstants_domains_text=Domini
FilterConstants_roadmap_text=Roadmap
FilterConstants_reports_text=Report
AutoSynchronizeCommand_label=S&incronizzazione predefinita dal contenuto del metodo
ManualSynchronizeCommand_label=Sincronizzazione &personalizzata in corso...
SynchronizeCompleteDialog_Title=Sincronizzazione completa
AutoSynchronizeCommand_sucessful=Sincronizzazione completata correttamente.
selectDescriptorsToDelete_msg=I seguenti descrittori non vengono utilizzati ovunque dopo l'eliminazione degli elementi selezionati.\nSelezionare i descrittori da eliminare.

CreateProcessComponentCommand_Message=Specificare il nome e la configurazione predefinita per il {0} da specificare.
# UserInteractionHelper
UserInteractionHelper_ProcessPackage_Name=Nome:

# MethodCreateChildCommand
newElement_text=Nuovo {0}
update_outofsynch_title=Conflitto di aggiornamento
update_outofsynch_msg=I file sono stati modificati nel file system. Sovrascrivere le modifiche?
duplicateFeatureValue=Non \u00e8 possibile avere 2 elementi in ''{0}'' con lo stesso valore per ''{1}''
apply_pattern_error_msg=Impossibile applicare l''''attivit\u00e0 ''{0}'' al processo ''{1}'' poich\u00e9 risulta in dipendenza circolare.
apply_pattern_error_msg1=Impossibile applicare l''''attivit\u00e0 ''{0}'' al processo ''{1}'' poich\u00e9 ''{0}'' ha gi\u00e0 una o pi\u00f9 attivit\u00e0 come children.
activity_variability_error_msg1=L''''attivit\u00e0 ''{0}'' non pu\u00f2 impostare la variabilit\u00e0 con un parent diretto.
activity_variability_error_msg2=L''''attivit\u00e0 ''{0}'' non pu\u00f2 impostare la variabilit\u00e0 con ''{1}'' poich\u00e9 risulta in dipendenza circolare.
activity_variability_error_msg3=Impossibile sostituire un processo superiore con un'attivit\u00e0.
activity_deep_copy_variability_prompt=L'attivit\u00e0 di origine potrebbe disporre di sostituzioni o contributi esterni.\nCopiarli tutti?\n\nFacendo clic su No si copia solo l'attivit\u00e0 originale.
activity_variability_error_msg=L''attivit\u00e0 ''{0}'' non pu\u00f2 impostare la variabilit\u00e0 con ''{1}'' poich\u00e9 ''{1}'' dispone di una o pi\u00f9 attivit\u00e0 contribuita/sostituita come gli elementi child.
variability_error_msg=L''''elemento di variabilit\u00e0 ''{0}'' non pu\u00f2 impostare la variabilit\u00e0 con ''{1}'' poich\u00e9 risulta in una dipendenza circolare.
circular_dependency_error_msg=Impossibile eseguire l'operazione poich\u00e9 risulta in una dipendenza circolare.

# Validation messages
variability_element_circular_loop_error_msg=Rilevato loop dipendenza circolare ... 
replacing_ancestor_error_msg=Rilevato errore sostituzione ancestor.
cannot_copy_or_extend_delivery_process=Impossibile copiare o estendere un processo di distribuzione o una delle sue attivit\u00e0.

# Sort options
SortType_Label=Tipo ordinamento:
SortType_Manual=Manuale
SortType_Alphabetic=Alfabetico crescente
SortType_ReverseAlphabetic=Alfabetico decrescente
SortType_MethodType=Tipo di elemento

WorkOrderTypeAbbreviation_FINISH_TO_START=FS
WorkOrderTypeAbbreviation_FINISH_TO_FINISH=FF
WorkOrderTypeAbbreviation_START_TO_FINISH=SF
WorkOrderTypeAbbreviation_START_TO_START=SS
add_to_default_config_dlg_title=Aggiungi alla configurazione predefinita
