#-------------------------------------------------------------------------------
# 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=Mover
deleteDialog_title=Excluir Elemento
errorDialog_title=Erro
errorDialog_cannotRename=Imposs\u00edvel renomear {0} ''{1}'' para ''{2}''. Resolva o problema mostrado em Detalhes e clique em OK para continuar ou em Cancelar para interromper esta opera\u00e7\u00e3o.

# Confirm References Removal Dialog
deleteReferencesDialog_title=Confirmar Remo\u00e7\u00e3o de Refer\u00eancias
deleteReferencesDialog_text=Os elementos que voc\u00ea est\u00e1 prestes a excluir ainda est\u00e3o sendo referenciados por outros elementos na biblioteca de m\u00e9todos. A exclus\u00e3o desses elementos remover\u00e1 refer\u00eancias a eles, portanto, tamb\u00e9m atualizar\u00e1 os elementos que fazem as refer\u00eancias. Certifique-se de ter permiss\u00e3o para atualizar os elementos que fazem as refer\u00eancias antes de clicar em OK. Clique em Detalhes para revisar a lista de elementos que referenciam os elementos que voc\u00ea est\u00e1 prestes a excluir.

# Resolve Name Conflict Dialog
resolveNameConflictDialog_title=Resolver Conflito de Nomes de Elementos
resolveNameConflictDialog_text=Digite um novo {0} para ''{1}'':

# Select Deliverables Dialog
selectDeliverablesDialog_title=Selecionar Distribu\u00edveis
selectDeliverablesDialog_text=Selecione um distribu\u00edvel no qual voc\u00ea deseja que o produto de trabalho ''{0}'' seja designado.

# New Process Component Dialog
newProcessComponentDialog_title=Novo Componente de Processo
nameLabel_text=Nome:
defaultConfigLabel_text=Configura\u00e7\u00e3o Padr\u00e3o:
baseProcessLabel_text=Processo de Base:
basedOnProcessesLabel_text=Baseado nos Processos:
SpecifyNameText=Especifique um nome v\u00e1lido.

# Role Association Dialog
selectAssociationLabel_text=Selecionar associa\u00e7\u00e3o para a tarefa ''{0}''

# Remove Association dialog
removeAssociationDialog_text=Remover Associa\u00e7\u00e3o

# Select Teams Dialog
selectTeamsDialog_title=Selecionar Equipes
selectTeamsDialog_text=Selecione uma equipe na qual voc\u00ea deseja que uma fun\u00e7\u00e3o ''{0}'' seja designada.

# Task Selection Dialog
taskSelectionDialog_title=Sele\u00e7\u00e3o de Tarefas
titleLabel_text=Selecionar tarefas...

