SSD: el síndrome de la Sharepoint dependencia

Sharepoint me proporciona seguridad y me hace sentir más fuerte. Las 10 cosas que más me gustan de Sharepoint.

10 puntos para entender a Project Server 2010

Microsoft Project es quizá la herramienta de gestión de proyectos más conocida y utilizada por los líderes de proyectos...

Diseño Gráfico en SharePoint

Serie de artìculos que nos ayudan a incorporar diseño gráfico en las implementaciones de SharePoint...

Revista CompartiMOSS

Artículos publicados en la revista especializada en SharePoint: CompartiMOSS.

Contacto

Enviame un correo :-)

martes, 16 de abril de 2019

¿Cómo agregar un agrupamiento a la vista predeterminada en SharePoint 2010 con c#?

SPList listaSBNueva = oWebsite.Lists["Subfrentes"];
SPView vistaSB = listaSBNueva.DefaultView;
vistaSB.Query = "<GroupBy Collapse=\"FALSE\" GroupLimit=\"100\"><FieldRef Name=\"Frente\" Ascending=\"TRUE\" /></GroupBy><OrderBy><FieldRef Name=\"Frente\" Ascending=\"TRUE\"/></OrderBy>"; ;
vistaSB.Update();

El resultado:


lunes, 25 de marzo de 2019

Al menos uno de los tipos de campo no se ha instalado correctamente. Vaya a la página de configuración de la lista para eliminar estos campos

El siguiente error es bastante común cuando estamos programando usando c# en SharePoint:

Al menos uno de los tipos de campo no se ha instalado correctamente. Vaya a la página de configuración de la lista para eliminar estos campos.

En inglés:

One or more field types are not installed properly...

La mayoría de las veces el problema es que no estamos usando el nombre interno del campo. O estamos usando el que nosotros creemos que es el nombre interno del campo, pero en realidad SharePoint lo cambió por otro. Esto se debe a que:
  1. Ya existe un campo con ese nombre
  2. El campo es muy largo y se trunca
  3. O se reemplazan caracteres especiales
Sin embargo, existe una situación un poco más compleja de detectar.

Supongamos que estamos modificando un sólo campo desde C#:

Ejemplo:

itemHito["Flag_Pantalla_Medida"] = "SI"
itemHito.Update();

Obtenemos el error, pero estamos seguros que el nombre del campo es correcto.
Lo que puede suceder es que exista un evento que haga referencia a otro campo que no estamos proporcionando, por ejemplo:

public override void ItemUpdating(SPItemEventProperties properties)

(...)

nuevo = properties.AfterProperties["Estado_Cumplimiento"];

Esa línea de código produce el error. Para resolverlo, se debe agregar el campo "Estado_Cumplimiento" al momento de hacer el update.

Hasta la próxima!