# 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=D\u00e9placer
moveDialog_addRefPluginsWarningText=Avertissement : ce d\u00e9placement peut entra\u00eener des d\u00e9pendances de plug-ins non d\u00e9clar\u00e9es si vous n'ajoutez pas les r\u00e9f\u00e9rences de plug-ins suppl\u00e9mentaires requises. Les utilisateurs doivent utiliser la validation de biblioth\u00e8que pour les v\u00e9rifier et les corriger manuellement apr\u00e8s le d\u00e9placement.
moveDialog_addRefPluginsWarningText1=Avertissement : ce d\u00e9placement peut entra\u00eener des d\u00e9pendances de plug-ins non d\u00e9clar\u00e9es pouvant causer des d\u00e9pendances de plug-ins en boucle s'il est ajout\u00e9 par l'outil. Les utilisateurs doivent utiliser la validation de biblioth\u00e8que pour les v\u00e9rifier et les corriger manuellement apr\u00e8s le d\u00e9placement.  
moveDialog_addRefPluginsText=Les r\u00e9f\u00e9rences de plug-ins suivantes peuvent \u00eatre ajout\u00e9es sans entra\u00eener de d\u00e9pendances en boucle. Cliquez sur "Oui" pour poursuivre. "Non" permet de continuer le d\u00e9placement sans ajout. "Annuler" permet d'annuler le d\u00e9placement.\n\nR\u00e9f\u00e9rences de plug-ins \u00e0 ajouter pour
deleteDialog_title=Supprimer un \u00e9l\u00e9ment
errorDialog_title=Erreur
errorDialog_cannotRename=Impossible de renommer {0} ''{1}'' en ''{2}''. R\u00e9solvez le probl\u00e8me affich\u00e9 dans D\u00e9tails et cliquez sur OK pour continuer ou sur Annuler pour abandonner cette op\u00e9ration.

# Confirm References Removal Dialog
deleteReferencesDialog_title=Confirmer la suppression des r\u00e9f\u00e9rences
deleteReferencesDialog_text=Le(s) \u00e9l\u00e9ment(s) que vous \u00eates sur le point de supprimer sont toujours utilis\u00e9s par d'autres \u00e9l\u00e9ments de la biblioth\u00e8que de m\u00e9thodes. La suppression de ces \u00e9l\u00e9ments entra\u00eenera la suppression de leurs r\u00e9f\u00e9rences et mettra donc \u00e0 jour les \u00e9l\u00e9ments de r\u00e9f\u00e9rencement.  V\u00e9rifiez que vous \u00eates autoris\u00e9 \u00e0 mettre \u00e0 jour les \u00e9l\u00e9ments de r\u00e9f\u00e9rencement avant de cliquer sur OK.  Cliquez sur D\u00e9tails pour r\u00e9viser la liste des \u00e9l\u00e9ments utilisant le(s) \u00e9l\u00e9ment(s) que vous \u00eates sur le point de supprimer.

# Resolve Name Conflict Dialog
resolveNameConflictDialog_title=R\u00e9soudre un conflit de nom d'\u00e9l\u00e9ment
resolveNameConflictDialog_text=Saisissez un nouveau {0} pour ''{1}'' :

# Select Deliverables Dialog
selectDeliverablesDialog_title=S\u00e9lectionner les livrables
selectDeliverablesDialog_text=S\u00e9lectionnez un livrable dans lequel vous voulez affecter le produit ''{0}''.

# New Process Component Dialog
newProcessComponentDialog_title=Nouveau composant de processus
nameLabel_text=Nom :
defaultConfigLabel_text=Configuration par d\u00e9faut :
baseProcessLabel_text=Processus de base :
basedOnProcessesLabel_text=Bas\u00e9 sur les processus :
SpecifyNameText=Indiquez un nom correct.

# Role Association Dialog
selectAssociationLabel_text=S\u00e9lectionnez une association pour la t\u00e2che ''{0}''

