it-swarm-es.tech

Columna de número automático en la lista de SharePoint

En una lista de SharePoint, quiero una columna de número automático que a medida que agrego a la lista se incrementa. ¿Cómo mejor puedo hacer esto?

29
78lro

Las listas de Sharepoint tienen automáticamente una columna con "ID" que se incrementa automáticamente. Simplemente necesita seleccionar esta columna desde la pantalla "modificar vista" para verla.

54
BrewinBombers

No puede agregar un nuevo ID único generado automáticamente a una lista de SharePoint, ¡pero ya hay uno allí! Si edita la vista "Todos los elementos", verá una lista de columnas que no tienen marcada la opción de visualización.

Hay bastantes de estas columnas que existen pero que nunca se muestran, como "Creado por" y "Creado". Estos campos se usan dentro de SharePoint, pero no se muestran de forma predeterminada para no saturar la pantalla. No puede editar estos campos, pero puede mostrarlos al usuario. Si marca la casilla "Mostrar" junto al campo ID, obtendrá un campo ID único y generado automáticamente que se mostrará en su lista.

Echa un vistazo: ID único en la lista de SharePoint

Si desea controlar el formato del identificador único, puede crear su propio <FieldType> en SharePoint . MSDN también tiene un Visual How-To . Esto básicamente significa que está creando una columna personalizada.

WSS define el tipo de campo Contador (que es lo que está utilizando la columna de ID anterior). Nunca he tenido la necesidad de reutilizar esto o extenderlo, pero debería ser posible.

Puede existir una solución sin crear un <FieldType> personalizado. Por ejemplo: si desea ID únicos como CUST1, CUST2, ... podría ser posible crear una columna Calculada y usar el valor de la columna ID en su fórmula (="CUST" & [ID]). No he intentado esto, pero esto debería funcionar :)

5
dariom

Tuve este problema con una lista personalizada y aunque no es posible usar la columna autogenerada ID para crear una columna calculada, es posible usar un flujo de trabajo para hacer el trabajo pesado.

Creé una nueva variable de flujo de trabajo de tipo Número y la configuré para que sea el valor de la columna ID en el elemento actual. Entonces es simplemente una cuestión de calcular el valor de la columna personalizada y configurarlo; en mi caso, solo necesitaba que la numeración comenzara en 100,000.

enter image description here

4
David Clarke

Como se indicó, todos los objetos en sharepoint contienen algún tipo de identificador único (a menudo un contador basado en enteros para elementos de lista y GUID para listas).

Dicho esto, también hay una función disponible en http://www.codeplex.com/features llamada "Política de columna única", diseñada para agregar otra columna con un valor único. Un informe completo está disponible en http://scothillier.spaces.live.com/blog/cns!8F5DEA8AEA9E6FBB!293.entry

1
user15916

Por lo tanto, no estoy seguro de que realmente pueda pensar en por qué realmente necesitarías una identificación de "colección de sitios única", así que tal vez puedas comentar y hacernos saber lo que realmente está tratando de ser logrado aquí ...

De cualquier manera, todos los elementos tienen una propiedad UniqueID que es un GUID si usted realmente lo necesita: http://msdn.Microsoft.com/en-us/library/Microsoft.sharepoint.splistitem.uniqueid.aspx

1
spdevsolutions

está ahí por defecto. Es el campo de identificación.

1
kemiller2002

Si desea algo más allá de la columna de ID que está allí en todas las listas, probablemente tendrá que recurrir a un Receptor de eventos en la lista que "calcule" cuál debería ser el valor de su identificación única o usando un tipo de campo personalizado que tiene la lógica requerida incrustada en esto. Desafortunadamente, ambas opciones requerirán escribir e implementar código personalizado en el servidor y desplegar ensamblajes en el GAC, lo que puede ser mal visto en entornos donde no tienes control total sobre los servidores.

Si no necesita el identificador único para aparecer de inmediato, probablemente podría generarlo a través de un flujo de trabajo (ya sea con SharePoint Designer o un flujo de trabajo personalizado WF integrado en Visual Studio).

Desafortunadamente, las columnas calculadas, que parecen una solución obvia, no funcionarán para este propósito porque la identificación aún no está asignada cuando se intenta el cálculo. Si ingresa después del hecho y edita el elemento, el cálculo puede lograr lo que desea, pero en la creación inicial de un nuevo elemento no se calculará correctamente.

1
Sam Yates

Peetha tiene la mejor idea, hice lo mismo con una lista personalizada en nuestro sitio SP. Usar un flujo de trabajo para el incremento automático es la mejor manera, y no es tan difícil. Consulte este sitio web: http://splittingshares.wordpress.com/2008/04/11/auto-increment-a-number-in-a-new-list-item/

Le agradezco mucho a la persona que publicó esa solución, ¡es genial!

0
Marlon