Как мне показать поле в dispform, которое было скрыто в content type?
-
10-12-2019 - |
Вопрос
Sharepoint 2010 Enterprise.Это библиотека документов для документов word.У меня есть несколько полей, заданных рабочим процессом, которые я хочу, чтобы конечный пользователь видел, но не мог редактировать.
Я собирался просто использовать jQuery в нужных формах, но поле по-прежнему загружается на информационной панели документа в Word.
Я обнаружил, что скрытие поля в настройках типа контента удаляет его из DIP, но теперь его нет в dispform.Я надеялся, что опция скрыть просто скроет его в HTML (чтобы я мог показать его с помощью Jquery), но, похоже, он вообще не отображается.
Итак, как я могу отобразить поле в dispform, которое было скрыто в content type?
или
Как я могу полностью скрыть DIP в Word?(Я был бы не против, если бы поле было необязательным и скрывало его с помощью скрипта, если есть какой-то способ заблокировать его в Word DIP).Я попробовал пользовательский DIP в infopath, но это выдает ошибку, так как у наших конечных пользователей нет infopath, поэтому пользовательский DIP не загружается.
Спасибо!
Решение
Я наткнулся на приведенный ниже сценарий powershell во время работы над другим проектом.Я добавляю это на случай, если кто-то еще столкнется с той же проблемой, что и я.Я делаю это и делаю то, что никому не приносит пользы.
http://www.codeproject.com/Tips/647760/Hiding-SharePoint-list-field-column-from-newform-a Автор: Правин Чандран, 3 сентября 2013 г.
$WebUrl = "http://sitecollectionurl"
Write-Host "Opening Web" $WebUrl
$web = Get-SPWeb $WebUrl
$list = $web.Lists["ListName"];
$FieldGuid = New-Object System.Guid("cc9576b6-a166-47c9-bd89-7f47a3237e03");
$Field = $list.Fields[$FieldGuid];
$Field.ShowInNewForm = $false;
$Field.ShowInDisplayForm = $true;
$Field.ShowInEditForm = $false
$Field.Update();
$list.Update();
<span style="font-size: 14px; white-space: normal;">
</span>
Здесь замените $WebUrl
с URL-адресом вашего семейства веб-сайтов и замените "ListName"
с вашим именем в сплисте.
И замените Guid "cc9576b6-a166-47c9-bd89-7f47a3237e03"
с идентификатором поля, которое должно быть скрыто.
Чтобы получить идентификатор поля, вы можете воспользоваться инструментом "SharePoint Manager".Это от codeplex, и это бесплатно.
Другие советы
Если столбец представляет собой созданный вами столбца, вы должны использовать ShowInfileDLG= «false», чтобы скрыть его от падения.С помощью showindiplayform="true" все равно покажет его в форме отображения.
http://msdn.microsoft.com/en-us/Библиотека / Офис / AA543225.aspx