# Remove Association dialog
removeAssociationDialog_text=Supprimez une association

# Select Teams Dialog
selectTeamsDialog_title=S\u00e9lectionner les \u00e9quipes
selectTeamsDialog_text=S\u00e9lectionnez une \u00e9quipe \u00e0 laquelle vous souhaitez affecter un r\u00f4le ''{0}''.

# Task Selection Dialog
taskSelectionDialog_title=S\u00e9lectionner des t\u00e2ches
titleLabel_text=S\u00e9lectionnez des t\u00e2ches...

# Error Messages
emptyElementNameError_msg=IUPL0100E : Le nom {0} est manquant.\nTous les \u00e9l\u00e9ments de m\u00e9thode et de processus doivent avoir un nom.\nEntrez un nom valide et r\u00e9essayez.
emptyElementNameError_simple_msg=Le nom ne peut pas \u00eatre vide. Indiquez un nom valide.
duplicateElementNameError_msg=IUPL0101E: Le nom ''{0}'' existe d\u00e9j\u00e0. \nUn \u00e9l\u00e9ment de m\u00e9thode doit avoir un nom unique.\nEntrez un autre nom et refaites une tentative.
duplicateElementNameError_msg2=Entrez un autre nom et refaites une tentative.
duplicateElementNameError_simple_msg=Le nom existe d\u00e9j\u00e0. Indiquez un autre nom.
invalidElementNameError1_msg=IUPL0102E : Le nom ''{0}'' est non valide.\nUn nom d''\u00e9l\u00e9ment de m\u00e9thode ne peut pas commencer par un espace.\nEntrez un nom valide et r\u00e9essayez.
invalidElementNameError2_msg=IUPL0103E : Le nom ''{0}'' est non valide.\nUn nom d''\u00e9l\u00e9ment de m\u00e9thode ne peut pas se terminer par un point.\nEntrez un nom valide et r\u00e9essayez.
invalidElementNameError3_msg=IUPL0104E : Le nom ''{0}'' est non valide.\nUn nom d''\u00e9l\u00e9ment de m\u00e9thode ne peut pas contenir les caract\u00e8res suivants : \\ / : * ? " < > ; | [ ] #\nEntrez un nom valide et r\u00e9essayez.
invalidElementNameError4_msg=IUPL0105E : Le nom ''{0}'' est incorrect.\nUn nom d''\u00e9l\u00e9ment de m\u00e9thode ne peut pas contenir le caract\u00e8re : & \nEntrez un nom correct et r\u00e9essayez.
invalidPluginNameError_msg=IUPL0121E : Le nom ''{0}'' n''est pas valide.\nUn nom de plug-in de m\u00e9thode ne peut pas contenir les caract\u00e8res suivants : \\ / : * ? " < > ; | # % ''\nSaisissez un nom valide et r\u00e9essayez.
filePathNameTooLong_msg=Nom de chemin trop long (plus de ''{0}'') 
noConfigError_msg=La biblioth\u00e8que de m\u00e9thodes en cours ne contient aucune configuration de m\u00e9thode.\nUne configuration de m\u00e9thode est n\u00e9cessaire pour cr\u00e9er un nouveau processus.\nCr\u00e9ez une configuration de m\u00e9thode et r\u00e9essayez.
noDeliveryProcessError_msg=IUPL0106E : La biblioth\u00e8que de m\u00e9thodes en cours ne contient aucun processus de livraison.\nUn processus de livraison de base est n\u00e9cessaire pour cr\u00e9er une nouvelle contribution de processus.\nCr\u00e9ez un processus de livraison et r\u00e9essayez.
noDefaultConfigError_msg=IUPL0107E : Aucune configuration de m\u00e9thode n'a \u00e9t\u00e9 s\u00e9lectionn\u00e9e.\nUne configuration de m\u00e9thode par d\u00e9faut doit \u00eatre affect\u00e9e au nouveau processus.\nS\u00e9lectionnez une configuration de m\u00e9thode et r\u00e9essayez.
noBaseProcessError_msg=IUPL0108E : Aucun processus de livraison n'a \u00e9t\u00e9 s\u00e9lectionn\u00e9.\nUne contribution de processus requiert un processus de livraison de base.\nS\u00e9lectionnez un processus de livraison et r\u00e9essayez.
createProcessError_msg=IUPL0109E : Impossible de cr\u00e9er le processus.
createElementError_msg=IUPL0110E : Impossible de cr\u00e9er l'\u00e9l\u00e9ment.
deleteElementError_msg=IUPL0111E : Impossible de supprimer l'\u00e9l\u00e9ment.
duplicateContentFileError_msg=IUPL0112E : Le fichier de contenu de l''\u00e9l\u00e9ment ne peut pas \u00eatre cr\u00e9\u00e9 ou renomm\u00e9 afin de correspondre au nom de l''\u00e9l\u00e9ment. \n\nUn fichier ''{0}'' existe d\u00e9j\u00e0.\n\nSaisissez un autre nom et r\u00e9essayez.
duplicateContentFileError_simple_msg=Un fichier de contenu portant le m\u00eame nom existe d\u00e9j\u00e0. Indiquez un autre nom.
undoCommandError_msg=IUPL0113E : Impossible d''appliquer la commande d''annulation ''{0}''.\n\nUne erreur s''est produite : {1}
invalidPredecessorError_msg=IUPL0114E : L'index du pr\u00e9d\u00e9cesseur sp\u00e9cifi\u00e9 est non valide.\n\nUn index de pr\u00e9d\u00e9cesseur doit \u00eatre un entier dans la colonne 'Index'.\n\nSp\u00e9cifiez une valeur valide et r\u00e9essayez.
UserInteractionHelper_errRelationshipExists=IUPL0100W : ''{0}'' est d\u00e9j\u00e0 associ\u00e9 \u00e0 ''{1}''.  Une seule association de ce type est permise.  Pour affecter ''{0}'' \u00e0 ''{2}'', vous devez au pr\u00e9alable le supprimer de ''{1}''.
error_msgWithDetails=IUPL0116E : Une erreur s'est produite. Cliquez sur D\u00e9tails pour plus d'informations.
error_msg=IUPL0117E : Une erreur s'est produite. Affichez le journal des erreurs pour plus d'informations.
Suppression_nameDuplication=IUPL0118E : Un conflit de nom va se produire suite \u00e0 cette op\u00e9ration. >V\u00e9rifiez que le nom de l'\u00e9l\u00e9ment n'est pas en double et r\u00e9essayez
Suppression_presentationNameDuplication=IUPL0119E : Un conflit de nom va se produire suite \u00e0 cette op\u00e9ration. >V\u00e9rifiez que le nom de pr\u00e9sentation de l'\u00e9l\u00e9ment n'est pas en double et r\u00e9essayez

