Sharepoint Условные поля в Edit.aspx
Я хотел бы отобразить определенные поля метаданных в форме редактирования на основе значения полей.
Пример: пользователи загружают документ в Doclib для утверждения его менеджером. Им разрешено изменять метаданные Имя, Номер дела, Местоположение, пока элемент не будет утвержден менеджером. После того, как предмет будет одобрен, я хотел бы установить имя и номер дела только для чтения.
Каков наилучший способ удовлетворить это требование?
Если одобрено = да, укажите Имя и Номер дела = Только для чтения, иначе ничего не делайте.
Я пробовал этот метод около 5 часов. Я полагал, что это может отличаться для ModerationStatus. Может потребоваться что-то особенное
print("<xsl:choose>
<xsl:when test="@_ModerationStatus != '0;#approved'">
<SharePoint:FormField runat="server" id="ff12{$Pos}" ControlMode="Edit" FieldName="Test_x0020_Session" __designer:bind="{ddwrt:DataBind('u',concat('ff12',$Pos),'Value','ValueChanged','ID',ddwrt:EscapeDelims(string(@ID)),'@Test_x0020_Session')}"/>
<SharePoint:FieldDescription runat="server" id="ff12description{$Pos}" FieldName="Test_x0020_Session" ControlMode="Edit"/>
</xsl:when>
<xsl:otherwise>
<xsl:value-of select="@Test_x0020_Session"></xsl:value-of>
</xsl:otherwise>
«);
Я могу заставить его работать с другими полями, но не с ModerationStatus. Я также попытался изменить его на! = '0' и! = 'Approved' и '0; #Approved'. Есть ли что-то, что я делаю не так?
Похоже, он застрял на 0; # Утверждено