我有一个SharePoint 2013解决方案,其网站范围包含两个功能:“我的自定义网站列”和“我的自定义内容类型”。我正在尝试在解决方案中创建一个额外的站点列,该列是从同一解决方案中的另一个站点列计算的。新列成功创建,并在“站点设置”中查看时显示在“站点列”和“内容类型”中。但是,当我将内容类型添加到文档库时,添加了内容类型但没有计算列。单击列表内容类型的父级显示计算列确实在父级中。
有一点需要注意,内容类型中源列的显示名称与站点列本身中的显示名称不同。 (在许多内容类型中使用相同的列,但显示名称可能会有所不同。)当我在“站点设置”中查看内容类型时,列中有预期的显示名称,因此我不认为这是一个问题。 / p>
有没有人知道为什么要删除它以及我可以做什么来解决这个问题?
源列定义:
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Field
ID="{3eebbc0c-9406-4464-89fb-932604123xyz}"
Name="SourceColumn"
DisplayName="Source Column"
Type="Text"
Required="FALSE"
Group="My Custom Columns">
</Field>
</Elements>
计算列定义:
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Field
ID="{eb7246d4-559f-4931-8baf-bffa7dabc123}"
Name="LastThree"
DisplayName="Last Three"
Type="Calculated"
ReadOnly="TRUE"
Group="My Custom Columns"
ColName="sql_variant1" RowOrdinal="0">
<Formula>=RIGHT([SourceColumn], 3)</Formula>
<FieldRefs>
<FieldRef Name="SourceColumn" />
</FieldRefs>
</Field>
</Elements>
内容类型定义:
<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<!-- Parent ContentType: z_ Parent Document (MyProject.ContentTypes\BaseDocument) (0x01010038589498EB414893AACEE02A8D57BF51001B144886ED474B048911CCE087654321) -->
<ContentType
ID="0x01010038589498EB414893AACEE02A8D57BF51001B144886ED474B048911CCE087654321005AFF4C48FBB641AE862B074363C671D5"
Name="Custom Content Type"
Group="My Custom Content Types"
Description="" Inherits="TRUE" Version="0" ReadOnly="FALSE">
<FieldRefs>
<FieldRef
ID="{3eebbc0c-9406-4464-89fb-932604123xyz}"
DisplayName="Original Source Column"
Required="FALSE"
Name="SourceColumn" />
<FieldRef
ID="{eb7246d4-559f-4931-8baf-bffa7dabc123}"
DisplayName="Last Three"
Name="LastThree"
ReadOnly="TRUE" />
</FieldRefs>
</ContentType>
</Elements>