# Error Reasons
error_reason=Une erreur s'est produite. Cliquez sur D\u00e9tails pour plus d'informations.
saveProcessError_reason=Une erreur s''est produite lors de la sauvegarde du processus ''{0}''. Cliquez sur D\u00e9tails pour plus d''informations.
deleteReferencesError_reason=Une erreur s'est produite lors de la suppression des r\u00e9f\u00e9rences associ\u00e9es \u00e0 cet \u00e9l\u00e9ment. Cliquez sur D\u00e9tails pour plus d'informations.
saveFileError_reason=Une erreur s''est produite lors de la sauvegarde du fichier ''{0}''. Cliquez sur D\u00e9tails pour plus d''informations.
invalidReferencesError_reason=Des \u00e9l\u00e9ments de m\u00e9thode contenant des r\u00e9f\u00e9rences non valides issues de copies entre plug-in ont \u00e9t\u00e9 d\u00e9tect\u00e9s.\nCes r\u00e9f\u00e9rences seront supprim\u00e9es. Voulez-vous continuer ?
unresolvedObjectError_reason=Modification d''un objet non r\u00e9solu impossible : {0}(URI = {1}){2}

# Warning messages
MethodElementAddCommand_originalNotFoundWarning_msg=IUPL0118W : Un ou plusieurs \u00e9l\u00e9ments source sont introuvables. Les fichiers associ\u00e9s du dossier des ressources ne seront pas copi\u00e9s.
ActivityAddCommand_originalNotFoundWarning_msg=IUPL0119W : Un ou plusieurs \u00e9l\u00e9ments source sont introuvables. Les packages de processus associ\u00e9s ne seront pas copi\u00e9s.
ActivityDropCommand_deepCopy_promptConfigurationMsg=Voulez-vous copier tous les descripteurs ?\n\nSi vous cliquez sur Non, seuls les descripteurs faisant partie de la configuration en cours seront copi\u00e9s.
deepCopy_promptMsg=Vous obtiendrez une copie de tous les \u00e9l\u00e9ments li\u00e9s dynamiquement que vous devez d\u00e9sormais conserver s\u00e9par\u00e9ment. Voulez-vous continuer ?
deepCopy_title=Copie compl\u00e8te

