sábado, 19 de abril de 2014

Permiso: Replicate Directory Changes

Cuando realizamos una sincronización de perfiles de usuario del AD a Sharepoint, la cuenta de usuario que realiza la importación debe tener el permiso Replicate Directory Changes sobre el dominio sobre el cual queremos realizar la sincronización.

NetBiosDomainNamesEnabled

Para hacerlo podemos seguir el siguiente artículo:http://technet.microsoft.com/en-us/library/hh296982(v=office.15).aspx#RDCdomain

Este permiso permite que una cuenta consulte por cambios en el directorio.

Hay un caso especial donde se requerirá un permiso especial para poder importar correctamente la información. Veamos los dos casos posibles:

  1. El nombre NETBIOS de cualquier dominio con el que está realizando la sincronización es IGUAL a su nombre de dominio completo (FQDN)
  2. El el nombre NETBIOS de cualquier dominio con el que está realizando la sincronización es DIFERENTE de su nombre de dominio completo (FQDN)

Cómo podemos saber el NETBIOS de nuestro dominio? Una posibilidad es usar “Active Directory Users and Computers”, click derecho sobre el dominio y “Properties”.

También podems averiguarlo mediante nbtstat –n

Para el caso 1, necesitaremos el permiso Replicate Directory Changes sobre el dominio sobre el cual queremos realizar la sincronización.

Para el caso 2, necesitaremos un permiso especial más, además del seteado en el caso 1.

Por ej: suponemos que nuestro dominio sea

Domain netbios name: CONTOSO

FQDN of Domain: contoso.corp.com

El permisos que necesitaremos es el de Replicate Directory Changes sobre el container (CN) de configuration de nuestro dominio.(Procedimiento)

CN=Configuration, DC=corp,DC=com

clip_image007

En el segundo caso también deberemos setear la propiedad NetBiosDomainNamesEnabled en el User Profile de nuestra granja.

Ej:

  • Get-SPServiceApplication
    • Obtendremos el GUID del User Profile Service Application
  • $var = Get-SPServiceApplication –Identity GUID
    • El GUID es el obtenido del paso anterior Get-SPServiceApplication
  • $var.NetBiosDomainNamesEnabled = 1
    • En vez de 1 también podremos usar “True”
  • $var.update()
  • $var.NetBiosDomainNamesEnabled
    • Verifico si quedo correctamente seteado
  • Realizar un IISreset

Errores al abrir un archivo de office desde Sharepoint

Si al abrir un archivo office (de cualquier tipo de la suite) nos lanza alguno de los siguientes mensajes:

“The file is being downloaded instead of opening directly from SharePoint”

" 'Edit Document' requires a Windows SharePoint Services-compatible application.”

"The document could not be opened for editing. A Microsoft SharePoint Foundation compatible application could not be found to edit the document."

“To open this workbook, your computer must be running a supported version of Microsoft Office_application and a browser that supports opening files directly from the Office Web Apps”

Esto se debe a que se tiene más de una versión de Office instalada en la máquina. Podemos verificarlo revisando las versiones del add-on SharePoint OpenDocuments Class en el IE (Tools > Manage Add-ons).

image

Siempre debo tener un sólo add-on registrado (OWSSUPP.DLL), para ello debe remover la feature “Microsoft SharePoint Foundation Support” de la versión incorrecta.

image

A continuación debo reparar la versión de Office correcta, y reiniciar el sistema.

jueves, 17 de abril de 2014

Ocultar Site Assets del browser en Sharepoint 2013

Un usuario me pidió ocultar la librería Site Assets del acceso de usuarios.

image

Podemos ocultar la librería de dos maneras:

  • Vía powershell

$webSite = Get-SPWeb $WebUrl
$list = $webSite.Lists[$ListName]
$list.Hidden = $true
$list.Update()
$webSite.Dispose()

  • Vía Sharepoint Designer, seleccionando “Hide from browser”

image

No veo más la librería en el navegador

image

En el navegador podremos ingresar vía la url

/SiteAssets/Forms/AllItems.aspx

Configurar Feed RSS de una lista – Sharepoint 2013

Ingresar a Site Settings > Site Administration > RSS

image

verifica que esté marcado “Allow RSS feeds in this site collection” y “Allow RSS feeds in this site”

image

A continuación ingresa a List Settings / RSS settings

image

