Exemplarische Vorgehensweise: Vornehmen von grundlegenden benutzerdefinierten Anpassungen für einen Arbeitsaufgabentyp
Aktualisiert: November 2007
In dieser exemplarischen Vorgehensweise nehmen Sie gängige benutzerdefinierte Anpassungen für einen vorhandenen Arbeitsaufgabentyp vor. Außerdem erhalten Sie Informationen zu den Tools für die Anpassung von Arbeitsaufgabentypen und die XML-Sprache, auf der diese basieren.
Diese Anpassungen werden in den folgenden Verfahren veranschaulicht:
Erstellen eines Teamprojekts In diesem Verfahren erstellen Sie ein Teamprojekt, das die Arbeitsaufgabentypen enthält, die Sie in den nachfolgenden Verfahren verwenden.
Anzeigen eines Arbeitsaufgabentyps In diesem Verfahren zeigen Sie das Formular eines vorhandenen Arbeitsaufgabentyps an.
Exportieren eines Arbeitsaufgabentyps In diesem Verfahren exportieren Sie die Definition des Arbeitsaufgabentyps in eine XML-Datei.
Umbenennen eines Arbeitsaufgabentyps In diesem Verfahren ändern Sie die XML-Datei mit der Definition des Arbeitsaufgabentyps, um den Namen des Arbeitsaufgabentyps von Aufgabe in Spezielle Aufgabe zu ändern.
Importieren von Änderungen In diesem Verfahren importieren Sie den im vorangehenden Verfahren geänderten Arbeitsaufgabentyp in Team Foundation Server.
Hinzufügen eines Felds In diesem Verfahren fügen Sie einem vorhandenen Arbeitsaufgabentyp das neue Feld Category hinzu.
Hinzufügen von Regeln zu einem Feld In diesem Verfahren fügen Sie eine Regel hinzu, durch die das neue Feld Category zu einem Pflichtfeld wird.
Erstellen einer Auswahlliste In diesem Verfahren fügen Sie dem Feld Category eine Liste zulässiger Werte hinzu. Die neuen Werte werden als Auswahlmöglichkeiten in einer Arbeitsaufgabe angezeigt, die aus diesem Arbeitsaufgabentyp erstellt wird.
Ändern des Arbeitsablaufs In diesem Verfahren fügen Sie dem Arbeitsaufgabentyp neue Zustände und Übergänge hinzu.
Ändern des Formularlayouts In diesem Verfahren ändern Sie die Positionierung der Felder im Arbeitsaufgabenformular.
Vorbereitungsmaßnahmen
Wenn Sie diese exemplarischen Vorgehensweisen ausführen möchten, benötigen Sie Folgendes:
Eine Kopie von Visual Studio Team System oder Visual Studio mit Team Explorer und eine Verbindung zum Team Foundation Server. Weitere Informationen finden Sie unter Gewusst wie: Herstellen einer Verbindung mit Team Foundation Server.
Wenn Sie eine Verbindung mit einem Team Foundation Server herstellen können und über die entsprechenden Berechtigungen verfügen, können Sie grundlegende benutzerdefinierte Anpassungen für einen Arbeitsaufgabentyp an einer Eingabeaufforderung, in einer Batchdatei oder einer Skriptdatei ausführen. Hierzu müssen Sie entweder das Dienstprogramm Visual Studio 2008-Eingabeaufforderung verwenden oder an der aktuellen Eingabeaufforderung mithilfe von vsvars32 verschiedene Umgebungsvariablen festlegen, wie im folgenden Beispiel beschrieben. Weitere Informationen über das Beitreten zu einem Teamprojekt finden Sie unter Exemplarische Vorgehensweise: Herstellen einer Verknüpfung mit einem Teamprojekt.
So aktivieren Sie Team Foundation-Befehle an einer Eingabeaufforderung
- Klicken Sie auf Start, zeigen Sie auf Alle Programme, auf Microsoft Visual Studio 2008 und auf Visual Studio-Tools, und klicken Sie anschließend auf Visual Studio 2008-Eingabeaufforderung.
Stattdessen können Sie auch vsvars32 im Visual Studio-Installationspfad ausführen. Dieser lautet i. d. R. DriveLetter:\Programme\Microsoft Visual Studio 9.0\Common7\Tools.
Erforderliche Berechtigungen
Damit Sie diese Schritte ausführen können, müssen Sie Mitglied der Gruppe Team Foundation-Administratoren oder Mitglied der Gruppe Projektadministratoren für das Projekt sein. Weitere Informationen finden Sie unter Team Foundation Server-Berechtigungen.
Erstellen eines Teamprojekts
So erstellen Sie ein Teamprojekt
Starten Sie Visual Studio.
Öffnen Sie Team Explorer, indem Sie auf Ansicht und anschließend auf Team Explorer klicken.
Klicken Sie in Team Explorer mit der rechten Maustaste auf den Namen für den Team Foundation Server, mit dem Sie eine Verbindung hergestellt haben, und klicken Sie auf Neues Teamprojekt.
Geben Sie im Dialogfeld Neues Teamprojekt auf <Name des Team Foundation-Servers> unter Wie lautet der Name des Teamprojekts? den Namen WITLab ein, und klicken Sie auf Weiter.
Klicken Sie auf der Seite Prozessvorlage auswählen unter Zum Erstellen des Teamprojekts verwendete Prozessvorlage auf MSF for Agile Software Development - <Versionsnummer> und dann auf Fertig stellen.
Das Erstellen des Teamprojekts erfordert möglicherweise mehrere Minuten.
Deaktivieren Sie, nachdem die Seite Das Teamprojekt wurde erstellt angezeigt wird, das Kontrollkästchen Prozessleitfaden starten, und klicken Sie auf Schließen.
Das neue Teamprojekt "WITLab" wird erstellt und in einem Knoten unter dem Team Foundation Server in Team Explorer angezeigt.
Anzeigen eines Arbeitsaufgabentyps
Voraussetzung: Sie haben das Verfahren Erstellen eines Teamprojekts abgeschlossen. Das Teamprojekt "WITLab" ist verfügbar.
So zeigen Sie einen Arbeitsaufgabentyp an
Starten Sie Visual Studio, und öffnen Sie Team Explorer.
Erweitern Sie in Team Explorer das Teamprojekt "WITLab", und warten Sie einige Augenblicke, bis die Ordner geladen werden.
Klicken Sie im Teamprojekt mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Aufgabe.
Ein Formular wird angezeigt, das die neue Arbeitsaufgabe Aufgabe darstellt. Einige Felder enthalten Standardwerte. In dieser exemplarischen Vorgehensweise passen Sie die den Arbeitsaufgabentyp Aufgabe an, aus dem diese Arbeitsaufgabe erstellt wurde.
Exportieren eines Arbeitsaufgabentyps
Voraussetzung: Sie haben das Verfahren Erstellen eines Teamprojekts abgeschlossen. Das Teamprojekt "WITLab" ist verfügbar.
So exportieren Sie einen Arbeitsaufgabentyp
Öffnen Sie eine Visual Studio-Eingabeaufforderung.
Geben Sie an der Eingabeaufforderung Folgendes ein, und drücken Sie danach die EINGABETASTE:
witexport /f "Dateipfad\task.xml" /t "-Team Foundation Server-Name**" /p WITLab /n Task**
Dadurch wird der Arbeitsaufgabentyp Aufgabe von Team Foundation Server in eine XML-Datei exportiert. Nach Abschluss des Exportvorgangs wird Folgendes angezeigt:
Work item type export complete.
(Optional) Wenn Sie die XML-Definition des Arbeitsaufgabentyps Aufgabe anzeigen möchten, geben Sie an der Eingabeaufforderung task.xml ein, und drücken Sie die EINGABETASTE.
Umbenennen des Arbeitsaufgabentyps
Voraussetzung: Sie haben den Vorgang Exportieren eines Arbeitsaufgabentyps abgeschlossen.
So benennen Sie den Arbeitsaufgabentyp um
Klicken Sie in Visual Studio auf Datei, und klicken Sie dann auf Datei öffnen.
Dadurch wird das Dialogfeld Datei öffnen angezeigt.
Navigieren Sie unter Suchen in zu dem Verzeichnis, in das Sie die Datei exportiert haben.
Wenn Sie einen Arbeitsaufgabentyp ändern, um eine Prozessvorlage anzupassen, navigieren Sie zu dem Speicherort, an den Sie die Prozessvorlage heruntergeladen haben.
Hinweis: Unter Windows Vista haben Sie möglicherweise keine Zugriffsrechte für bestimmte Ordner. Wenn Sie versuchen, den Arbeitsaufgabentyp an einen Speicherort zu exportieren, für den Sie keine Zugriffsrechte besitzen, wird die exportierte Datei durch die Technologie zur Registrierungsvirtualisierung automatisch umgeleitet und in einem virtuellen Speicher gespeichert. Weitere Informationen finden Sie unter https://go.microsoft.com/fwlink/?LinkId=92325 und unter https://go.microsoft.com/fwlink/?LinkId=92323. Um diese Umleitung zu vermeiden, können Sie die Datei an einen Speicherort exportieren, für den Sie über Zugriffsrechte verfügen.
Klicken Sie auf die Datei task.xml und dann auf Öffnen. Klicken Sie in der Eingabeaufforderung für Zeilenenden auf Nein.
Dadurch wird die Datei task.xml geöffnet. Dabei handelt es sich um die XML-Datei, die die Definition für den Arbeitsaufgabentyp Aufgabe enthält.
Suchen Sie das folgende Element in der XML-Datei.
<WORKITEMTYPE name="Task">
Ändern Sie den Wert des Namensattributs in Spezielle Aufgabe.
<WORKITEMTYPE name="Special Task">
Speichern Sie die Änderungen in einer neuen XML-Datei. Klicken Sie dazu in Visual Studio im Menü Datei auf task.xml speichern unter.
Das Dialogfeld Datei speichern unter wird angezeigt.
Geben Sie specialtask.xml als Dateiname ein, und klicken Sie auf Speichern.
Importieren von Änderungen
Voraussetzung: Sie haben das Verfahren Umbenennen des Aufgabentyps abgeschlossen.
So importieren Sie Änderungen
Öffnen Sie eine Visual Studio-Eingabeaufforderung.
Importieren Sie den geänderten Arbeitsaufgabentyp in Team Foundation Server. Geben Sie hierfür an der Visual Studio-Eingabeaufforderung Folgendes ein, und drücken Sie die EINGABETASTE:
witimport /f "Dateipfad\specialtask.xml" /t "Team Foundation Server-Name" /p WITLab
Hiermit wird der Arbeitsaufgabentyp specialtask in Team Foundation Server importiert. Nach Abschluss des Importvorgangs wird Folgendes angezeigt:
Work item type import complete.
Wählen Sie Ihr Teamprojekt aus, und klicken Sie im Menü Ansicht auf Aktualisieren, um die neuesten Aktualisierungen vom Server herunterzuladen.
Diese Aktualisierungen enthalten die soeben importierten Änderungen. Warten Sie einige Sekunden, bis alle Knoten geladen wurden. Auf Knoten, auf denen noch ein Ladevorgang ausgeführt wird, wird In Arbeit angezeigt.
Erstellen Sie eine neue Arbeitsaufgabe vom Typ Spezielle Aufgabe. Klicken Sie hierfür mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Spezielle Aufgabe.
Diese Arbeitsaufgabe wird aus dem von Ihnen geänderten und importierten Arbeitsaufgabentyp erstellt.
Hinzufügen eines Felds
Voraussetzung: Sie haben das Verfahren Umbenennen des Aufgabentyps abgeschlossen.
So fügen Sie ein Feld hinzu
Öffnen Sie die Datei, die die Definition des Arbeitsaufgabentyps Spezielle Aufgabe enthält. Klicken Sie hierfür in Visual Studio auf die Registerkarte SpecialTask.xml.
Suchen Sie den folgenden Abschnitt der XML-Datei.
<FIELDS>
Erstellen Sie das neue Zeichenfolgenfeld Category sowie einen Hilfetext für die QuickInfo, indem Sie den folgenden XML-Code eingeben (Fettformatierung).
<FIELDS> <FIELD name="Category" refname="MyCompany.MyProcess.Category" type="String"> <HELPTEXT>Describes the category to which this special task belongs.</HELPTEXT></FIELD>
Hinweis: Der Verweisname oder refname ist der programmgesteuerte Name für das Feld. Alle weiteren Regeln sollten auf diesen refname verweisen. Weitere Informationen finden Sie unter Feldverweisnamen.
Suchen Sie den Abschnitt der XML-Datei, in dem das Arbeitsaufgabenformular beschrieben wird.
<FORM>
Suchen Sie die folgenden Zeilen im Abschnitt <FORM>.
<Group Label="Classification"> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> </Column> </Group>
Fügen Sie ein neues Steuerelement ein, das im Feld Category angezeigt werden soll, indem Sie den folgenden XML-Code eingeben (Fettformatierung):
<Group Label="Classification"> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> </Column> </Group>
Klicken Sie im Menü Datei auf Speichern, um die Änderungen der XML-Datei zu speichern.
Importieren Sie den geänderten Arbeitsaufgabentyp Spezielle Aufgabe in Team Foundation Server. Geben Sie hierfür an der Visual Studio-Eingabeaufforderung Folgendes ein, und drücken Sie die EINGABETASTE:
witimport /f "Dateipfad\specialtask.xml" /t "Team Foundation Server-Name" /p WITLab
Hinweis Sie können in der Befehlszeile auch einfach die NACH-OBEN-TASTE drücken, um den zuletzt eingegebenen Befehl anzuzeigen.
Hiermit wird der Arbeitsaufgabentyp specialtask in Team Foundation Server importiert. Nach Abschluss des Importvorgangs wird Folgendes angezeigt:
Work item type import complete.
Klicken Sie in Team Explorer auf Aktualisieren, um die neuesten Aktualisierungen vom Server herunterzuladen.
Diese Aktualisierungen enthalten die soeben importierten Änderungen. Warten Sie einige Sekunden, bis der Knoten Arbeitsaufgaben geladen wurde. Auf Knoten, auf denen noch ein Ladevorgang ausgeführt wird, wird In Arbeit angezeigt.
Erstellen Sie eine neue Arbeitsaufgabe vom Typ Spezielle Aufgabe. Klicken Sie hierfür mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Spezielle Aufgabe.
Diese Arbeitsaufgabe wird aus dem von Ihnen geänderten und importierten Arbeitsaufgabentyp erstellt.
Beachten Sie das neue Formularfeld Category. Bewegen Sie den Mauszeiger über die Bezeichnung des Felds, um die QuickInfo anzuzeigen.
Klicken Sie auf Schließen, um die neue spezielle Aufgabe zu schließen. Klicken Sie auf Nein, wenn Sie zum Speichern der Arbeitsaufgabe aufgefordert werden.
Hinzufügen von Regeln zu einem Feld
Voraussetzung: Sie haben das Verfahren Hinzufügen eines Felds abgeschlossen.
So fügen Sie einem Feld Regeln hinzu
Öffnen Sie die Datei, die die Definition des Arbeitsaufgabentyps Spezielle Aufgabe enthält. Klicken Sie hierfür in Visual Studio auf die Registerkarte specialtask.xml.
Suchen Sie den Abschnitt <FIELDS> der XML-Datei und darin das Feld Category.
Machen Sie Category zu einem Pflichtfeld, indem Sie der XML-Datei die folgende Regel hinzufügen. Die Regel wird in fett formatiertem Text angezeigt.
<FIELD name="Category" refname="MyCompany.MyProcess.Category" type="String" reportable="dimension"> <HELPTEXT>Describes the category to which this special task belongs.</HELPTEXT> <REQUIRED /> </FIELD>
Klicken Sie im Menü Datei auf Speichern, um die Änderungen der XML-Datei zu speichern.
Importieren Sie den geänderten Arbeitsaufgabentyp Spezielle Aufgabe in Team Foundation Server. Geben Sie hierfür an der Visual Studio-Eingabeaufforderung Folgendes ein, und drücken Sie die EINGABETASTE:
witimport /f "Dateipfad\specialtask.xml" /t "Team Foundation Server-Name" /p WITLab
Hiermit wird der Arbeitsaufgabentyp specialtask in Team Foundation Server importiert. Nach Abschluss des Importvorgangs wird Folgendes angezeigt:
Work item type import complete.
Klicken Sie in Team Explorer auf Aktualisieren, um die neuesten Aktualisierungen vom Server herunterzuladen.
Diese Aktualisierungen enthalten die soeben importierten Änderungen. Warten Sie einige Sekunden, bis der Knoten Arbeitsaufgaben geladen wurde. Auf Knoten, auf denen noch ein Ladevorgang ausgeführt wird, wird In Arbeit angezeigt.
Erstellen Sie eine neue Arbeitsaufgabe vom Typ Spezielle Aufgabe. Klicken Sie hierfür mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Spezielle Aufgabe.
Diese Arbeitsaufgabe wird aus dem von Ihnen geänderten und importierten Arbeitsaufgabentyp erstellt.
Das Feld Category ist jetzt hervorgehoben. Dadurch wird angegeben, dass es sich um ein erforderliches Feld handelt.
Wählen Sie in der Arbeitsaufgabe Spezielle Aufgabe das Feld Titel aus, und geben Sie "Sample Task" ein.
Klicken Sie auf der Symbolleiste auf Speichern, um die Arbeitsaufgabe zu speichern.
Ein Fehlerdialogfeld mit der Meldung, dass das Feld Category nicht leer sein darf, wird angezeigt. Klicken Sie auf OK, um das Dialogfeld zu schließen.
Geben Sie im Feld Category für Spezielle Aufgabe A category ein.
Klicken Sie auf Speichern, um die Arbeitsaufgabe zu speichern.
Beachten Sie, dass die Arbeitsaufgabe jetzt gespeichert werden kann.
Klicken Sie auf Schließen, um die neue spezielle Aufgabe zu schließen.
Erstellen einer Auswahlliste
Voraussetzung: Sie haben das Verfahren Hinzufügen von Regeln zu einem Feld abgeschlossen.
So erstellen Sie eine Fehlerliste
Öffnen Sie die Datei, die die Definition des Arbeitsaufgabentyps Spezielle Aufgabe enthält. Klicken Sie hierfür in Visual Studio auf die Registerkarte specialtask.xml.
Suchen Sie den Abschnitt <FIELDS> der XML-Datei und darin das Feld Category.
Fügen Sie dem Feld Category eine Liste zulässiger Werte hinzu, indem Sie eine ALLOWEDVALUES-Regel einfügen. Die neue Regel wird in fett formatiertem Text im folgenden XML angezeigt.
<FIELD name="Category" refname="MyCompany.MyProcess.Category" type="String" reportable="dimension"> <HELPTEXT>Describes the category to which this special task belongs.</HELPTEXT> <REQUIRED /> <ALLOWEDVALUES> <LISTITEM value="Process Management" /> <LISTITEM value="Planning" /> <LISTITEM value="Execution" /> <LISTITEM value="Review" /></ALLOWEDVALUES> </FIELD>
Machen Sie Category zu einem optionalen Feld, indem Sie die REQUIRED-Regel löschen (Fettformatierung).
<FIELD name="Category" refname="MyCompany.MyProcess.Category" type="String" reportable="dimension"> <HELPTEXT>Describes the category to which this special task belongs.</HELPTEXT> <REQUIRED /> <ALLOWEDVALUES> <LISTITEM value="Process Management" /> <LISTITEM value="Planning" /> <LISTITEM value="Execution" /> <LISTITEM value="Review" /> </ALLOWEDVALUES> </FIELD>
Klicken Sie auf Speichern, um die Änderungen in der XML-Datei zu speichern.
Importieren Sie den geänderten Arbeitsaufgabentyp Spezielle Aufgabe in Team Foundation Server. Geben Sie hierfür an der Visual Studio-Eingabeaufforderung Folgendes ein, und drücken Sie die EINGABETASTE:
witimport /f "Dateipfad\specialtask.xml" /t "Team Foundation Server-Name" /p WITLab
Hiermit wird der Arbeitsaufgabentyp specialtask in Team Foundation Server importiert. Nach Abschluss des Importvorgangs wird Folgendes angezeigt:
Work item type import complete.
Klicken Sie in Visual Studio im Fenster Team Explorer auf Aktualisieren, um die neuesten Aktualisierungen vom Server herunterzuladen.
Diese Aktualisierungen enthalten die soeben importierten Änderungen. Warten Sie einige Sekunden, bis der Knoten Arbeitsaufgaben geladen wurde. Auf Knoten, auf denen noch ein Ladevorgang ausgeführt wird, wird In Arbeit angezeigt.
Erstellen Sie eine neue Arbeitsaufgabe vom Typ Spezielle Aufgabe. Klicken Sie hierfür mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Spezielle Aufgabe.
Diese Arbeitsaufgabe wird aus dem von Ihnen geänderten und importierten Arbeitsaufgabentyp erstellt.
Klicken Sie auf das Listenfeld für das Feld Category.
Beachten Sie, dass das Feld jetzt nur die von den ALLOWEDVALUES-Regeln angegebenen Werte unterstützt.
Hinweis: Der zulässigen Werte in der Dropdownliste werden stets in alphabetischer Reihenfolge angezeigt, die Reihenfolge der LISTITEM-Elemente in der XML-Datei spielt dabei keine Rolle.
Klicken Sie auf Schließen, um die neue spezielle Aufgabe zu schließen. Klicken Sie auf Nein, wenn Sie zum Speichern der Arbeitsaufgabe aufgefordert werden.
Ändern des Arbeitsablaufs
Voraussetzung: Sie haben das Verfahren Erstellen einer Auswahlliste abgeschlossen.
So ändern Sie den Arbeitsablauf
Öffnen Sie die Datei, die die Definition des Arbeitsaufgabentyps Spezielle Aufgabe enthält. Klicken Sie hierfür in Visual Studio auf die Registerkarte specialtask.xml.
Suchen Sie die Definition des Arbeitsablaufs für den Arbeitsaufgabentyp in der XML-Datei im Abschnitt <WORKFLOW>, wie im nachfolgenden XML dargestellt:
<WORKFLOW> <STATES> <STATE value="Active"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ClosedBy"> ...
Beachten Sie, dass nur zwei Zustände definiert sind, Active und Closed. Die Übergänge zwischen den Zuständen sind ebenso definiert wie der Anfangsübergang vom Zustand NULL, der beim Erstellen der Arbeitsaufgabe verwendet wird.
Fügen Sie der Typdefinition den Zustand Unapproved hinzu, indem Sie ein weiteres <STATE>-Element einfügen. Der neue Zustand wird in fett formatiertem Text angezeigt.
<WORKFLOW> <STATES> <STATE value="Unapproved"> </STATE> <STATE value="Active"> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ClosedDate"> <EMPTY /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ClosedBy"> ...
Erstellen Sie einen Übergang zwischen dem Zustand NULL und dem Zustand Unapproved. Suchen Sie dazu zunächst den Abschnitt der Arbeitablaufdefinition für Übergänge. Fügen Sie anschließend das nachfolgende XML ein (Fettformatierung). Durch diese Änderung wird allen neuen Arbeitsaufgaben dieses Typs zunächst der Zustand Unapproved mit dem Standardgrund New zugewiesen.
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> </TRANSITION> <TRANSITION from="" to="Active"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ActivatedBy"> <COPY from="currentuser" /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ActivatedDate"> <COPY from="clock" /> </FIELD> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION>
Löschen Sie den Übergang zu Active, der im folgenden XML-Code angezeigt wird (Fettformatierung). Dies ist erforderlich, da nur ein Anfangsübergang festgelegt sein kann, und Sie nun den im nachfolgenden Schritt definierten Anfangsübergang "Ported" verwenden.
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> </TRANSITION> <TRANSITION from="" to="Active"> <REASONS> <DEFAULTREASON value="New" /> </REASONS> <FIELDS> <FIELD refname="Microsoft.VSTS.Common.ActivatedBy"> <COPY from="currentuser" /> </FIELD> <FIELD refname="Microsoft.VSTS.Common.ActivatedDate"> <COPY from="clock" /> </FIELD> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION>
Fügen Sie für den Anfangsübergang den Grund "Ported" hinzu, indem Sie den folgenden XML-Code einfügen (Fettformatierung). Dadurch wissen die Benutzer, ob die Arbeitsaufgabe neu ist oder von einem anderen System zur Nachverfolgung portiert wurde.
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> <REASON value="Ported" /> </REASONS> </TRANSITION> ...
Fügen Sie die folgende Copy-Regel ein (Fettformatierung). Diese Regel verwendet für das Feld Zugewiesen an standardmäßig den Benutzer, der die Arbeitsaufgabe erstellt hat, und wird nur während des Anfangsübergangs ausgewertet.
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> <REASON value="Ported" /> </REASONS> <FIELDS> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION> ...
Hinweis: Durch das Einfügen dieser Regel in andere <TRANSITION>-Elemente oder <STATE>-Elemente wird die Regel auf andere Übergänge oder Zustände ausgeweitet.
Erstellen Sie einen Übergang vom Zustand Unapproved in den Zustand Active, indem Sie den folgenden XML-Code einfügen (Fettformatierung). Aufgrund dieser Änderung kann durch die Genehmigung einer speziellen Aufgabe dieser Übergang stattfinden.
<TRANSITIONS> <TRANSITION from="" to="Unapproved"> <REASONS> <DEFAULTREASON value="New" /> <REASON value="Ported" /> </REASONS> <FIELDS> <FIELD refname="System.AssignedTo"> <COPY from="currentuser" /> </FIELD> </FIELDS> </TRANSITION> <TRANSITION from="Unapproved" to="Active"> <REASONS> <DEFAULTREASON value="Approved" /> </REASONS> </TRANSITION> <TRANSITION from="Active" to="Closed"> <REASONS> <DEFAULTREASON value="Completed" /> <REASON value="Deferred" /> <REASON value="Obsolete" /> <REASON value="Cut" /> </REASONS> ...
Klicken Sie auf Speichern, um die Änderungen in der XML-Datei zu speichern.
Importieren Sie den geänderten Arbeitsaufgabentyp Spezielle Aufgabe in Team Foundation Server. Geben Sie hierfür an der Visual Studio-Eingabeaufforderung Folgendes ein, und drücken Sie die EINGABETASTE:
witimport /f "Dateipfad\specialtask.xml" /t "Team Foundation Server-Name" /p WITLab
Hiermit wird der Arbeitsaufgabentyp specialtask in Team Foundation Server importiert. Nach Abschluss des Importvorgangs wird Folgendes angezeigt:
Work item type import complete.
Klicken Sie in Team Explorer auf Aktualisieren, um die neuesten Aktualisierungen vom Server herunterzuladen.
Diese Aktualisierungen enthalten die soeben importierten Änderungen. Warten Sie einige Sekunden, bis der Knoten Arbeitsaufgaben geladen wurde. Auf Knoten, auf denen noch ein Ladevorgang ausgeführt wird, wird In Arbeit angezeigt.
Erstellen Sie eine neue Arbeitsaufgabe vom Typ Spezielle Aufgabe. Klicken Sie hierfür mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Spezielle Aufgabe.
Diese Arbeitsaufgabe wird aus dem von Ihnen geänderten und importierten Arbeitsaufgabentyp erstellt.
Der ursprüngliche Zustand lautet nun Unapproved, und der Grund ist standardmäßig auf New festgelegt. Darüber hinaus wird der Wert des Zugewiesen an standardmäßig auf den Kontonamen festgelegt. Klicken Sie auf das Feld Grund, um ein Listenfeld anzuzeigen, das die Gründe New und Ported enthält.
Geben Sie im Feld Titel einen Titel ein, und klicken Sie auf Speichern, um die Arbeitsaufgabe zu speichern. Warten Sie, bis der Speichervorgang beendet ist, wie durch Gespeicherte(s) Element(e) auf der Statusleiste angegeben wird.
Wählen Sie im Feld Zustand den Wert Active aus, um die Arbeitsaufgabe zu genehmigen und den Übergang erneut auszuführen. Das Feld Grund ist auf den Standardwert Approved festgelegt.
Klicken Sie auf Speichern, um diesen Übergang zu speichern.
Klicken Sie auf Schließen, um die spezielle Aufgabe zu schließen.
Ändern des Formularlayouts
Voraussetzung: Sie haben das Verfahren Ändern des Arbeitsablaufs abgeschlossen.
So ändern Sie das Formularlayout
Öffnen Sie die Datei, die die Definition des Arbeitsaufgabentyps Spezielle Aufgabe enthält. Klicken Sie hierfür in Visual Studio auf die Registerkarte specialtask.xml.
Suchen Sie den <TabGroup>-Abschnitt der XML-Datei. In den <Tab>-Elementen für Verknüpfungen und Dateianhänge enthalten die einzelnen <Tab>-Elemente das jeweilige <Control>-Element, das das jeweilige Steuerelement rendert.
<Tab Label="Links"> <Control Type="LinksControl" /> </Tab> <Tab Label="File Attachments"> <Control Type="AttachmentsControl" /> </Tab>
Führen Sie die beiden <Tab>-Elemente in einem <Tab>-Element für Verknüpfungen und Anhänge zusammen, die beide Steuerelemente enthält, indem Sie das XML aus dem vorherigen Schritt durch das nachfolgende XML ersetzen.
<Tab Label="Links and Attachments"> <Control Type="LinksControl" Label="Links" LabelPosition="Top" /> <Control Type="AttachmentsControl" Label="Attachments" LabelPosition="Top" /> </Tab>
Suchen Sie den Abschnitt der <Layout>-Definition von <FORM>, in dem die Gruppen Classification und Status beschrieben werden.
<Group Label="Classification"> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> </Column> </Group>
Hinweis: Alle Steuerelemente oder jede Gruppen sollten in einer Spalte angezeigt werden, auch wenn die Spalte sich über das ganze Formular erstreckt, um optimale Ergebnisse zu erzielen. Alle Spalten sollten wiederum in einer Gruppe angezeigt werden, auch wenn die Gruppe keine sichtbare Bezeichnung oder Begrenzung aufweist.
Markieren Sie die folgenden fett formatierten Zeilen, und klicken Sie im Menü Bearbeiten auf Kopieren, um diese zur späteren Verwendung in der Zwischenablage abzulegen.
<Column PercentWidth="70"> <Group> <Column PercentWidth="100"> <Group Label="Classification"> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> </Column> </Group>
Löschen Sie die fett formatierten Zeilen im folgenden XML, um die Gruppe Classification von der aktuellen Position im Formular zu entfernen.
<Layout> <Group> <Column PercentWidth="70"> <Control Type="FieldControl" FieldName="System.Title" Label="&Title:" LabelPosition="Left" /> </Column> <Column PercentWidth="30"> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Common.Discipline" Label="&Discipline:" LabelPosition="Left" /> </Column> </Group> <Group Label="Classification"> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="&Area:" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="&Iteration:" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> </Column> </Group>
Suchen Sie im Abschnitt <TabGroup> die folgenden Zeilen, die die Registerkarte Details definieren:
<Tab Label="Details"> <Group> <Column PercentWidth="50"> <Group Label="General"> <Column PercentWidth="100"> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Common.Issue" Label="Iss&ue:" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Common.ExitCriteria" Label="E&xit criteria:" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Build.IntegrationBuild" Label="Integration &build:" LabelPosition="Left" /> </Column> </Group> </Column> <Column PercentWidth="50"> <Group Label="Schedule"> <Column PercentWidth="100"> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Scheduling.RemainingWork" Label="Remaining &work (hours):" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Scheduling.CompletedWork" Label="Com&pleted work (hours):" LabelPosition="Left" /> </Column> </Group> </Column> </Group> </Tab>
Fügen Sie den Inhalt der Zwischenablage an der folgenden Position ein, um diese Steuerelemente auf die Registerkarte Details zu verschieben.
<Tab Label="Details"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> <Group> <Column PercentWidth="50"> <Group> <Column PercentWidth="100"> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Common.Issue" Label="Issue" LabelPosition="Left" /> ...
Nehmen Sie folgende fett formatierte Änderungen vor, um die verschobenen Felder zu gruppieren und die Felder in zwei Spalten aufteilen.
<Tab Label="Details"> <Group Label="Classification"> <Column PercentWidth="50"> <Group> <Column PercentWidth="100"> <Control Type="WorkItemClassificationControl" FieldName="System.AreaPath" Label="Area" LabelPosition="Left" /> <Control Type="WorkItemClassificationControl" FieldName="System.IterationPath" Label="Iteration" LabelPosition="Left" /> </Column> </Group> </Column> <Column PercentWidth="50"> <Group> <Column PercentWidth="100"> <Control Type="FieldControl" FieldName="MyCompany.MyProcess.Category" Label="Category" LabelPosition="Left" /> </Column> </Group> </Column> </Group> <Group> <Column PercentWidth="50"> <Group> <Column PercentWidth="100"> <Control Type="FieldControl" FieldName="Microsoft.VSTS.Common.Issue" Label="Issue" LabelPosition="Left" /> ...
Klicken Sie auf Speichern, um die Änderungen in der XML-Datei zu speichern.
Importieren Sie den geänderten Arbeitsaufgabentyp Spezielle Aufgabe in Team Foundation Server. Geben Sie hierfür an der Visual Studio-Eingabeaufforderung Folgendes ein, und drücken Sie die EINGABETASTE:
witimport /f "Dateipfad\specialtask.xml" /t "Team Foundation Server-Name" /p WITLab
Hiermit wird der Arbeitsaufgabentyp specialtask in Team Foundation Server importiert. Nach Abschluss des Importvorgangs wird Folgendes angezeigt:
Work item type import complete.
Klicken Sie in Team Explorer auf Aktualisieren, um die neuesten Aktualisierungen vom Server herunterzuladen.
Diese Aktualisierungen enthalten die soeben importierten Änderungen. Warten Sie einige Sekunden, bis der Knoten Arbeitsaufgaben geladen wurde. Auf Knoten, auf denen noch ein Ladevorgang ausgeführt wird, wird In Arbeit angezeigt.
Erstellen Sie eine neue Arbeitsaufgabe vom Typ Spezielle Aufgabe. Klicken Sie hierfür mit der rechten Maustaste auf den Knoten Arbeitsaufgaben, zeigen Sie auf Arbeitsaufgabe hinzufügen, und klicken Sie dann auf Spezielle Aufgabe.
Diese Arbeitsaufgabe wird aus dem von Ihnen geänderten Arbeitsaufgabentyp erstellt.
Beachten Sie, dass die Gruppe Classification nicht mehr im Hauptformular enthalten ist. Klicken Sie auf die Registerkarte Verknüpfungen und Anlagen und auf die Registerkarte Details, um die vorgenommenen Änderungen anzuzeigen.
Klicken Sie auf Schließen, um die neue spezielle Aufgabe zu schließen. Klicken Sie auf Nein, wenn Sie zum Speichern der Arbeitsaufgabe aufgefordert werden.
Nächste Schritte
Detaillierte Anweisungen für zusätzliche Anpassungen von Arbeitsaufgabentypen finden Sie unter Exemplarische Vorgehensweise: Durchführen von erweiterten Anpassungen für einen Arbeitsaufgabentyp.
Siehe auch
Aufgaben
Exemplarische Vorgehensweise: Verwalten von Feldern in einem Arbeitsaufgabentyp