# Progress messages
creatingProcessComponentTask_name=Cr\u00e9ation du composant de processus ''{0}''...
processingReferencesTask_name=Traitement des r\u00e9f\u00e9rences...
deletingElementsTask_name=Suppression des \u00e9l\u00e9ments et fichiers associ\u00e9s...
checkingReferencesTask_name=Recherche de r\u00e9f\u00e9rences...
removingReferencestask_name=Suppression de r\u00e9f\u00e9rences...
savingModifiedFilesTask_name=Sauvegarde du(des) fichier(s) modifi\u00e9(s)...
checkAffectedResourcesTask_name=V\u00e9rification des ressources affect\u00e9es...
movingTask_name=D\u00e9placement...
movingFilesTask_name=D\u00e9placement de fichiers...
copyingResourcesTask_name=Copie de ressources...
copyingActivities_msg=Copie de l''activit\u00e9 ''{0}''
savingFileTask_name=Sauvegarde du fichier ''{0}''...
savingResources_msg=Enregistrement des ressources
scope_defualtName=-- Aucun --
scope_PluginsName=Plug-ins s\u00e9lectionn\u00e9s

# UI Text
element_text=\u00e9l\u00e9ment
createElement_text=Cr\u00e9er un \u00e9l\u00e9ment
createProcess_text=Cr\u00e9er un processus
contributesTo_text=Contribue \u00e0
localContributesTo_text=Contribue localement \u00e0
extends_text=Etend
replaces_text=Remplace
extends_replaces_text=Extensions et remplacements
localReplaces_text=Remplace localement
localReplacementAndDeepCopy_text=Remplacement local et &copie compl\u00e8te
elementType_text={0} : {1}
deliverables_text=Livrables
contributeToActivity_text=Contribuer \u00e0 l'activit\u00e9
ActivityDropCommand_label=Supprimer l'activit\u00e9
replaceActivity_text=Remplacer l'activit\u00e9
file_text=fichier
directory_text=r\u00e9pertoire
unresolved_text=(''{0}'' non r\u00e9solu)
assists_text=Aid\u00e9 de
unknown_text=Inconnu
command_done=Termin\u00e9

