# 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=Verschieben
moveDialog_addRefPluginsWarningText=Warnung: Diese Verschiebung kann zu nicht deklarierten Plug-in-Abh\u00e4ngigkeiten f\u00fchren, wenn Sie nicht die erforderlichen Plug-in-Referenzen hinzuf\u00fcgen. Benutzern wird empfohlen, die Bibliotheksvalidierung zu verwenden, um sie nach dem Verschieben zu \u00fcberpr\u00fcfen und manuell zu korrigieren.
moveDialog_addRefPluginsWarningText1=Warnung: Diese Verschiebung f\u00fchrt m\u00f6glicherweise zu nicht deklarierten Abh\u00e4ngigkeiten, die zu Plug-in-Schleifenabh\u00e4ngigkeiten f\u00fchren w\u00fcrden, wenn vom Tool hinzugef\u00fcgt. Benutzern wird empfohlen, die Bibliotheksvalidierung zu verwenden, um sie nach dem Verschieben zu \u00fcberpr\u00fcfen und zu korrigieren.  
moveDialog_addRefPluginsText=Die folgenden Plug-in-Referenzen k\u00f6nnen ohne Verursachen von Schleifenabh\u00e4ngigkeiten hinzugef\u00fcgt werden. Klicken Sie auf "Ja", um fortzufahren. Klicken Sie auf "Nein", um ohne Hinzuf\u00fcgung fortzufahren. Klicken Sie auf "Abbrechen", um die Verschiebung abzubrechen.\n\nPlug-in-Referenzen zum Hinzuf\u00fcgen f\u00fcr
deleteDialog_title=Element l\u00f6schen
errorDialog_title=Fehler
errorDialog_cannotRename={0} ''{1}'' kann nicht in ''{2}'' umbenannt werden. Beheben Sie das in den Details beschriebene Problem, und klicken Sie anschlie\u00dfend auf OK, um die Operation fortzusetzen, oder auf Abbrechen, um die Operation abzubrechen.

# Confirm References Removal Dialog
deleteReferencesDialog_title=Entfernen der Referenzen best\u00e4tigen
deleteReferencesDialog_text=Auf die Elemente, die Sie zum L\u00f6schen ausgew\u00e4hlt haben, verweisen noch andere Elemente in der Methodenbibliothek. Wenn Sie diese Elemente l\u00f6schen, werden die Referenzen auf diese Elemente gel\u00f6scht. Deshalb werden die referenzierenden Elemente ebenfalls aktualisiert. Vergewissern Sie sich vor dem Anklicken von OK, dass Sie berechtigt sind, die referenzierenden Elemente zu aktualisieren. Klicken Sie auf Details, um die Liste der Elemente zu pr\u00fcfen, die auf die Elemente verweisen, die Sie l\u00f6schen m\u00f6chten.

# Resolve Name Conflict Dialog
resolveNameConflictDialog_title=Konflikt bei Elementnamen beheben
resolveNameConflictDialog_text={0} (neu) f\u00fcr ''{1}'' eingeben:

# Select Deliverables Dialog
selectDeliverablesDialog_title=Liefergegenst\u00e4nde ausw\u00e4hlen
selectDeliverablesDialog_text=W\u00e4hlen Sie einen Liefergegenstand aus, dem Sie das Arbeitsergebnis ''{0}'' zuordnen m\u00f6chten.

# New Process Component Dialog
newProcessComponentDialog_title=Neue Prozesskomponente
nameLabel_text=Name:
defaultConfigLabel_text=Standardkonfiguration:
baseProcessLabel_text=Basisprozess:
basedOnProcessesLabel_text=Basiert auf Prozessen:
SpecifyNameText=Geben Sie einen g\u00fcltigen Namen an.

# Role Association Dialog
selectAssociationLabel_text=Zuordnung f\u00fcr die Aufgabe ''{0}'' ausw\u00e4hlen

# Remove Association dialog
removeAssociationDialog_text=Zuordnung entfernen