# Error Messages
emptyElementNameError_msg=IUPL0100E: O nome de {0} \u00e9 necess\u00e1rio.\nTodos os elementos de m\u00e9todo e de processo devem ter um nome.\nDigite um nome v\u00e1lido e tente novamente.
emptyElementNameError_simple_msg=O nome n\u00e3o pode estar vazio. Especifique um nome v\u00e1lido.
duplicateElementNameError_msg=IUPL0101E: O nome ''{0}'' j\u00e1 existe.\nUm elemento de m\u00e9todo deve ter um nome exclusivo.\nDigite um nome diferente e tente novamente.
duplicateElementNameError_msg2=Digite um nome diferente e tente novamente.
duplicateElementNameError_simple_msg=O nome j\u00e1 existe. Especifique outro nome.
invalidElementNameError1_msg=IUPL0102E: O nome ''{0}'' \u00e9 inv\u00e1lido.\nUm nome de elemento de m\u00e9todo n\u00e3o pode iniciar com um espa\u00e7o.\nDigite um nome v\u00e1lido e tente novamente.
invalidElementNameError2_msg=IUPL0103E: O nome ''{0}'' \u00e9 inv\u00e1lido.\nUm nome de elemento de m\u00e9todo n\u00e3o pode terminar com um ponto.\nDigite um nome v\u00e1lido e tente novamente.
invalidElementNameError3_msg=IUPL0104E: O nome ''{0}'' \u00e9 inv\u00e1lido.\nUm nome de elemento de m\u00e9todo n\u00e3o pode conter estes caracteres: \\ / : * ? " < > ; |\nDigite um nome v\u00dflido e tente novamente.
invalidElementNameError4_msg=IUPL0105E: O nome ''{0}'' \u00e9 inv\u00e1lido.\nUm nome de elemento de m\u00e9todo n\u00e3o pode conter o caractere: & \nDigite um nome v\u00e1lido e tente novamente.
invalidPluginNameError_msg=IUPL0121E: O nome ''{0}'' \u00e9 inv\u00e1lido.\nUm nome de plug-in de m\u00e9todo n\u00e3o pode conter estes caracteres: \\ / : * ? " < > ; | # % ''\nDigite um nome v\u00e1lido e tente novamente.
filePathNameTooLong_msg=Nome do caminho do arquivo longo demais (excedendo ''{0}'') 
noConfigError_msg=A biblioteca de m\u00e9todos atual n\u00e3o cont\u00e9m nenhuma configura\u00e7\u00e3o de m\u00e9todo.\n\u00c9 necess\u00e1ria uma configura\u00e7\u00e3o de m\u00e9todo para criar um novo processo.\nCrie uma configura\u00e7\u00e3o de m\u00e9todo e tente novamente.
noDeliveryProcessError_msg=IUPL0106E: A biblioteca de m\u00e9todos atual n\u00e3o cont\u00e9m nenhum processo de entrega.\n\u00c9 necess\u00e1rio um processo de entrega de base para criar uma nova contribui\u00e7\u00e3o de processo.\nCrie um processo de entrega e tente novamente.
noDefaultConfigError_msg=IUPL0107E: Nenhuma configura\u00e7\u00e3o de m\u00e9todo foi selecionada.\nUma configura\u00e7\u00e3o de m\u00e9todo padr\u00e3o deve ser designada para o novo processo.\nSelecione uma configura\u00e7\u00e3o de m\u00e9todo e tente novamente.
noBaseProcessError_msg=IUPL0108E: Nenhum processo de entrega foi selecionado.\nUma contribui\u00e7\u00e3o de processo exige um processo de entrega de base.\nSelecione um processo de entrega e tente novamente.
createProcessError_msg=IUPL0109E: N\u00e3o \u00e9 poss\u00edvel criar o processo com \u00eaxito.
createElementError_msg=IUPL0110E: N\u00e3o \u00e9 poss\u00edvel criar o elemento com \u00eaxito.
deleteElementError_msg=IUPL0111E: N\u00e3o \u00e9 poss\u00edvel excluir o elemento com \u00eaxito.
duplicateContentFileError_msg=IUPL0112E: O arquivo de conte\u00fado do elemento n\u00e3o pode ser criado ou renomeado de modo a corresponder ao nome do elemento.\n\nJ\u00e1 existe um arquivo ''{0}''.\n\nDigite um nome diferente e tente novamente.
duplicateContentFileError_simple_msg=Existe um arquivo de conte\u00fado com o mesmo nome. Especifique outro nome.
undoCommandError_msg=IUPL0113E: N\u00e3o \u00e9 poss\u00edvel concluir o comando de desfazer ''{0}''.\n\nOcorreu um erro: {1}
invalidPredecessorError_msg=IUPL0114E: O \u00edndice de predecessor especificado \u00e9 inv\u00e1lido.\n\nUm \u00edndice de predecessor deve ser um valor inteiro da coluna '\u00cdndice'.\n\nEspecifique um valor v\u00e1lido e tente novamente.
UserInteractionHelper_errRelationshipExists=IUPL0100W: ''{0}'' j\u00e1 est\u00e1 associado a ''{1}''.  Somente uma associa\u00e7\u00e3o deste tipo \u00e9 permitida. Para designar ''{0}'' para ''{2}'', primeiro \u00e9 necess\u00e1rio remov\u00ea-lo de ''{1}''.
error_msgWithDetails=IUPL0116E: Ocorreu um erro. Clique em Detalhes para obter informa\u00e7\u00f5es adicionais.
error_msg=IUPL0117E: Ocorreu um erro. Consulte o log de erros para obter detalhes adicionais.
Suppression_nameDuplication=IUPL0118E: Ocorrer\u00e1 um conflito de nomes ap\u00f3s esta opera\u00e7\u00e3o. Procure por duplica\u00e7\u00f5es no nome do elemento e tente novamente.
Suppression_presentationNameDuplication=IUPL0119E: Ocorrer\u00e1 um conflito de nomes ap\u00f3s esta opera\u00e7\u00e3o. Procure por duplica\u00e7\u00f5es no nome de apresenta\u00e7\u00e3o e tente novamente.

