TFS 2017 WITD Import error VS403073 - tfs

While importing a newly customized Work Item Type Definition into TFS 2017.3, I am receiving the error:
VS403073: Group {GroupName} violates the rule that a group can only
contain a single HTML or WebPage control preceded by label controls.
My question is three-fold:
1) Where are these styling/schema rules documented? I was unable to find any information on this, or any other schema rule, on Microsoft's site here.
2) I am trying to keep several FieldControls and a single HTMLFieldControl grouped together under one heading on the WebForm for organization purposes. Why would there be a rule put in place to prevent this type of organization?
3) Is it possible to, and what would be the consequences of, bypassing this rule and importing the WITD anyway?
Please let me know if any further information/clarification is needed.
Edit:
Psudo code would be something to this effect:
<WebLayout>
...
<Page>
<Section>
<Group Label="Group 1">
<Control type="FieldControl" Label="G1C1" FieldName="X.G1Field1" />
<Control type="FieldControl" Label="G1C2" FieldName="X.G1Field2" />
<Control type="FieldControl" Label="G1C3" FieldName="X.G1Field3" />
<Control type="HTMLFieldControl" Label="G1C4" FieldName="X.G1Field4" />
</Group>
</Section>
</Page>
</WebLayout>

I ran into this as well. I moved the HTMLFieldControl to its own group and that resolved the issue.
Example from Microsoft's documentation
Error:
<Section>
<Group Label="Description:">
<Control Label="Reason For Request:" Type="HtmlFieldControl" FieldName="System.Description" />
<Control Label="Business Case For Request:" Type="HtmlFieldControl" FieldName="MB.BusinessCase" />
</Group>
</Section>
Resolution:
<Section>
<Group Label="Reason for Request">
<Control Label="Reason For Request:" Type="HtmlFieldControl" FieldName="System.Description" />
</Group>
<Group Label="Business Case">
<Control Label="Business Case For Request" Type="HtmlFieldControl" FieldName="Custom.BusinessCase" />
</Group>
</Section>
Documentation can be found HERE

Related

grails database migration silently failing- how to figure out why

My last two changesets in changelog.xml are not getting executed on application startup. There are no errors in the log file, but when I look at the databasechangelog, I do not see the statements. Nor do I see the tables. (These are simple create table changesets.)
Any tips on how to troubleshoot or debug would be much appreciated. Below are my changeset. I've simplified them once I realized migration wasn't happening. But what I really want to figure out is how to turn on logging, as I am mystified about what happened. (This was working fine 2 days ago.)
<changeSet author='rtrei' id='test1'>
<createTable tableName="foo">
<column autoIncrement="true" name="id" type="bigint">
<constraints nullable="false" primaryKey="true" primaryKeyName="fooPK"/>
</column>
<column name="version" type="bigint">
<constraints nullable="false"/>
</column>
</createTable>
<createTable tableName="foo2">
<column autoIncrement="true" name="id" type="bigint">
<constraints nullable="false" primaryKey="true" primaryKeyName="foo2PK"/>
</column>
<column name="version" type="bigint">
<constraints nullable="false"/>
</column>
</createTable>
</changeSet>

Outlook Web Add-in MVC -> Call Controller in TaskPane