# Select Teams Dialog
selectTeamsDialog_title=Teams ausw\u00e4hlen
selectTeamsDialog_text=W\u00e4hlen Sie ein Team aus, dem Sie eine Rolle ''{0}'' zuordnen m\u00f6chten.

# Task Selection Dialog
taskSelectionDialog_title=Aufgabenauswahl
titleLabel_text=Aufgaben ausw\u00e4hlen...

# Error Messages
emptyElementNameError_msg=IUPL0100E: Der Name f\u00fcr {0} fehlt.\nAlle Methoden- und Prozesselemente m\u00fcssen einen Namen haben.\nGeben Sie einen g\u00fcltigen Namen ein, und wiederholen Sie den Vorgang.
emptyElementNameError_simple_msg=Der Name muss angegeben werden. Geben Sie einen g\u00fcltigen Namen an.
duplicateElementNameError_msg=IUPL0101E: Der Name ''{0}'' ist bereits vorhanden.\nEin Methodenelement muss einen eindeutigen Namen haben.\nGeben Sie einen anderen Namen ein, und wiederholen Sie den Vorgang.
duplicateElementNameError_msg2=Geben Sie einen anderen Namen ein, und wiederholen Sie den Vorgang.
duplicateElementNameError_simple_msg=Der Name ist bereits vorhanden. Geben Sie einen anderen Namen an.
invalidElementNameError1_msg=IUPL0102E: Der Name ''{0}'' ist ung\u00fcltig.\nDer Name eines Methodenelements darf nicht mit einem Leerzeichen beginnen.\nGeben Sie einen g\u00fcltigen Namen ein, und wiederholen Sie den Vorgang.
invalidElementNameError2_msg=IUPL0103E: Der Name ''{0}'' ist ung\u00fcltig.\nDer Name eines Methodenelements darf nicht mit einem Punkt enden.\nGeben Sie einen g\u00fcltigen Namen ein, und wiederholen Sie den Vorgang.
invalidElementNameError3_msg=IUPL0104E: Der Name ''{0}'' ist ung\u00fcltig.\nDie folgenden Zeichen sind in Namen von Methodenelementen nicht zul\u00e4ssig: \\ / : * ? " < > ; | [ ] #\nGeben Sie einen g\u00fcltigen Namen ein, und wiederholen Sie den Vorgang.
invalidElementNameError4_msg=IUPL0105E: Der Name ''{0}'' ist ung\u00fcltig.\nDas folgende Zeichen ist in Namen von Methodenelementen nicht zul\u00e4ssig: &\nGeben Sie einen g\u00fcltigen Namen ein, und wiederholen Sie den Vorgang.
invalidPluginNameError_msg=IUPL0121E: Der Name ''{0}'' ist ung\u00fcltig.\nDie folgenden Zeichen sind in Namen von Methoden-Plug-ins nicht zul\u00e4ssig: \\ / : * ? " < > ; | # % ''\nGeben Sie einen g\u00fcltigen Namen ein, und wiederholen Sie den Vorgang.
filePathNameTooLong_msg=Der Dateipfadname ist zu lang (l\u00e4nger als ''{0}'' Zeichen). 
noConfigError_msg=Die aktuelle Methodenbibliothek enth\u00e4lt keine Methodenkonfiguration.\nZum Erstellen eines neuen Prozesses ist eine Methodenkonfiguration erforderlich.\nErstellen Sie eine Methodenkonfiguration, und wiederholen Sie den Vorgang.
noDeliveryProcessError_msg=IUPL0106E: Die aktuelle Methodenbibliothek enth\u00e4lt keine Bereitstellungsprozesse.\nZum Erstellen eines neuen Prozessbeitrags ist ein Basisbereitstellungsprozess erforderlich.\nErstellen Sie einen Bereitstellungsprozess, und wiederholen Sie den Vorgang.
noDefaultConfigError_msg=IUPL0107E: Es wurde keine Methodenkonfiguration ausgew\u00e4hlt.\nDem neuen Prozess muss eine Standardmethodenkonfiguration zugeordnet werden.\nW\u00e4hlen Sie eine Methodenkonfiguration aus, und wiederholen Sie den Vorgang.
noBaseProcessError_msg=IUPL0108E: Es wurde kein Bereitstellungsprozess ausgew\u00e4hlt.\nEin Prozessbeitrag setzt einen Basisbereitstellungsprozess voraus.\nW\u00e4hlen Sie einen Bereitstellungsprozess aus, und wiederholen Sie den Vorgang.
createProcessError_msg=IUPL0109E: Der Prozess kann nicht fehlerfrei erstellt werden.
createElementError_msg=IUPL0110E: Das Element kann nicht fehlerfrei erstellt werden.
deleteElementError_msg=IUPL0111E: Das Element kann nicht fehlerfrei gel\u00f6scht werden.
duplicateContentFileError_msg=IUPL0112E: Die Inhaltsdatei f\u00fcr das Element kann nicht erstellt oder nicht dem Elementnamen entsprechend umbenannt werden.\n\nDie Datei ''{0}'' ist bereits vorhanden.\n\nGeben Sie einen anderen Namen ein, und wiederholen Sie den Vorgang.
duplicateContentFileError_simple_msg=Es ist bereits eine Inhaltsdatei mit diesem Namen vorhanden. Geben Sie einen anderen Namen an.
undoCommandError_msg=IUPL0113E: Der Widerrufbefehl ''{0}'' kann nicht ausgef\u00fchrt werden.\n\nEs ist ein Fehler aufgetreten: {1}
invalidPredecessorError_msg=IUPL0114E: Der angegebene Vorg\u00e4ngerindex ist ung\u00fcltig.\n\nEin Vorg\u00e4ngerindex muss ein ganzzahliger Wert aus der Spalte 'Index' sein.\n\nGeben Sie einen g\u00fcltigen Wert ein, und wiederholen Sie den Vorgang.
UserInteractionHelper_errRelationshipExists=IUPL0100W: ''{0}'' ist bereits ''{1}'' zugeordnet. Es ist nur eine Zuordnung dieser Art zul\u00e4ssig. Wenn Sie ''{0}'' ''{2}'' zuordnen m\u00f6chten, m\u00fcssen Sie das Element erst aus ''{1}'' entfernen.
error_msgWithDetails=IUPL0116E: Es ist ein Fehler aufgetreten. Klicken Sie auf Details, um weitere Informationen zu erhalten.
error_msg=IUPL0117E: Es ist ein Fehler aufgetreten. Suchen Sie in der Protokolldatei nach weiteren Einzelheiten.
Suppression_nameDuplication=IUPL0118E: Nach dieser Operation tritt eine Namensunvertr\u00e4glichkeit auf. \u00dcberpr\u00fcfen Sie, ob der Elementname bereits vorhanden ist, und wiederholen Sie dann die Operation.
Suppression_presentationNameDuplication=IUPL0119E: Nach dieser Operation tritt eine Namensunvertr\u00e4glichkeit auf. \u00dcberpr\u00fcfen Sie, ob der Pr\u00e4sentationsname des Elements bereits vorhanden ist, und wiederholen Sie dann die Operation.