# Error Reasons
error_reason=Ocorreu um erro. Clique em Detalhes para obter informa\u00e7\u00f5es adicionais.
saveProcessError_reason=Ocorreu um erro ao salvar o processo ''{0}''. Clique em Detalhes para obter informa\u00e7\u00f5es adicionais.
deleteReferencesError_reason=Ocorreu um erro ao remover refer\u00eancias associadas a este elemento. Clique em Detalhes para obter informa\u00e7\u00f5es adicionais.
saveFileError_reason=Ocorreu um erro ao salvar o arquivo ''{0}''. Clique em Detalhes para obter informa\u00e7\u00f5es adicionais.
invalidReferencesError_reason=Foram detectados elementos de m\u00e9todo com refer\u00eancias inv\u00e1lidas como resultado de c\u00f3pia entre plug-ins.\nEssas refer\u00eancias ser\u00e3o removidas. Deseja continuar?
unresolvedObjectError_reason=Imposs\u00edvel modificar um objeto n\u00e3o resolvido: {0}(URI = {1}){2}

# Warning messages
MethodElementAddCommand_originalNotFoundWarning_msg=IUPL0118W: N\u00e3o foi poss\u00edvel localizar um ou mais elementos de origem. Os arquivos associados na pasta de recursos n\u00e3o ser\u00e3o copiados.
ActivityAddCommand_originalNotFoundWarning_msg=IUPL0119W: N\u00e3o foi poss\u00edvel localizar um ou mais elementos de origem. Os Pacotes de Processo associados n\u00e3o ser\u00e3o copiados.
ActivityDropCommand_deepCopy_promptConfigurationMsg=Deseja copiar todos os descritores?\n\nClicar em N\u00e3o copiar\u00e1 somente os descritores que fazem parte da configura\u00e7\u00e3o atual.
deepCopy_promptMsg=Voc\u00ea obter\u00e1 uma c\u00f3pia de todos os elementos vinculados dinamicamente que precisa manter separadamente de agora em diante. Deseja continuar?
deepCopy_title=C\u00f3pia Detalhada

# Progress messages
creatingProcessComponentTask_name=Criando o componente de processo ''{0}''...
processingReferencesTask_name=Processando refer\u00eancias...
deletingElementsTask_name=Excluindo elementos e arquivos associados...
checkingReferencesTask_name=Verificando refer\u00eancias...
removingReferencestask_name=Removendo refer\u00eancias...
savingModifiedFilesTask_name=Salvando arquivos modificados...
checkAffectedResourcesTask_name=Verificando recursos afetados...
movingTask_name=Movendo...
movingFilesTask_name=Movendo arquivos...
copyingResourcesTask_name=Copiando recursos...
copyingActivities_msg=Copiando atividade ''{0}''
savingFileTask_name=Salvando o arquivo ''{0}''...
savingResources_msg=Salvando recursos