i am trying to develop an outlook web mvc addin with visual studio 2017.
I successfully integrated my XML-Manifest, the ribbon button is added correctly and the task pane opens after clicking my button.
Anyway my view cannot be displayed!
My error message is the same as "Shyam sundar shah" got more than a year ago:
"Add-in error: Something went wrond and we couldn´t start this add-in. Please try again later or contact your system administrator."
Outlook web addin is not loading in Outlook webApps using MVC
I linked the question cause i am not able to link any images in my questions yet.
Here is my Extensionpoint in the manifest:
<ExtensionPoint xsi:type="MessageReadCommandSurface">
<OfficeTab id="ReadTab">
<Group id="ReadGroup">
<Label resid="ReadGroupLabel" />
<Control xsi:type="Button" id="msgReadOpenPaneButton">
<Label resid="ReadButtonLabel" />
<Supertip>
<Title resid="ReadSuperTipTitle" />
<Description resid="ReadSuperTipDescription" />
</Supertip>
<Icon>
<bt:Image size="16" resid="icon" />
<bt:Image size="32" resid="icon" />
<bt:Image size="80" resid="icon" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="ReadPane" />
</Action>
</Control>
<Control xsi:type="Button" id="msgReadOpenPaneButton2">
<Label resid="ReadButtonLabel2" />
<Supertip>
<Title resid="ReadSuperTipTitle2" />
<Description resid="ReadSuperTipDescription2" />
</Supertip>
<Icon>
<bt:Image size="16" resid="icon" />
<bt:Image size="32" resid="icon" />
<bt:Image size="80" resid="icon" />
</Icon>
<Action xsi:type="ShowTaskpane">
<SourceLocation resid="ReadPane2"/>
</Action>
</Control>
</Group>
</OfficeTab>
</ExtensionPoint>
<bt:Urls>
<bt:Url id="functionFile" DefaultValue="https://localhost:44302/Functions/FunctionFile.html"/>
<bt:Url id="ReadPane" DefaultValue="https://localhost:44302/Home/Login"/>
<bt:Url id="ReadPane2" DefaultValue="http://localhost:12543/Home/Login"/>
</bt:Urls>
As you can see i tried the SSL and the non SSL path. Both throw the same error.
My controller action is as simple as possible. I am just testing a local initialized variable of being true or false and in both cases i return the View with a correspondenting Model. So I dont think my problem is hiding there.(the cases will be completed later, cause there is no relation to my problem):
private bool _unconnect = false;
public ActionResult Login()
{
LoginModel model = new LoginModel();
if (!_unconnect)
{
return View(model);
}
else
{
return View(model);
}
}
I didn´t found any solution in the above linked question or anywhere else.
Are there any new cognitions for this error?
Thanks in advance.

Add Custom column to UI in TFS?

Here is how I added [AHA Reference] column (custom column) to my local TFS, which I learned from
https://learn.microsoft.com/en-us/vsts/work/customize/reference/witadmin/witadmin-import-export-manage-wits?view=tfs-2018
1) run below command to export the WIT
witadmin exportwitd /collection:http://XXXXX:8080/tfs/DefaultCollection /p:LocalTestProject /f:c:\temp\myworkitems_local.xml /n:Feature
2) In the generated xml file, I added this to the FIELDS node
3) then I added a Control node under FORM
4) then in the TFS, I added [AHA Reference] column, and I can see it in the list.
5) Since I added control in step 3, my understanding is that in the detail popup, it should show the [AHA Reference] under ‘value area’. It never showed up. But, the [AHA Reference] field is added and I can retrieve it from code.
Maybe my understanding is not correct. Not an important question. I’m just curious what that ‘Control’ node in WIT does if not adding the ‘control’ to UI.
Thanks
It's because you added the Control under the old form/team explorer in step 3. If you back to old form, you'll see this field. In order to make the Control shows in new web form, you need to add the control under <FORM><WebLayout>...</WebLayout></FORM>:
<FORM>
<WebLayout>
<Page Label="Details" LayoutMode="FirstColumnWide">
<Section>
<Group Label="Details">
<Control Label="Priority" Type="FieldControl" FieldName="Microsoft.VSTS.Common.Priority" />
<Control Label="Effort" Type="FieldControl" FieldName="Microsoft.VSTS.Scheduling.Effort" />
<Control Label="Business Value" Type="FieldControl" FieldName="Microsoft.VSTS.Common.BusinessValue" />
<Control Label="Time Criticality" Type="FieldControl" FieldName="Microsoft.VSTS.Common.TimeCriticality" />
<Control Label="Value area" Type="FieldControl" FieldName="Microsoft.VSTS.Common.ValueArea" />
<Control Label="AHA Reference" Type="FieldControl" FieldName="AHAReference.AHAReference" />
</Group>
</Section>
</Page>
</WebLayout>
</FORM>
Useful links:
https://learn.microsoft.com/en-us/vsts/work/customize/customize-wit-form?view=vsts
https://learn.microsoft.com/en-us/vsts/work/customize/reference/weblayout-xml-elements?view=vsts

