it-swarm-ru.tech

Автоколонка в списке SharePoint

В списке SharePoint я хочу столбец с автоматическими номерами, который при добавлении в список увеличивается. Как лучше я могу пойти по этому поводу?

29
78lro

Списки Sharepoint автоматически имеют столбец с идентификатором, который автоматически увеличивается. Вам просто нужно выбрать этот столбец на экране "Изменить вид", чтобы просмотреть его.

54
BrewinBombers

Вы не можете добавить новый уникальный автоматически сгенерированный идентификатор в список SharePoint, но он уже есть! Если вы отредактируете представление "Все элементы", вы увидите список столбцов, для которых не включена опция отображения.

Существует довольно много таких столбцов, которые существуют, но никогда не отображаются, например "Создано" и "Создано". Эти поля используются в SharePoint, но они не отображаются по умолчанию, чтобы не загромождать отображение. Вы не можете редактировать эти поля, но вы можете отобразить их для пользователя. Если вы установите флажок "Отображать" рядом с полем ID, вы получите уникальное и автоматически сгенерированное поле идентификатора, отображаемое в вашем списке.

Проверить: Уникальный идентификатор в списке SharePoint

9
MrHinsh - Martin Hinshelwood

Если вы хотите контролировать форматирование уникального идентификатора, вы можете создать свой собственный <FieldType> в SharePoint . MSDN также имеет визуальный How-To . Это в основном означает, что вы создаете пользовательский столбец.

WSS определяет тип поля Counter (это то, что используется в приведенном выше столбце идентификатора). У меня никогда не было необходимости повторно использовать это или расширять его, но это должно быть возможно.

Решение может существовать без создания пользовательских <FieldType>. Например: если вам нужны уникальные идентификаторы, такие как CUST1, CUST2, ..., возможно, можно создать столбец Calculated и использовать значение столбца ID в формуле (="CUST" & [ID]). Я не пробовал это, но это должно работать :)

5
dariom

У меня была эта проблема с пользовательским списком, и хотя невозможно создать автоматически сгенерированный столбец ID , можно использовать рабочий процесс, чтобы сделать тяжелую работу.

Я создал новую переменную рабочего процесса типа Number и установил ее равной значению столбца ID в текущем элементе. Тогда это просто вопрос вычисления значения пользовательского столбца и его установки - в моем случае мне просто нужно было нумерация начать с 100 000.

enter image description here

4
David Clarke

Как уже говорилось, все объекты в sharepoint содержат своего рода уникальный идентификатор (часто целочисленный счетчик для элементов списка и GUID для списков).

Тем не менее, есть также функция, доступная по адресу http://www.codeplex.com/features , которая называется "Политика уникальных столбцов" и предназначена для добавления другого столбца с уникальным значением. Полная запись доступна по адресу http://scothillier.spaces.live.com/blog/cns!8F5DEA8AEA9E6FBB!293.entry

1
user15916

Так что я не уверен, что могу действительно думать о почему вам действительно понадобится идентификатор "уникальное семейство сайтов", так что, возможно, вы можете прокомментировать и сообщить нам, что на самом деле пытается сделать здесь. ..

В любом случае, все элементы имеют свойство UniqueID, которое является GUID, если вам действительно оно необходимо: http://msdn.Microsoft.com/en-us/library/Microsoft.sharepoint.splistitem.uniqueid.aspx

1
spdevsolutions

это там по умолчанию. Это поле id.

1
kemiller2002

Если вам нужно что-то помимо столбца ID, присутствующее во всех списках, вам, вероятно, придется прибегнуть к получателю событий в списке, который "вычисляет", каким должно быть значение идентифицированного вами уникального идентификатора, или с использованием настраиваемого типа поля, который имеет необходимую логику, встроенную в это. К сожалению, оба эти варианта потребуют написания и развертывания пользовательского кода на сервере и развертывания сборок в GAC, что может вызывать недовольство в средах, где у вас нет полного контроля над серверами.

Если вам не нужен уникальный идентификатор для немедленного отображения, вы можете сгенерировать его с помощью рабочего процесса (либо с помощью SharePoint Designer, либо с помощью пользовательского WF рабочего процесса, встроенного в Visual Studio).

К сожалению, вычисляемые столбцы, которые кажутся очевидным решением, не будут работать для этой цели, потому что идентификатор еще не назначен при попытке расчета. Если вы зайдете после факта и отредактируете элемент, расчет может достигнуть того, что вы хотите, но при первоначальном создании нового элемента он не будет рассчитан правильно.

1
Sam Yates

У Петы лучшая идея, я сделал то же самое с настраиваемым списком на нашем сайте SP. Использование рабочего процесса для автоматического увеличения - лучший способ, и это не так сложно. Проверьте это веб-сайт: http://splittingshares.wordpress.com/2008/04/11/auto-increment-a-number-in-a-new-list-item/

Я высоко ценю человека, который разместил это решение, это очень круто!

0
Marlon