# The following UI text should be reviewed.
Util_labelpath_variabilitywithplugin_info={0} ({1} ''{2}'' dans ''{3}'')
Util_labelpath_variability_info={0} ({1} ''{2}'')
ui_ref_delete=Le descripteur ''{0}'' contient les r\u00e9f\u00e9rences suivantes qui ne sont utilis\u00e9es nulle part.\nS\u00e9lectionnez celles que vous souhaitez supprimer :
ui_ref_delete2=Les r\u00e9f\u00e9rences suivantes ne sont utilis\u00e9es nulle part.\nS\u00e9lectionnez celles que vous souhaitez supprimer :
ui_references=R\u00e9f\u00e9rences
ui_workproduct_descriptor_description=Le descripteur de produit ''{0}'' est associ\u00e9 (sortie de) au descripteur de t\u00e2che ''{1}''
ui_workproductdescriptor_options=Options
ui_workproductdescriptor_outputlabel=Supprimer le descripteur de produit en tant que sortie du descripteur de t\u00e2che
ui_workproductdescriptor_delete_task=Supprimer le descripteur de t\u00e2che de l'activit\u00e9
ui_UserInteractionHelper_defaultconfigcheck=L''\u00e9l\u00e9ment s\u00e9lectionn\u00e9 ''{0}'' ne figure pas dans la configuration par d\u00e9faut de votre processus.\nSouhaitez-vous ajouter ce dernier et ses d\u00e9pendances \u00e0 la configuration par d\u00e9faut ?
ui_UserInteractionHelper_genericErr_message_text=Des erreurs se sont produites pendant l'op\u00e9ration. Cliquez sur D\u00e9tails pour plus d'informations.
ProcessAutoSynchronizeAction_noDescriptorToSynch=Aucun descripteur contenant un \u00e9l\u00e9ment de m\u00e9thode li\u00e9 n'a \u00e9t\u00e9 trouv\u00e9 en vue d'une synchronisation
util_configurablecomposedadapter_refershingviewer=Erreur d'actualisation de l'afficheur
confirm_remove_references_text=Le ou les \u00e9l\u00e9ments r\u00e9pertori\u00e9s dans D\u00e9tails sont susceptibles de comporter une r\u00e9f\u00e9rence interdite \u00e0 ce message d\u00e9cisionnel apr\u00e8s conversion. Cliquez sur OK pour les supprimer et continuer.
confirmDescriptorsDeletion_title=Confirmer la suppression des descripteurs
confirmDescriptorsDeletion_msg=Le(s) \u00e9l\u00e9ment(s) que vous \u00eates sur le point de supprimer sont toujours utilis\u00e9s par des descripteurs de la biblioth\u00e8que de m\u00e9thodes.  Cliquez sur Oui si vous souhaitez supprimer \u00e9galement ces descripteurs.  V\u00e9rifiez que vous \u00eates autoris\u00e9 \u00e0 supprimer les descripteurs avant de cliquer sur Oui.  Cliquez sur D\u00e9tails pour r\u00e9viser la liste des descripteurs qui r\u00e9f\u00e9rencent le(s) \u00e9l\u00e9ment(s) que vous \u00eates sur le point de supprimer.
util_configurablecomposedadapter_unhandled_exception=Exception non g\u00e9r\u00e9e
util_ProcessUtil_err_same_breakdown_element=Ne peut pas avoir le m\u00eame \u00e9l\u00e9ment de r\u00e9partition que le pr\u00e9d\u00e9cesseur et le successeur
ui_UserInteractionHelper_wplistdlg_msg=Le produit ''{0}'' est une sortie des t\u00e2ches suivantes.\nS\u00e9lectionnez les t\u00e2ches pour lesquelles vous souhaitez cr\u00e9er les descripteurs correspondants.
ui_UserInteractionHelper_rolelistdlg_msg=Le r\u00f4le ''{0}'' comporte les produits responsables suivants.\nS\u00e9lectionnez les produits pour lesquels vous souhaitez cr\u00e9er les descripteurs correspondants.
util_configurablecomposedadapter_fatalerr=Erreur bloquante
ui_UserInteractionHelper_workproducts=Produits de travail
util_ProcessUtil_err_same_sub_element=Impossible de relier un \u00e9l\u00e9ment de r\u00e9partition \u00e0 l'un de ses sous-\u00e9l\u00e9ments.
util_ProcessUtil_err_wrong_element=Impossible de relier \u00e0 un \u00e9l\u00e9ment autre qu'un \u00e9l\u00e9ment de r\u00e9partition du travail.
util_ProcessUtil_err_child_element=Impossible de relier un \u00e9l\u00e9ment de r\u00e9partition \u00e0 l'un de ses enfants.
ui_UserInteractionHelper_tasks=T\u00e2ches
ui_association_task_selection=S\u00e9lection des t\u00e2ches...
util_ProcessUtil_childadapter=\ \ adaptateur de l'enfant :