# UI Text
element_text=elemento
createElement_text=Criar Elemento
createProcess_text=Criar Processo
contributesTo_text=Contribui para
localContributesTo_text=Contribui localmente para
extends_text=Estende
replaces_text=Substitui
extends_replaces_text=Estende e Substitui
localReplaces_text=Substitui localmente
localReplacementAndDeepCopy_text=Substitui\u00e7\u00e3o Local e C\u00f3p&ia Detalhada
elementType_text={0}:{1}
deliverables_text=Distribu\u00edveis
contributeToActivity_text=Contribuir para Atividade
ActivityDropCommand_label=Atividade de Queda
replaceActivity_text=Substituir Atividade
file_text=arquivo
directory_text=diret\u00f3rio
unresolved_text=(''{0}'' n\u00e3o resolvido)
assists_text=Executor de Assist\u00eancia
unknown_text=Desconhecida
command_done=Conclu\u00eddo

# The following UI text should be reviewed.
Util_labelpath_variabilitywithplugin_info={0} ({1} ''{2}'' em ''{3}'')
Util_labelpath_variability_info={0} ({1} ''{2}'')
ui_ref_delete=O descritor ''{0}'' tem as refer\u00eancias a seguir, que n\u00e3o s\u00e3o utilizadas em nenhum lugar.\nSelecione aquelas que voc\u00ea deseje excluir:
ui_ref_delete2=As seguintes refer\u00eancias n\u00e3o est\u00e3o sendo utilizadas em nenhum lugar.\nSelecione aquelas que voc\u00ea deseje excluir:
ui_references=Refer\u00eancias
ui_workproduct_descriptor_description=O descritor de produto de trabalho ''{0}'' est\u00e1 associado (Sa\u00edda De) ao descritor de tarefa ''{1}''
ui_workproductdescriptor_options=Opcionais
ui_workproductdescriptor_outputlabel=Remover descritor de produto com sa\u00edda do descritor de tarefa
ui_workproductdescriptor_delete_task=Excluir descritor de tarefa da atividade
ui_UserInteractionHelper_defaultconfigcheck=O elemento selecionado ''{0}'' n\u00e3o est\u00e1 na configura\u00e7\u00e3o padr\u00e3o do processo.\nDeseja inclu\u00ed-lo e suas depend\u00eancias na configura\u00e7\u00e3o padr\u00e3o?
ui_UserInteractionHelper_genericErr_message_text=Ocorreram erros na opera\u00e7\u00e3o. Clique em Detalhes para obter informa\u00e7\u00f5es adicionais.
ProcessAutoSynchronizeAction_noDescriptorToSynch=N\u00e3o foi localizado nenhum descritor com elemento de m\u00e9todo vinculado para sincronizar.
util_configurablecomposedadapter_refershingviewer=Erro ao atualizar o visualizador
confirm_remove_references_text=Os elementos listados em Detalhes podem ter refer\u00eancias ilegais  para esta orienta\u00e7\u00e3o depois da convers\u00e3o. Clique em OK para remov\u00ea-los e continue.
confirmDescriptorsDeletion_title=Confirmar a Exclus\u00e3o de Descritores
confirmDescriptorsDeletion_msg=O(s) elemento(s) que voc\u00ea est\u00e1 prestes a excluir ainda est\u00e1(\u00e3o) sendo referenciado(s) por descritores na biblioteca de m\u00e9todos. Clique em Sim se tamb\u00e9m desejar excluir esses descritores. Certifique-se de ter permiss\u00e3o para excluir os descritores antes de clicar em Sim. Clique em Detalhes para revisar a lista de descritores que referenciam o(s) elemento(s) que voc\u00ea est\u00e1 prestes a excluir.
util_configurablecomposedadapter_unhandled_exception=Exce\u00e7\u00e3o n\u00e3o manipulada
util_ProcessUtil_err_same_breakdown_element=N\u00e3o \u00e9 poss\u00edvel ter o mesmo elemento de divis\u00e3o como predecessor e sucessor
ui_UserInteractionHelper_wplistdlg_msg=O produto de trabalho ''{0}'' \u00e9 uma sa\u00edda para as seguintes tarefas.\nSelecione as tarefas para as quais deseje criar os descritores correspondentes.
ui_UserInteractionHelper_rolelistdlg_msg=A fun\u00e7\u00e3o ''{0}'' tem os seguintes produtos de trabalho respons\u00e1veis.\nSelecione os produtos de trabalho para os quais deseje criar os descritores correspondentes.
util_configurablecomposedadapter_fatalerr=Erro fatal
ui_UserInteractionHelper_workproducts=Produtos de Trabalho
util_ProcessUtil_err_same_sub_element=N\u00e3o \u00e9 poss\u00edvel vincular um elemento dividido a seus subelementos.
util_ProcessUtil_err_wrong_element=Imposs\u00edvel vincular a um elemento que n\u00e3o seja um elemento de divis\u00e3o de trabalho.
util_ProcessUtil_err_child_element=Imposs\u00edvel vincular um elemento de divis\u00e3o a um de seus filhos.
ui_UserInteractionHelper_tasks=Tarefas
ui_association_task_selection=Sele\u00e7\u00e3o de Tarefas...
util_ProcessUtil_childadapter=\ \ adaptador do filho: 
util_ProcessUtil_err_setparent=N\u00e3o foi poss\u00edvel configurar pai para o filho
util_tngutil_cannot_edit_resource=Imposs\u00edvel editar o recurso.
util_ProcessUtil_contributesto=contribui para ''{0}''
util_ProcessUtil_localContributesto=contribui localmente para ''{0}''
process_extends=estende ''{0}''
process_replaces=substitui ''{0}''
process_localReplaces=substitui localmente ''{0}''
# Filter constants externalized strings.
FilterConstants_disciplines_text=Disciplinas
FilterConstants_disciplinegroupings_text=Agrupamentos de Disciplinas
FilterConstants_whitepapers_text=White papers
FilterConstants_toolmentors_text=Mentores de Ferramentas
FilterConstants_tools_text=Ferramentas
FilterConstants_roles_text=Fun\u00e7\u00f5es
FilterConstants_tasks_text=Tarefas
FilterConstants_reusableassets_text=Recursos Reutiliz\u00e1veis
FilterConstants_all_text=Mais comum
FilterConstants_processes_text=Processos
FilterConstants_activities_text=Atividades
FilterConstants_practices_text=Pr\u00e1ticas
FilterConstants_templates_text=Modelos
FilterConstants_workproducts_text=Produtos de Trabalho
FilterConstants_checklists_text=Listas de Verifica\u00e7\u00e3o
FilterConstants_guidelines_text=Diretrizes
FilterConstants_rolesets_text=Conjuntos de Fun\u00e7\u00f5es
FilterConstants_guidance_text=Orienta\u00e7\u00e3o
FilterConstants_concepts_text=Conceitos
FilterConstants_examples_text=Exemplos
FilterConstants_contentpackages_text=Pacotes de Conte\u00fado
FilterConstants_roledescriptors_text=Descritores de Fun\u00e7\u00e3o
FilterConstants_rolesetgropuings_text=Agrupamentos de Conjunto de Fun\u00e7\u00f5es
FilterConstants_taskdescriptors_text=Descritores de Tarefa
FilterConstants_contentelements_text=Elementos de Conte\u00fado
ProcessAutoSynchronizeAction_prepare=Preparando sincroniza\u00e7\u00e3o...
FilterConstants_workproductdescriptors_text=Descritores de Produto de Trabalho
FilterConstants_allcontentelements_text=Todos os Elementos de Conte\u00fado
FilterConstants_supportingmaterials_text=Materiais de Suporte
MethodElementAddCommand_errorSavingFiles=Erro ao salvar arquivo(s)
FilterConstants_customcategories_text=Categorias Customizadas
FilterConstants_workproducttypes_text=Tipos de Produto de Trabalho
DeleteMethodElementCommand_warningMsg=Exclus\u00e3o conclu\u00edda com aviso
FilterConstants_methodplugins_text=Plug-ins de M\u00e9todo
UserInteractionHelper_lockedPlugin=IUPL0120E: O plug-in ''{0}'' est\u00e1 bloqueado.
FilterConstants_domains_text=Dom\u00ednios
FilterConstants_roadmap_text=Mapas de Rotas
FilterConstants_reports_text=Relat\u00f3rios
AutoSynchronizeCommand_label=S&incroniza\u00e7\u00e3o Padr\u00e3o do Conte\u00fado de M\u00e9todo
ManualSynchronizeCommand_label=Sincroni&za\u00e7\u00e3o Customizada...
SynchronizeCompleteDialog_Title=Sincroniza\u00e7\u00e3o Conclu\u00edda
AutoSynchronizeCommand_sucessful=A sincroniza\u00e7\u00e3o foi conclu\u00edda com \u00eaxito.
selectDescriptorsToDelete_msg=Os seguintes descritores n\u00e3o s\u00e3o utilizados em nenhum lugar ap\u00f3s a exclus\u00e3o dos elementos selecionados.\nSelecione os descritores que voc\u00ea deseja excluir.

