Как сделать так, чтобы заголовок элемента по умолчанию представлял собой комбинацию полей?

sharepoint.stackexchange https://sharepoint.stackexchange.com//questions/79457

  •  10-12-2019
  •  | 
  •  

Вопрос

Я создал в SharePoint 2010 простой список, позволяющий сотрудникам записывать свою ежедневную активность — каждый пользователь каждый день создает 1 новый элемент.При создании этого нового списка автоматически создается Title столбец, который является обязательным и отображается как первый столбец.Однако это поле не имеет смысла для этого списка, поэтому я в настоящее время установил его по умолчанию, чтобы просто сказать: Daily Activity.

У меня также есть еще 3 поля:

  1. Пользователь в настоящее время вошел в систему
  2. Текущая дата
  3. Область форматированного текста для ввода подробностей

Я хотел бы автоматически отображать комбинацию даты и пользователя, например:

Daily Activity - 10/10/2013 - John Smith

Я довольно много работал с SharePoint, но никогда не работал ни с чем подобным.Как я могу сделать так, чтобы этот список автоматически объединял эти поля в поле «Заголовок»?

Это было полезно?

Решение

  1. Если вы не хотите писать код...

    Используйте SharePoint Designer, чтобы создать рабочий процесс, который запускается при создании элемента (при условии, что они не могут отредактировать его впоследствии, в этом случае вам также нужно будет запустить при обновлении).Внутри рабочего процесса вы можете установить значение Title поле с использованием действия «Установить поля в текущем элементе» и комбинация Created, Created By, и «Ежедневная активность».Просто поймите, что будет небольшая задержка до завершения рабочего процесса, и поэтому возможно, что когда список сначала перезагрузит Title Поле может читать «(без названия)».Вот как можно установить значение после добавления рабочего процесса:

    а.Нажмите «Действие -> Список действий -> Установить поле в текущем элементе».

    Set Field in Current Item

    б.Нажмите на ссылку «поле» и выберите свое поле.В моем случае это «Местоположение».

    Field

    в.Нажмите на кнопку «...».Это позволит использовать комбинацию других полей для установки значения для этого поля.

    Value

    д.Это приведет вас к окну «String Builder».Оттуда вы можете ввести строку «Ежедневная активность -», а затем нажать кнопку «Добавить или изменить поиск», чтобы добавить поля «Создано» и «Создано».Убедитесь, что при добавлении «Создано» вы выбрали «Краткую дату» для раскрывающегося списка «Вернуть поле как», иначе оно вернет дату и время.Также убедитесь, что для «Создано» вы выбрали «Отображаемое имя» для «Вернуть поле как», в противном случае будет возвращено имя и идентификатор для этого пользователя.В конечном итоге ваше выражение будет выглядеть так:

    Add or Change Lookup

    Expression

  2. Если вы хотите написать код...

    Напишите приемник событий на C#, как упоминал Гинтас К., и вы, по сути, будете делать то же самое, что и в пункте 1 выше, но вместо этого с кодом.Вам нужно будет подключиться к ItemAdding событие.Проверьте это статья.

Другие советы

Самый простой способ, вероятно, — создать форму InfoPath для вашего списка.Для поля «Заголовок» установите значение по умолчанию:

concat("Daily Activity - ", today(), " - ", userName())

Снимите флажок «Обновлять значение при перерасчете формулы», иначе редактирование старого элемента приведет к изменению его названия и потенциально перезапишет чью-либо форму.Это может быть достаточно функционально для ваших нужд, но если вам нужно форматирование, подобное вашему примеру, проверьте этот или этот чтобы получить правильно отформатированное имя пользователя, и используйте для даты значение перевода(сегодня(), "-", "/").

Самый простой метод без кода — изменить значение по умолчанию для столбца «Заголовок» как расчетное значение. В этом блоге показано, как установить значение года..Для ваших требований попробуйте:

Перейдите в настройки списка, щелкните столбец «Заголовок» и измените значение по умолчанию.

Вставьте следующий код в поле, чтобы получить то, что вам нужно:

"Daily Activity -" & TEXT(Today,"mm/dd/yyyy") & " - " & Me

Примечание:Значение Me не указывает имя и фамилию, а указывает домен\имя пользователя.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с sharepoint.stackexchange
scroll top