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.

martes, 19 de septiembre de 2017

Contrátame

Amigos lectores. Si necesitan contratarme para una consulta, proyecto o trabajo por hora, pueden hacerlo desde cualquier parte del punto a través de Workana.Este es mi perfil: https://www.workana.com/freelancer/juan-pablo-pussacq-labordeSaludos!...

martes, 11 de julio de 2017

MVP año 7 2017-2018

​...

martes, 4 de julio de 2017

Impedir caracteres especiales con una validación de columna

Les paso este interesante código que se puede agregar en una validación de columna para impedir el ingreso de caracteres especiales:=AND(IF(ISERROR(FIND(",", [ColumnName])),TRUE),IF(ISERROR(FIND("&", [ColumnName])),TRUE),IF(ISERROR(FIND("!", [ColumnName])),TRUE),IF(ISERROR(FIND("@", [ColumnName])),TRUE),IF(ISERROR(FIND("~", [ColumnName])),TRUE),IF(ISERROR(FIND("#", [ColumnName])),TRUE),IF(ISERROR(FIND("$", [ColumnName])),TRUE),IF(ISERROR(FIND("%", [ColumnName])),TRUE),IF(ISERROR(FIND("*", [ColumnName])),TRUE),IF(ISERROR(FIND("(", ...

miércoles, 28 de junio de 2017

Vista BY MY GROUPS (lista TASKS)

Hace poco hicieron una pregunta en https://sharepoint.stackexchange.com/questions/219108/show-all-tasks-assigned-to-me-including-those-assigned-to-me-and-multiple-users/219212#219212 y me pareció un buen momento para recordar que la hay una vista prearmada en la lista de tareas que permite filtrar:Por las tareas asignadas a miPor las tareas asignadas a los grupos a los que pertenezcoSe llama "Por mis grupos" y pueden verla en esta imagen:...

jueves, 15 de junio de 2017

Validar que un campo fecha se encuentre entre hoy 4 meses futuros

Simplemente creamos una validación de columna como esta:=AND(date1>TODAY();date1<(TODAY()+120))...

lunes, 12 de junio de 2017

Método simple para hacer un campo obligatorio sólo en la edición - Alternativa 2

En un artículo anterior mostré cómo resolver este tema con una validación de lista. http://surpoint.blogspot.com.ar/2017/06/metodo-simple-para-hacer-un-campo.htmlOtra opción es hacerlo con JSLink. El resultado es:Les dejo el código:(function () {var overrideTest2Ctx = {};overrideTest2Ctx.Templates = {};overrideTest2Ctx.Templates.Fields = {'test_x0020_2': { 'EditForm': hacerRequerido }};SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideTest2Ctx);})();function...

viernes, 9 de junio de 2017

JSLink Ejemplo simple en un Formulario

Supongamos que queremos simplemente que una columna utilice color rojo tal como se ve en esta imagen:Simplemente creamos el siguiente script JSLINK (haciendo especial hincapié en lo que resalté en negrita):(function () {var overrideCtx = {};overrideCtx.Templates = {};overrideCtx.Templates.Fields = {'test_x0020_1': { 'DisplayForm': pintarDeRojo }};SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx);})();function pintarDeRojo(ctx)...

JSLink Ejemplo simple en una Vista

Supongamos que queremos simplemente que una columna utilice color rojo tal como se ve en esta imagen: Simplemente creamos el siguiente script (haciendo especial hincapié en lo que resalté en negrita): (function () { var overrideCtx = {}; overrideCtx.Templates = {}; overrideCtx.Templates.Fields = { 'test_x0020_1': { 'View': pintarDeRojo } }; SPClientTemplates.TemplateManager.RegisterTemplateOverrides(overrideCtx); })(); function...

Método simple para hacer un campo obligatorio sólo en la edición

Creamos una validación de lista que sólo se ejecute en la edición, no en el alta del ítem. Para ello comparamos la fecha de creación con la de modificación. Si son iguales, es el alta, sino la modificación:Fórmula:=OR(Creado=Modificado;AND(Creado<>Modificado;NOT(ISBLANK([test 1]))))El ítem se crea sin valor en "Test 1"Resultado:Cuando intento modificarlo:...

lunes, 3 de abril de 2017

¿Cómo cambiar permisos a una lista en SharePoint 2010 en C#?

Supongamos que necesitamos realizar lo siguiente en una lista:Quebrar la herenciaBorrar los permisosAsignar al grupo "propietarios del sitio" con permisos de colaboraciónBorrar al usuario actual que se asignó en el paso 2 (para esto debemos asegurarnos de que sea administrador de la colección de sitios o esté dentro del grupo de propietarios)Esta es una posible forma de hacerlo:SPList listaE = oWebsite.Lists.TryGetList("Entregables");listaE.BreakRoleInheritance(false);SPGroup groupAdmin = listaE.ParentWeb.AssociatedOwnerGroup;if (groupAdmin !=...