# Error Reasons
error_reason=Es ist ein Fehler aufgetreten. Klicken Sie auf Details, um weitere Informationen zu erhalten.
saveProcessError_reason=Beim Speichern des Prozesses ''{0}'' ist ein Fehler aufgetreten. Klicken Sie auf Details, um weitere Informationen zu erhalten.
deleteReferencesError_reason=Beim Entfernen der Referenzen, die diesem Element zugeordnet sind, ist ein Fehler aufgetreten. Klicken Sie auf Details, um weitere Informationen zu erhalten.
saveFileError_reason=Beim Speichern der Datei ''{0}'' ist ein Fehler aufgetreten. Klicken Sie auf Details, um weitere Informationen zu erhalten.
invalidReferencesError_reason=Es wurden Methodenelemente mit ung\u00fcltigen Referenzen gefunden, die auf eine Plug-in-\u00fcbergreifende Kopieroperation zur\u00fcckzuf\u00fchren sind.\nDiese Referenzen werden entfernt. Fortfahren?
unresolvedObjectError_reason=Ein nicht aufgel\u00f6stes Objekt kann nicht ge\u00e4ndert werden: {0}(URI = {1}){2}

# Warning messages
MethodElementAddCommand_originalNotFoundWarning_msg=IUPL0118W: Mindestens ein Quellenelement wurde nicht gefunden. Die zugeordneten Dateien im Ressourcenordner werden nicht kopiert.
ActivityAddCommand_originalNotFoundWarning_msg=IUPL0119W: Mindestens ein Quellenelement wurde nicht gefunden. Die zugeordneten Prozesspakete werden nicht kopiert.
ActivityDropCommand_deepCopy_promptConfigurationMsg=M\u00f6chten Sie alle Deskriptoren kopieren?\n\nWenn Sie auf Nein klicken, werden nur die Deskriptoren kopiert, die zur aktuellen Konfiguration geh\u00f6ren.
deepCopy_promptMsg=Sie erhalten eine Kopie aller dynamisch verkn\u00fcpften Elemente, die Sie ab sofort separat verwalten m\u00fcssen. Fortfahren?
deepCopy_title=Tiefe Kopie