util_ProcessUtil_err_setparent=Impossible de d\u00e9finir un parent pour l'enfant
util_tngutil_cannot_edit_resource=Impossible de modifier la ressource.
util_ProcessUtil_contributesto=contribue \u00e0 ''{0}''
util_ProcessUtil_localContributesto=contribue localement \u00e0 ''{0}''
process_extends=\u00e9tend ''{0}''
process_replaces=remplace ''{0}''
process_localReplaces=remplace localement ''{0}''
# Filter constants externalized strings.
FilterConstants_disciplines_text=Disciplines
FilterConstants_disciplinegroupings_text=Regroupements de disciplines
FilterConstants_whitepapers_text=Livres blancs
FilterConstants_toolmentors_text=Guides d'utilisation de l'outil
FilterConstants_tools_text=Outils
FilterConstants_roles_text=R\u00f4les
FilterConstants_tasks_text=T\u00e2ches
FilterConstants_reusableassets_text=Ressources r\u00e9utilisables
FilterConstants_all_text=Le plus courant
FilterConstants_processes_text=Processus
FilterConstants_activities_text=Activit\u00e9s
FilterConstants_practices_text=Pratiques
FilterConstants_UDTs_text=UDT
FilterConstants_templates_text=Canevas
FilterConstants_workproducts_text=Produits de travail
FilterConstants_checklists_text=Listes de contr\u00f4le
FilterConstants_guidelines_text=Instructions
FilterConstants_rolesets_text=Ensembles de r\u00f4les
FilterConstants_guidance_text=Conseil
FilterConstants_concepts_text=Concepts
FilterConstants_examples_text=Exemples
FilterConstants_contentpackages_text=Packages de contenu
FilterConstants_roledescriptors_text=Descripteurs de r\u00f4le
FilterConstants_rolesetgropuings_text=Regroupements d'ensembles de r\u00f4les
FilterConstants_taskdescriptors_text=Descripteurs de t\u00e2ches
FilterConstants_contentelements_text=El\u00e9ments de contenu
ProcessAutoSynchronizeAction_prepare=Pr\u00e9paration de la synchronisation...
FilterConstants_workproductdescriptors_text=Descripteurs de produits
FilterConstants_allcontentelements_text=Tous les \u00e9l\u00e9ments de contenu
FilterConstants_supportingmaterials_text=Documents d'accompagnement
MethodElementAddCommand_errorSavingFiles=Erreur lors de la sauvegarde du(des) fichier(s)
FilterConstants_customcategories_text=Cat\u00e9gories personnalis\u00e9es
FilterConstants_workproducttypes_text=Types de produits
DeleteMethodElementCommand_warningMsg=Suppression termin\u00e9e avec avertissement
FilterConstants_methodplugins_text=Plug-in de m\u00e9thodes
UserInteractionHelper_lockedPlugin=IUPL0120E : Le plug-in ''{0}'' est verrouill\u00e9.
FilterConstants_domains_text=Domaines
FilterConstants_roadmap_text=Feuilles de route
FilterConstants_reports_text=Rapports
AutoSynchronizeCommand_label=S&ynchronisation par d\u00e9faut \u00e0 partir du contenu de m\u00e9thode
ManualSynchronizeCommand_label=Synchroni&sation personnalis\u00e9e...
SynchronizeCompleteDialog_Title=Synchronisation termin\u00e9e
AutoSynchronizeCommand_sucessful=Synchronisation termin\u00e9e avec succ\u00e8s.
selectDescriptorsToDelete_msg=Les descripteurs suivants ne sont plus utilis\u00e9s nulle part une fois que les \u00e9l\u00e9ments s\u00e9lectionn\u00e9s sont supprim\u00e9s.\nS\u00e9lectionnez les descripteurs que vous souhaitez supprimer.

