Las columnas de sitio son un mecanismo provisto por WSS 3.0 para reusar campos de listas o tipos de contenido.
Características:
- Visibilidad: una columna definida en una colección de sitios puede ser vista por todos los sitios de la colección.
- Herencia:
- Alta: al agregar una columna de sitio en una lista nos aseguramos contar de entrada con los mismos atributos. Los cambios que realicemos posteriormente en la la lista, sólo son aplicables a la lista en donde agregamos la columna.
- Baja: no se puede eliminar una columna de sitio si está siendo usada en alguna lista o tipo de contenido.
- Modificación: si se realizan cambios en una columna de sitio, se puede elegir que los mismo sean propagados a los hijos.
Definir la columna de sitio en una Feature
Las columnas de sitio pueden ser definidas utilizando CAML. Ejemplo:
<Field ID="{}"
Name="Nombre"
SourceID=http://schemas.microsoft.com/sharepoint/v3
StaticName="Nombre"
DisplayName="$Resources:core,Nombre;"
Type="Text">
</Field>
La siguiente lista enumera los atributos posibles del elemento Field. Para mayor información consultar MSDN: Elemento Field (Definición):
- Aggregation = "sum" | "count" | "average" | "min" | "max" | "merge" | "plaintext" | "first" | "last"
- AllowDeletion = "TRUE" | "FALSE"
- AllowHyperlink = "TRUE" | "FALSE"
- AllowMultiVote = "TRUE" | "FALSE"
- AppendOnly = "TRUE" | "FALSE"
- AuthoringInfo = "Text"
- BaseType = "Integer" | "Text"
- CalType = "Integer"
- CanToggleHidden = "TRUE" | "FALSE"
- ClassInfo = "Text"
- ColName = "Text"
- Commas = "TRUE" | "FALSE"
- Decimals = "Integer"
- Description = "Text"
- Dir = "Text"
- DisplaceOnUpgrade = "TRUE" | "FALSE"
- DisplayImage = "Text"
- DisplayName = "Text"
- DisplayNameSrcField = "Text"
- Div = "Number"
- EnableLookup = "TRUE" | "FALSE"
- ExceptionImage = "Text"
- FieldRef = "Text"
- FillInChoice = "TRUE" | "FALSE"
- Filterable = "TRUE" | "FALSE"
- FilterableNoRecurrence = "TRUE" | "FALSE"
- ForcedDisplay = "Text"
- Format = "Text"
- FromBaseType = "TRUE" | "FALSE"
- Group = "Text"
- HeaderImage = "Text"
- Height = "Integer"
- Hidden = "TRUE" | "FALSE"
- HTMLEncode = "TRUE" | "FALSE"
- ID = "Text"
- IMEMode = "inactive"
- Indexed = "TRUE" | "FALSE"
- IsolateStyles = "TRUE" | "FALSE"
- JoinColName = "Text"
- JoinRowOrdinal = "Integer"
- JoinType = "INNER" | "LEFT OUTER" | "RIGHT OUTER"
- LCID = "Integer"
- List = "Text"
- Max = "Number"
- MaxLength = "Integer"
- Min = "Number"
- Mult = "TRUE" | "FALSE"
- Name = "Text"
- NegativeFormat = "MinusSign" | "Parens"
- Node = "Text"
- NoEditFormBreak = "TRUE" | "FALSE"
- NumLines = "Integer"
- Percentage = "TRUE" | "FALSE"
- PIAttribute = "Text"
- PITarget = "Text"
- PrependId = "TRUE" | "FALSE"
- Presence = "TRUE" | "FALSE"
- PrimaryKey = "TRUE" | "FALSE"
- PrimaryPIAttribute = "Text"
- PrimaryPITarget = "Text"
- ReadOnly = "TRUE" | "FALSE"
- ReadOnlyEnforced = "TRUE" | "FALSE"
- RenderXMLUsingPattern = "TRUE" | "FALSE"
- Required = "TRUE" | "FALSE"
- RestrictedMode = "TRUE" | "FALSE"
- ResultType = "Text"
- RichText = "TRUE" | "FALSE"
- RichTextMode = "Text"
- RowOrdinal = "Integer"
- Sealed = "TRUE" | "FALSE"
- SeparateLine = "TRUE" | "FALSE"
- SetAs = "Text"
- ShowAddressBookButton = "TRUE" | "FALSE"
- ShowField = "Text" | "Choice" | "Counter"
- ShowInDisplayForm = "TRUE" | "FALSE"
- ShowInEditForm = "TRUE" | "FALSE"
- ShowInFileDlg = "TRUE" | "FALSE"
- ShowInListSettings = "TRUE" | "FALSE"
- ShowInNewForm = "TRUE" | "FALSE"
- ShowInVersionHistory = "TRUE" | "FALSE"
- ShowInViewForms = "TRUE" | "FALSE"
- Sortable = "TRUE" | "FALSE"
- SourceID = "Text"
- StaticName = "Text"
- StorageTZ = "UTC" | "Abstract"
- StripWS = "TRUE" | "FALSE"
- SuppressNameDisplay = "TRUE" | "FALSE"
- TextOnly = "TRUE" | "FALSE"
- Title = "Text"
- Type = "Data_Type"
- UniqueId = "Text"
- UnlimitedLengthInDocumentLibrary = "TRUE" | "FALSE"
- URLEncode = "TRUE" | "FALSE"
- URLEncodeAsUrl = "TRUE" | "FALSE"
- UserSelectionMode = "Text"
- UserSelectionScope = "Integer"
- Viewable = "TRUE" | "FALSE"
- Width = "Integer"
- WikiLinking = "TRUE" | "FALSE"
- XName = "Text"
Links interesantes:
- http://grounding.co.za/blogs/brett/archive/2008/09/08/sharepoint-how-to-provisioning-a-site-column-with-caml.aspx
- http://msdn.microsoft.com/es-es/library/aa543203.aspx (Procedimiento para agregar una columna a un sitio: SPFieldCollection.Add y SPFieldCollection.AddFieldAsXml)
- http://sharepointmagazine.net/technical/development/customizing-the-user-experience-of-sharepoint-custom-fields-deep-dive-part-5-of-6
Hasta la próxima…
0 comentarios:
Publicar un comentario