# Progress messages
creatingProcessComponentTask_name=Prozesskomponente ''{0}'' wird erstellt...
processingReferencesTask_name=Referenzen werden verarbeitet...
deletingElementsTask_name=Elemente und zugeordnete Dateien werden gel\u00f6scht...
checkingReferencesTask_name=Referenzen werden gesucht...
removingReferencestask_name=Referenzen werden entfernt...
savingModifiedFilesTask_name=Ge\u00e4nderte Dateien werden gespeichert...
checkAffectedResourcesTask_name=Betroffene Ressourcen werden gepr\u00fcft...
movingTask_name=Verschieben...
movingFilesTask_name=Dateien werden verschoben...
copyingResourcesTask_name=Ressourcen werden kopiert...
copyingActivities_msg=Aktivit\u00e4t ''{0}'' wird kopiert
savingFileTask_name=Datei ''{0}'' wird gespeichert...
savingResources_msg=Ressourcen werden gespeichert
scope_defualtName=-- Ohne --
scope_PluginsName=Ausgew\u00e4hlte Plug-ins

# UI Text
element_text=Element
createElement_text=Element erstellen
createProcess_text=Prozess erstellen
contributesTo_text=Beitrag zu
localContributesTo_text=Lokaler Beitrag zu
extends_text=Erweiterung
replaces_text=Ersetzung
extends_replaces_text=Erweiterung und Ersetzung
localReplaces_text=Lokale Ersetzung f\u00fcr
localReplacementAndDeepCopy_text=Lokale Ersetzung und tiefe Kop&ie
elementType_text={0}: {1}
deliverables_text=Liefergegenst\u00e4nde
contributeToActivity_text=Beitrag zu Aktivit\u00e4t
ActivityDropCommand_label=Aktivit\u00e4t l\u00f6schen
replaceActivity_text=Aktivit\u00e4t ersetzen
file_text=Datei
directory_text=Verzeichnis
unresolved_text=(''{0}'' nicht aufgel\u00f6st)
assists_text=Unterst\u00fctzt von
unknown_text=Unbekannt
command_done=Fertig