CreateProcessComponentCommand_Message=Indiquez le nom et la configuration par d\u00e9faut du {0} \u00e0 cr\u00e9er.
DeliveryProcessLabel=processus de livraison
CapabilityPatternLabel=pattern de capacit\u00e9

# UserInteractionHelper
UserInteractionHelper_ProcessPackage_Name=Nom :

# MethodCreateChildCommand
newElement_text=Nouveau {0}
update_outofsynch_title=Conflit de mise \u00e0 jour
update_outofsynch_msg=Le ou les fichiers ont \u00e9t\u00e9 modifi\u00e9s sur le syst\u00e8me de fichiers. Souhaitez-vous \u00e9craser les modifications ?
duplicateFeatureValue=Impossible d''avoir 2 \u00e9l\u00e9ments sous {0}'' avec la m\u00eame valeur pour {1}''
apply_pattern_error_msg=Impossible d''appliquer l''activit\u00e9 ''{0}'' au processus ''{1}'' car il cr\u00e9erait une d\u00e9pendance en boucle.
apply_pattern_error_msg1=Impossible d''appliquer l''activit\u00e9 ''{0}'' au processus ''{1}'' car ''{0}'' a d\u00e9j\u00e0 une ou plusieurs activit\u00e9s contribu\u00e9es/remplac\u00e9es comme enfants.
activity_variability_error_msg1=L''activit\u00e9 ''{0}'' ne peut pas d\u00e9finir la variabilit\u00e9 avec l''un de ses parents directs.
activity_variability_error_msg2=L''activit\u00e9 ''{0}'' ne peut pas d\u00e9finir la variabilit\u00e9 avec ''{1}'' \u00e9tant donn\u00e9 qu''elle va g\u00e9n\u00e9rer une d\u00e9pendance en boucle.
activity_variability_error_msg3=Impossible de remplacer un processus sup\u00e9rieur par une activit\u00e9.
activity_deep_copy_variability_prompt=L'activit\u00e9 source peut avoir des contributions externes ou des remplacements.\nVoulez-vous tous les copier ?\n\nSi vous cliquez sur non, seule l'activit\u00e9 d'origine sera copi\u00e9e.
activity_variability_error_msg=L''activit\u00e9 ''{0}'' ne peut pas d\u00e9finir la variabilit\u00e9 avec ''{1}'' \u00e9tant donn\u00e9 que ''{1}'' dispose d\u00e9j\u00e0 d''une ou de plusieurs activit\u00e9s de contribution ou de remplacement comme \u00e9tant ses enfants.
variability_error_msg=L''\u00e9l\u00e9ment de variabilit\u00e9 {0}'' ne peut pas d\u00e9finir la variabilit\u00e9 avec {1}'' car elle va g\u00e9n\u00e9rer une d\u00e9pendance en boucle.
circular_dependency_error_msg=Impossible d'ex\u00e9cuter l'op\u00e9ration car elle va g\u00e9n\u00e9rer une d\u00e9pendance en boucle.

# Validation messages
variability_element_circular_loop_error_msg=D\u00e9pendance en boucle d\u00e9tect\u00e9e... 
replacing_ancestor_error_msg=Le remplacement d'une erreur anc\u00eatre est d\u00e9tect\u00e9e.
cannot_copy_or_extend_delivery_process=Impossible de copier ou d'\u00e9tendre un processus de livraison ou l'une de ses activit\u00e9s.

# Sort options
SortType_Label=Type de tri :
SortType_Manual=Manuel
SortType_Alphabetic=Alphab\u00e9tique
SortType_ReverseAlphabetic=Alphab\u00e9tique invers\u00e9
SortType_MethodType=Type d'\u00e9l\u00e9ment

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=Ajouter \u00e0 la configuration par d\u00e9faut