CreateProcessComponentCommand_Message=Especifique o nome e configura\u00e7\u00e3o padr\u00e3o do {0} a ser criado.
# UserInteractionHelper
UserInteractionHelper_ProcessPackage_Name=Nome:

# MethodCreateChildCommand
newElement_text=Novo {0}
update_outofsynch_title=Conflito de atualiza\u00e7\u00e3o
update_outofsynch_msg=Os arquivos foram alterados no sistema de arquivos. Deseja sobrescrever as altera\u00e7\u00f5es?
duplicateFeatureValue=N\u00e3o \u00e9 poss\u00edvel ter 2 elementos em ''{0}'' com o mesmo valor para ''{1}''
apply_pattern_error_msg=N\u00e3o \u00e9 poss\u00edvel aplicar a atividade ''{0}'' ao processo ''{1}'' visto que isso resultar\u00e1 numa depend\u00eancia circular.
apply_pattern_error_msg1=N\u00e3o \u00e9 poss\u00edvel aplicar a atividade ''{0}'' ao processo ''{1}'' porque ''{0}'' j\u00e1 possui, como filho, uma ou mais atividades contribu\u00eddas/substitu\u00eddas.
activity_variability_error_msg1=A atividade ''{0}'' n\u00e3o pode definir a variabilidade com um dos seus pais diretos.
activity_variability_error_msg2=A atividade ''{0}'' n\u00e3o pode definir a variabilidade com ''{1}'' porque isso resultar\u00e1 numa depend\u00eancia circular.
activity_variability_error_msg3=N\u00e3o \u00e9 poss\u00edvel substituir um processo de n\u00edvel superior por uma atividade.
activity_deep_copy_variability_prompt=A atividade de origem pode ter contribui\u00e7\u00f5es externas ou substitui\u00e7\u00f5es.\nDeseja copi\u00e1-las tamb\u00e9m?\n\nSe clicar em N\u00e3o, voc\u00ea copiar\u00e1 apenas a atividade original.
activity_variability_error_msg=A atividade ''{0}'' n\u00e3o pode definir a variabilidade com ''{1}'' porque ''{1}'' j\u00e1 tem uma ou mais atividades contribu\u00eddas/substitu\u00eddas como suas filhas.
variability_error_msg=O elemento de variabilidade ''{0}'' n\u00e3o pode definir a variabilidade com ''{1}'' porque isso resultar\u00e1 numa depend\u00eancia circular.
circular_dependency_error_msg=N\u00e3o \u00e9 poss\u00edvel executar a opera\u00e7\u00e3o porque isso resultar\u00e1 numa depend\u00eancia circular.

# Validation messages
variability_element_circular_loop_error_msg=Loop de depend\u00eancia circular detectado ... 
replacing_ancestor_error_msg=Erro ao substituir ancestral detectado.
cannot_copy_or_extend_delivery_process=Imposs\u00edvel copiar ou estender um processo de entrega ou qualquer uma de suas atividades.

# Sort options
SortType_Label=Tipo de Classifica\u00e7\u00e3o:
SortType_Manual=Manual
SortType_Alphabetic=Alfab\u00e9tica
SortType_ReverseAlphabetic=Alfab\u00e9tica Invertida
SortType_MethodType=Tipo do 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=Incluir na Configura\u00e7\u00e3o Padr\u00e3o