Configura el título, la imagen, las columnas que deseas mostrar y la cantidad de items a mostrar.

image

image

image

En el caso que necesitemos más fuentes RSS (Ej: otras columnas) podemos crear una vista, y a continuación editarla, cuando se edita se muestra el ícono de RSS.

image

Qué pasa si no somos administradores del site collection o no somos owners para cambiar la configuración de la lista,.

image

Podemos obtener el feed mediante la siguiente manera:

Ingresa a la configuración de la lista, y copiar la url, ej:http://urlwebsit/_layouts/15/listedit.aspx?List={8F11E429-E4D1-4459-A6CA-D3E942D70859}

Reemplazar el texto “listedit” por “listfeed”
http://urlwebsite/_layouts/listfeed.aspx?List={8F11E429%2DE4D1%2D4459%2DA6CA%2DD3E942D70859}

image

Al crear una tarea me lanza el siguiente mensaje “The content of this item will be sent as an e-mail message to the person or group assigned to the item.”

image

Este mensaje se debe a que está seteado la opción  “List Settings > Advanced Settings > Send e-mail when ownership is assigned? (Yes/No)”

image

También se puede deshabilitar por powershell

Add-PSSnapin Microsoft.SharePoint.Powershell 
$web = Get-SPWeb "http://urlWebSite"
$list = $web.Lists.TryGetList("Tasks") 
$list.EnableAssignToEmail = $false
$list.Update()

Deshabilitar el throttling para una lista o librería en particular

Suele pasar que tenemos que deshabilitar el throttle para una lista, pero no queremos deshabilitarlo para todo el web application, para ello podemos usar el siguiente comando:

$Site  =  Get-SPWeb -Identity <SiteURL>
$List  =  $Site.Lists["NombreLista"]
$List.EnableThrottling =  $false
$List.Update()
$List.IsThrottled

Agregar código html en columnas autocalculadas (Sharepoint 2010/2013)

Creo una columna autocalculada

image

Fórmula:

="<DIV style='background-color:red'>"&Title&"</DIV>"

Seteo que el tipo sea “Number”

image

Y ya tendremos nuestro html en las columnas.

image

IMPORTANTE: siempre usa el tipo de columna “Number” (currency también funciona), en caso contrario no te funcionará.

 

Columna calculada con el ID del item (Calculated column with ID of item)

Un pedido muy común es utilizar el ID del item en la fórmula de una columna calculada. Se puede utilizar entonces el ID? Si se puede utilizar (no soportado por MS) pero puede tener un comportamiento extraño su uso. Veamos un ejemplo.

image

Creo un item

image

Y veo que el ID no se concateno.

image

Ahora vamos de nuevo a la edición de la fórmula, no edito nada, sólo presiono OK y veamos los resultados.

image

Ahora el ID se concateno.

image

Que pasa si ahora edito el item?

image

image

El ID desapareció.

image

RESUMEN:

  • Sólo se concatena el ID cuando creo la columna autocalculada o la edito.
  • Se borra el ID cuando creo items o los edito
  • NO se debe usar la columna ID en una columna autocalculada

Que podemos utilizar para utilizar el ID en una columna (ya no puede ser de tipo autocalculada, debe ser de tipo “Single line of text”):

  • Workflows: es más fácil de implementar
  • Event handlers (ItemUpdating, ItemAdding): es más complejo de implementar
  • Client Object (set_item): dificultad media
  • Infopath (sigue vivito y coleando después de las últimas novedades de MS sobre infopath): también es fácil de implementar

Les explico un poco como se puede hacer con Sharepoint Designer.

Creamos de nuevo la columna pero de tipo Single line of text

image

Voy a Sharepoint Designer y creo un workflow

image

Elijo “Actualizar elemento de lista”

image

image

image

image

image

Selecciono que se dispare cuando se cree el workflow

image

y lo publico.

Agrego un item para probarlo.

image

Espero unos segundos una vez cargado,y actualizo la página.

image

Quedo el ID correctamente seteado.

Ahora queremos ocultar el campo I_Autocalculate del form de carga, porque al hacer autocalculado no debería estar.

Voy a la configuración avanzada de la lista, y marco “Allow Management of content types”

image

Selecciono el content type “Item”, y a continuación selecciono la columna “ID_Autocalculate”

image

Seteo la opción “Hidden”

image

Ahora cuando voy a agregar el item, ya no veo el campo

image

image