#-------------------------------------------------------------------------------
# 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

# Export Microsoft Project Wizard
exportMSPWizard_title=Export nach Microsoft Projekt

# Select Export Options Wizard Page
selectExportOptionsWizardPage_title=Exportoptionen ausw\u00e4hlen
selectExportOptionsWizardPage_text=W\u00e4hlen Sie die Methodenkonfiguration und die Exportoptionen aus, die f\u00fcr den Export des ausgew\u00e4hlten Prozesses verwendet werden.
selectedProcessLabel_text=Ausgew\u00e4hlter Prozess:
configurationLabel_text=Methodenkonfiguration:
publishWebSiteCheckBox_text=Prozesswebsite ver\u00f6ffentlichen
publishConfigButton_text=Vollst\u00e4ndige Methodenkonfiguration ver\u00f6ffentlichen
publishProcessButton_text=Nur f\u00fcr den ausgew\u00e4hlten Prozess relevanten Inhalt ver\u00f6ffentlichen
exportOnlyPlannedElementsCheckBox_text=Nur die geplanten Strukturelemente exportieren

# Select Publishing Options Wizard Page
selectPublishOptionsWizardPage_title=Ver\u00f6ffentlichungsoptionen ausw\u00e4hlen
selectPublishOptionsWizardPage_text=W\u00e4hlen Sie die Ver\u00f6ffentlichungsoptionen aus, die f\u00fcr die Ver\u00f6ffentlichung der Website f\u00fcr den exportierten Prozess verwendet werden.

# Select Export Directory Wizard page
selectExportDirWizardPage_title=Projektnamen und Exportverzeichnis angeben
selectExportDirWizardPage_text=Geben Sie den Microsoft-Project-Namen und das Exportverzeichnis an.
projectNameLabel_text=Name:
dirLabel_text=Verzeichnis:
browseButton_text=Durchsuchen...

# Progress Messages
exportMSPTask_name=Ausgew\u00e4hlter Prozess wird nach Microsoft Project exportiert...

# Warning Messages
overwriteText_msg=IUPM0100W: Es ist bereits eine Microsoft-Project-Datei mit dem Namen ''{0}'' in ''{1}'' vorhanden.\n\nM\u00f6chten Sie diese Datei \u00fcberschreiben?
missingProcessContentWarning_msg=IUPM0102W: Die ver\u00f6ffentlichte Prozesswebsite enth\u00e4lt keinen Inhalt, der sich auf den exportierten Prozess bezieht.\n\nFortfahren?

# Informational Messages
completedText_msg=IUPM0103I: Der ausgew\u00e4hlte Prozess ''{0}'' wurde erfolgreich in die Microsoft-Project-XML-Datei ''{1}'' exportiert.

# Error Messages
exportMSPError_msg=IUPM0105E: Beim Exportieren des ausgew\u00e4hlten Prozesses ''{0}'' in die Microsoft-Project-Datei ''{1}'' ist ein Fehler aufgetreten.
exportMSPError_reason=Klicken Sie auf Details, um weitere Informationen zu erhalten.
exportMSPInternalError_msg=Es ist ein interner Fehler aufgetreten.
illegalArgument_msg={0} gibt einen Nullwert oder ung\u00fcltigen Wert zur\u00fcck.