# 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=Der Deskriptor ''{0}'' hat die folgenden Referenzen, die nicht verwendet werden.\nW\u00e4hlen Sie die Referenzen aus, die Sie l\u00f6schen m\u00f6chten:
ui_ref_delete2=Die folgenden Referenzen werden nicht verwendet.\nW\u00e4hlen Sie die Referenzen aus, die Sie l\u00f6schen m\u00f6chten:
ui_references=Referenzen
ui_workproduct_descriptor_description=Der Arbeitsergebnisdeskriptor ''{0}'' ist (der Ausgabe von) Aufgabendeskriptor ''{1}'' zugeordnet.
ui_workproductdescriptor_options=Optionen
ui_workproductdescriptor_outputlabel=Arbeitsergebnisdeskriptor als Ausgabe des Aufgabendeskriptors entfernen
ui_workproductdescriptor_delete_task=Aufgabendeskriptor aus Aktivit\u00e4t l\u00f6schen
ui_UserInteractionHelper_defaultconfigcheck=Das ausgew\u00e4hlte Element ''{0}'' ist nicht in der Standardkonfiguration des Prozesses enthalten.\nM\u00f6chten Sie das Element und die Abh\u00e4ngigkeiten der Standardkonfiguration hinzuf\u00fcgen?
ui_UserInteractionHelper_genericErr_message_text=Es sind Fehler in der Operation aufgetreten. Klicken Sie auf Details, um weitere Informationen zu erhalten.
ProcessAutoSynchronizeAction_noDescriptorToSynch=Es wurde kein Deskriptor mit dem verlinkten Methodenelement gefunden, der synchronisiert werden k\u00f6nnte.
util_configurablecomposedadapter_refershingviewer=Fehler beim Aktualisieren des Viewer
confirm_remove_references_text=Die unter Details aufgef\u00fchrten Elemente enthalten nach der Konvertierung m\u00f6glicherweise ung\u00fcltige Referenzen auf diese Anleitung. Klicken Sie auf OK, wenn Sie sie l\u00f6schen und fortfahren m\u00f6chten.
confirmDescriptorsDeletion_title=L\u00f6schen von Deskriptoren best\u00e4tigen
confirmDescriptorsDeletion_msg=Auf die Elemente, die Sie zum L\u00f6schen ausgew\u00e4hlt haben, verweisen noch Deskriptoren in der Methodenbibliothek. Klicken Sie auf Ja, wenn Sie diese Deskriptoren ebenfalls l\u00f6schen m\u00f6chten. Vergewissern Sie sich vor dem Anklicken von Ja, dass Sie berechtigt sind, die Deskriptoren zu l\u00f6schen. Klicken Sie auf Details, um die Liste der Deskriptoren zu pr\u00fcfen, die die Elemente referenzieren, die Sie l\u00f6schen m\u00f6chten.
util_configurablecomposedadapter_unhandled_exception=Nicht behandelte Ausnahme
util_ProcessUtil_err_same_breakdown_element=Ein Strukturelement kann nicht gleichzeitig Vorg\u00e4nger und Nachfolger sein.
ui_UserInteractionHelper_wplistdlg_msg=Das Arbeitsergebnis ''{0}'' ist eine Ausgabe f\u00fcr die folgenden Aufgaben.\nW\u00e4hlen Sie die Aufgaben aus, f\u00fcr die Sie die entsprechenden Deskriptoren erstellen m\u00f6chten.
ui_UserInteractionHelper_rolelistdlg_msg=Die Rolle ''{0}'' ist f\u00fcr die folgenden Arbeitsergebnisse verantwortlich.\nW\u00e4hlen Sie die Arbeitsergebnisse aus, f\u00fcr die Sie die entsprechenden Deskriptoren erstellen m\u00f6chten.
util_configurablecomposedadapter_fatalerr=Schwerwiegender Fehler
ui_UserInteractionHelper_workproducts=Arbeitsergebnisse
util_ProcessUtil_err_same_sub_element=Ein Strukturelement kann nicht mit einem seiner Unterelemente verlinkt werden.
util_ProcessUtil_err_wrong_element=Verlinken ist nur mit einem Projektstrukturelement m\u00f6glich.
util_ProcessUtil_err_child_element=Ein Strukturelement kann nicht mit einem seiner Unterelemente verlinkt werden.
ui_UserInteractionHelper_tasks=Aufgaben
ui_association_task_selection=Aufgabenauswahl...
util_ProcessUtil_childadapter=\ \ untergeordneter Adapter: 
util_ProcessUtil_err_setparent=\u00dcbergeordneter Eintrag f\u00fcr Eintrag konnte nicht gesetzt werden.
util_tngutil_cannot_edit_resource=Ressource kann nicht bearbeitet werden.
util_ProcessUtil_contributesto=ist ein Beitrag zu ''{0}''
util_ProcessUtil_localContributesto=Lokaler Beitrag f\u00fcr ''{0}''
process_extends=Erweiterung f\u00fcr ''{0}''
process_replaces=ersetzt ''{0}''
process_localReplaces=Lokale Ersetzung f\u00fcr ''{0}''
# Filter constants externalized strings.
FilterConstants_disciplines_text=Disziplinen
FilterConstants_disciplinegroupings_text=Disziplingruppierungen
FilterConstants_whitepapers_text=White Paper
FilterConstants_toolmentors_text=Toolmentoren
FilterConstants_tools_text=Tools
FilterConstants_roles_text=Rollen
FilterConstants_tasks_text=Aufgaben
FilterConstants_reusableassets_text=Wiederverwendbare Assets
FilterConstants_all_text=Aktuell
FilterConstants_processes_text=Prozesse
FilterConstants_activities_text=Aktivit\u00e4ten
FilterConstants_practices_text=Verfahren
FilterConstants_templates_text=Vorlagen
FilterConstants_workproducts_text=Arbeitsergebnisse
FilterConstants_checklists_text=Pr\u00fcflisten
FilterConstants_guidelines_text=Richtlinien
FilterConstants_rolesets_text=Rollengruppen
FilterConstants_guidance_text=Anleitung
FilterConstants_concepts_text=Konzepte
FilterConstants_examples_text=Beispiele
FilterConstants_contentpackages_text=Inhaltspakete
FilterConstants_roledescriptors_text=Rollendeskriptoren
FilterConstants_rolesetgropuings_text=Zusammenfassungen von Rollengruppen
FilterConstants_taskdescriptors_text=Aufgabendeskriptoren
FilterConstants_contentelements_text=Inhaltselemente
ProcessAutoSynchronizeAction_prepare=Synchronisation wird vorbereitet...
FilterConstants_workproductdescriptors_text=Arbeitsergebnisdeskriptoren
FilterConstants_allcontentelements_text=Alle Inhaltselemente
FilterConstants_supportingmaterials_text=Unterst\u00fctzendes Material
MethodElementAddCommand_errorSavingFiles=Fehler beim Speichern der Datei(en)
FilterConstants_customcategories_text=Angepasste Kategorien
FilterConstants_workproducttypes_text=Arten von Arbeitsergebnissen
DeleteMethodElementCommand_warningMsg=L\u00f6schvorgang mit Warnung abgeschlossen
FilterConstants_methodplugins_text=Methoden-Plug-ins
UserInteractionHelper_lockedPlugin=IUPL0120E: Das Plug-in ''{0}'' ist gesperrt.
FilterConstants_domains_text=Dom\u00e4nen
FilterConstants_roadmap_text=Roadmaps
FilterConstants_reports_text=Berichte
AutoSynchronizeCommand_label=&Standardsynchronisation aus Methodeninhalt
ManualSynchronizeCommand_label=Angepasste Synchron&isation...
SynchronizeCompleteDialog_Title=Synchronisation abgeschlossen
AutoSynchronizeCommand_sucessful=Die Synchronisation wurde fehlerfrei durchgef\u00fchrt.
selectDescriptorsToDelete_msg=Die folgenden Deskriptoren werden nach dem L\u00f6schen der ausgew\u00e4hlten Elemente nirgendwo mehr verwendet.\nW\u00e4hlen Sie die zu l\u00f6schenden Deskriptoren aus.