tfs 2017 - scrum template - missing statechanged field in some work items

Noticed StateChanged field is missing within XML definitions of some work items in scrum template of tfs 2017 RTM : pbi, testplan, testsuite, feebackrequest, codereviewrequest, and some more.
I assume i should add it manually to them. Right ?
If you mean the State Change Date field, yes, by default it's not added in some work items in scrum template.
Actually the control is not added to layout eventhough in the existing work items such as Bug, Feature. That means, you cannot see the field in work item layout. However you can add the control to display the field based on your requirements.
Yes, you can also add the State Change Date field manually to the work items which not exsiting in them. See Add a field, or apply a rule, or change an attribute for details.
You can also use the TFS Process Template Editor to edit the WITs definitions.
Field:
<FieldDefinition name="State Change Date" refname="Microsoft.VSTS.Common.StateChangeDate" type="DateTime">
<WHENCHANGED field="System.State">
<SERVERDEFAULT from="clock" />
</WHENCHANGED>
<WHENNOTCHANGED field="System.State">
<READONLY />
</WHENNOTCHANGED>
</FieldDefinition>
Layout Control:
<Group Label="Status">
<Column PercentWidth="100">
<Control FieldName="Microsoft.VSTS.Common.StateChangeDate" Type="DateTimeControl" Label="State Change Date:" LabelPosition="Left" />
</Column>
</Group>
Page Section:
<Section>
<Group Label="Status">
<Control Label="State Change Date:" Type="DateTimeControl" FieldName="Microsoft.VSTS.Common.StateChangeDate" />
</Group>
</Section>

Adding new Workflow State in TFS 2015.4 Agile Template - and missing in Kanban Board

I am using TFS 2015.4, Agile template. I want to alter my workflow states to include Analysis as an option. I have modified the User Story WIT and ProcessConfiguration, Workflow nodes and valid states, etc. I reuploaded the template successfully and set the new template to default. All is well with regard to setting user story states. However, on the Kanban board, I want to add a tab that maps to the newly added Analysis. This new option is not showing up. Is there something else I'm missing?
You need to modify the process configuration to map new workflow states to metastates. Try the steps below:
Export ProcessConfiguration file:
witadmin exportprocessconfig /collection:http://tfsserver:8080/tfs/teamprojectcollection /p:teamproject /f:C:\Users\username\Desktop\ProcessConfiguration.xml
Modify the XML definition file. In your case, you should modify RequirementBacklog by adding your Analysis state:
<RequirementBacklog category="Microsoft.RequirementCategory" parent="Microsoft.FeatureCategory" pluralName="Stories" singularName="User Story" workItemCountLimit="1000">
<AddPanel>
<Fields>
<Field refname="System.Title" />
</Fields>
</AddPanel>
<Columns>
<Column width="100" refname="System.WorkItemType" />
<Column width="400" refname="System.Title" />
<Column width="100" refname="System.State" />
<Column width="50" refname="Microsoft.VSTS.Scheduling.StoryPoints" />
<Column width="100" refname="Microsoft.VSTS.Common.ValueArea" />
<Column width="200" refname="System.IterationPath" />
<Column width="200" refname="System.Tags" />
</Columns>
<States>
<State type="Proposed" value="New" />
<State type="InProgress" value="Active" />
<State type="InProgress" value="Resolved" />
<State type="InProgress" value="Analysis" />
<State type="Complete" value="Closed" />
</States>
</RequirementBacklog>
Import ProcessConfiguration file:
witadmin importprocessconfig /collection:http://tfsserver:8080/tfs/teamprojectcollection /p:teamproject /f:C:\Users\username\Desktop\ProcessConfiguration.xml
In this way, you can add a Column and choose Analysis state, it's similar to the screenshot below:

Resources