CreateProcessComponentCommand_Message=Geben Sie den Namen und die Standardkonfiguration f\u00fcr die Erstellung von {0} an.
DeliveryProcessLabel=Bereitstellungsprozess
CapabilityPatternLabel=Prozessmuster

# UserInteractionHelper
UserInteractionHelper_ProcessPackage_Name=Name:

# MethodCreateChildCommand
newElement_text={0} - Neu
update_outofsynch_title=Aktualisierungskonflikt
update_outofsynch_msg=Die Datei(en) wurde(n) im Dateisystem ge\u00e4ndert. M\u00f6chten Sie die \u00c4nderungen speichern?
duplicateFeatureValue=Es ist nicht zul\u00e4ssig, 2 Elemente unter ''{0}'' zu definieren, die denselben Wert f\u00fcr ''{1}'' haben.
apply_pattern_error_msg=Die Aktivit\u00e4t ''{0}'' kann nicht auf den Prozess ''{1}'' angewendet werden, das dies zu einer Schleifenabh\u00e4ngigkeit f\u00fchren w\u00fcrde.
apply_pattern_error_msg1=Die Aktivit\u00e4t ''{0}'' kann nicht auf den Prozess ''{1}'' angewendet werden, das ''{0}'' bereits eine oder mehrere zus\u00e4tzliche oder ersetzte Aktivit\u00e4ten als untergeordnete Elemente enth\u00e4lt.
activity_variability_error_msg1=Die Aktivit\u00e4t ''{0}'' kann keine Variabilit\u00e4t mit einer ihrer direkten \u00fcbergeordneten Elemente setzen.
activity_variability_error_msg2=Die Aktivit\u00e4t ''{0}'' kann keine Variabilit\u00e4t mit ''{1}'' setzen, da dies zu einer Schleifenabh\u00e4ngigkeit f\u00fchren w\u00fcrde.
activity_variability_error_msg3=Ein Ausgangsprozess kann nicht durch eine Aktivit\u00e4t ersetzt werden.
activity_deep_copy_variability_prompt=Die Quellenaktivit\u00e4t hat m\u00f6glicherweise externe Beitr\u00e4ge oder Ersetzungen.\nM\u00f6chten Sie diese ebenfalls kopieren?\n\nWenn Sie auf 'Nein' klicken, wird nur die urspr\u00fcngliche Aktivit\u00e4t kopiert.
activity_variability_error_msg=Die Aktivit\u00e4t ''{0}'' kann keine Variabilit\u00e4t mit ''{1}'' setzen, da ''{1}'' bereits eine oder mehrere zus\u00e4tzliche oder ersetzte Aktivit\u00e4ten als untergeordnete Elemente enth\u00e4lt.
variability_error_msg=Das Variabilit\u00e4tselement ''{0}'' kann keine Variabilit\u00e4t mit ''{1}'' setzen, da dies zu einer Schleifenabh\u00e4ngigkeit f\u00fchren w\u00fcrde.
circular_dependency_error_msg=Die Operation kann nicht durchgef\u00fchrt werden, weil sie zu einer Schleifenabh\u00e4ngigkeit f\u00fchren w\u00fcrde.

# Validation messages
variability_element_circular_loop_error_msg=Es wurde eine Schleifenabh\u00e4ngigkeit gefunden...
replacing_ancestor_error_msg=Bei dem Versuch, einen Vorg\u00e4nger zu ersetzen, wurde ein Fehler gefunden.
cannot_copy_or_extend_delivery_process=Ein Bereitstellungsprozess oder eine seiner Aktivit\u00e4ten kann nicht kopiert oder erweitert werden.

# Sort options
SortType_Label=Sortierungstyp:
SortType_Manual=Manuell
SortType_Alphabetic=Alphabetisch
SortType_ReverseAlphabetic=Alphabetisch in umgekehrter Reihenfolge
SortType_MethodType=Elementtyp

WorkOrderTypeAbbreviation_FINISH_TO_START=EA
WorkOrderTypeAbbreviation_FINISH_TO_FINISH=EE
WorkOrderTypeAbbreviation_START_TO_FINISH=AE
WorkOrderTypeAbbreviation_START_TO_START=AA
add_to_default_config_dlg_title=Zur Standardkonfiguration hinzuf\u00fcgen
