Micro publicaciones guía para Power Apps, Power Automate, SharePoint y ademas algunos temas de Azure Dev Ops, Desarrollo Web, SQL Server, Asp.net.
miércoles, 24 de mayo de 2017
La búsqueda contextual no funciona pero si la de la colección de sitos en SharePoint
jueves, 23 de junio de 2016
La version destino del sitio de SharePoint es menor a la soportada por la aplicación SharePoint 2013 local o en nuestras instalaciones (On Premises)
jueves, 26 de mayo de 2016
Acceso denegado en la pagina de permisos para un usuario propietario o con permisos de Control Total en SharePoint
martes, 26 de abril de 2016
Como conocer los usuarios que estan conectados el día de hoy en SharePoint 2013
El tema es que tienes que tener configurado la colección de datos de uso y salud. Para ello ve al Central Adminsitration, a Montoring y luego Configure usage and health data collection.
Ahora el query t-sql para ver la información.
DECLARE @StartTime DATETIME = GETDATE() ,
@EndTime DATETIME = DATEADD(day, 1, GETDATE());
SELECT UserLogin AS [User] ,
COUNT(RowId) AS Hits ,
MAX(LogTime) AS LastAccessTime
FROM [dbo].[RequestUsage]
WHERE PartitionId IN (
SELECT PartitionId
FROM dbo.fn_PartitionIdRangeMonthly(@StartTime, @EndTime) )
AND LogTime BETWEEN @StartTime AND @EndTime
AND UserLogin IS NOT NULL
AND DATALENGTH(UserLogin) > 0
GROUP BY UserLogIn
viernes, 27 de noviembre de 2015
Script para saber el tamaño de una carpeta de una biblioteca en SharePoint 2010-2013
Esta solicitud me hicieron hace un momento y como no vi un ejemplo en especifico para esto decidi compartirlo con mis amigos lectores.
Los tres parametros que necesitamos son: url del sitio web en cuestion, el nombre de la biblioteca y el nombre de la carpeta. Como se muestra abajo:
$urlWebSite = “http://hostname/siteurl/sub-siteurl”
$nombreLibreria = "Nombre-Libreria"
$nombreCarpeta = "Nombre-Carpeta"
Luego debemos de obtener el objeto SPWeb para encontrar la bilioteca de la siguiente forma:
$web = get-SPWeb $urlWebSite
Una vez que lla obtuvimos el objeto SPWeb que representa el sitio web en SharePoint obtenemos la biblioteca con la colección Folders del objeto SPWeb, como se muestra a continuación:
$folder = $web.Folders[$nombreLibreria]
Ahora que almacenamos en la variable $folder la bilbioteca en cuestion, necesitamos obtener la carpeta que buscamos a través de la colección SubFolerds del objeto SPFolder, de la siguiente forma:
$subfolder = $folder.SubFolders[$nombreCarpeta]
Con eso tenemos ya la ubicación deseada para iniciar el proceso de lectura de los bytes ocupados en la carpeta y sub carpetas, para ello necesitamos crear un funcion que llamemos de forma recursiva hasta que obtengamos el espacio total ocupado.
[long]$total = 0
$total = GetFolderSize($subfolder)
La función es la siguiente:
function GetFolderSize ($Folder)
{
[long]$folderSize = 0
foreach ($file in $Folder.Files)
{
write-host "Nombre documento" $file.Name
$folderSize += $file.Length;
write-host "Total en bytes que va acumulando:" $folderSize
}
foreach ($fd in $Folder.SubFolders)
{
$folderSize += GetFolderSize -Folder $fd
}
return $folderSize
}
Lo que nos falta entonces es convertir los bytes en megas, y en gigas es es lo que hacemos a continuación:
$totalInMb = ($total/1024)/1024
$totalInMb = "{0:N2}" -f $totalInMb
$totalInGb = (($total/1024)/1024)/1024
$totalInGb = "{0:N2}" -f $totalInGb
write-host "Tamaño total de la carpeta" $StartWeb "es" $total " Bytes,"
write-host "son " $totalInMb "MB o " $totalInGb "GB"
Y ahora necesitamos indicarle a Windows que libere el recurso en memoria que ocupamos a través del objeto SPWeb la invocar el comando $web = get-SPWeb $urlWebSite , y lo hacemos de la siguiente forma:
$web.Dispose()
Para poner todo en orden debemo de prepar un contenedor de este script en un archivo con extension .ps1, por ejemplo:
C:\>GetFolderSize.ps1
y debera contener el siguiente orden del código descripto arriba:
<!--- Begin of File –->
function GetFolderSize ($Folder)
{
[long]$folderSize = 0
foreach ($file in $Folder.Files)
{
write-host "Nombre documento" $file.Name
$folderSize += $file.Length;
write-host "Total en bytes que va acumulando:" $folderSize
}
foreach ($fd in $Folder.SubFolders)
{
$folderSize += GetFolderSize -Folder $fd
}
return $folderSize
}
$urlWebSite = “http://hostname/siteurl/sub-siteurl”
$nombreLibreria = "Nombre-Libreria"
$nombreCarpeta = "Nombre-Carpeta"
$web = get-SPWeb $urlWebSite
$folder = $web.Folders[$nombreLibreria]
$subfolder = $folder.SubFolders[$nombreCarpeta]
$totalInMb = ($total/1024)/1024
$totalInMb = "{0:N2}" -f $totalInMb
$totalInGb = (($total/1024)/1024)/1024
$totalInGb = "{0:N2}" -f $totalInGb
write-host "Tamaño total de la carpeta" $StartWeb "es" $total " Bytes,"
write-host "son " $totalInMb "MB o " $totalInGb "GB"
$web.Dispose()
<!--- End of File –->
Y por ultimo utilizamo el Management Shell for SharePoint para ejecutar el script de la siguiente forma:
c:\>.\GetFolderSize.ps1
Eso es todo amigos.
SharePoint4Fun!,
Juan Manuel Herrera Ocheita
sábado, 28 de diciembre de 2013
Tips para el proceso de migración de SharePoint 2007 a 2013
Primero lo primero no se puede pasar de SharePoint 2007 a 2013 de un solo con el procedimiento de base de datos acoplada o Attach data base, con herramientas de terceros es posible pero es un proceso lento y no esta libre de errores. En 2007 hay dos procesos soportados In Place y Attached data base. Pero el último es el adoptado y único para versiones posteriores, por lo que mantendremos esta tendencia desde 2007.
Para realizar la migración debemos de contar por lo menos con dos granjas una de SharePoint 2010 y otra de SharePoint 2013.
No es recomendado realizar un downgrade es decir una reducción de versión en el proceso de migración. por ejemplo: Tenemos una granja SharePoint 2007 Edición Enterprise y deseamos convertirla a SharePoint 2013 Edición Standard o a SharePoint Foundation.
Lo contrario si es válido y posible, es decir hacer un upgrade o mejora de versión. Por ejemplo de WSS 3.0 a SharePoint 2013 Enterprise o Standard.
A continuación una tabla de la ruta de migración posible del 2007 al 2013 en sus diferentes ediciones:
A continuación una tabla de la ruta de migración recomendada (en color amarillo):
La recomendación se basa en que se utilice la misma edición de 2007 y hasta el final se utilice la edición deseada. Abajo una tabla de las rutas no soportadas en las cuales se suponen escenarios de color rojo donde erróneamente se escoge una ruta de upgrade en el intermedio (en la versión 2010) y luego se decide equivocadamente hacer un downgrade, esto acarreará muchos errores en la etapa de migración de 2010 a 2013 que puede incluso impedir la migración.
Debemos de recordar el idioma en que esta instalado el SharePoint debe de ser el mismo a migrar o bien contar con el paquete de idioma instalado en las granjas de SharePoint a migrar que en este artículo hablamos de 2010 y 2013.
La configuración de las granjas es algo que no debe de tomarse a la ligera ya que esto puede desembocar en un proceso rápido y efectivo o lento y frustrante.
La configuración de Hardware debe de analizarse desde el misma granja de SharePoint 2007, ya que podemos contar con imprevistos como el que no se haya instalado 2007 en una base de datos de SQL Server sino a través de la versión incrustada o embedded y esto hará el proceso de extracción de la base de datos más doloroso y complicado. Esto sucede cuando instalamos el SharePoint de forma solitaria o Stand Alone, instalación solamente diseñada para demostración y nunca recomendada para un ambiente de producción. La sorprendente es encontrar empresas que tienen así instalado su SharePoint en modo stand-alone.
La otra configuración importante es la de SharePoint 2010 que a pesar que sea una granja “puente” ya que solo se instalará para migrar el contenido de 2007 a 2010 y de 2010 a 2013. Debemos de asignar recursos adecuados para que el proceso de migración para que sea exitoso y eficiente. Esta granja posiblemente no cuente con muchos recursos pero debemos prestar atención a la RAM y espacio en disco y en los servicios y contenido que estamos migrando.
A continuación la configuración mínima y recomendada por Microsoft para SharePoint 2007 Front End en sus diferentes ediciones
A continuación mi recomendación práctica para una migración para la versión SharePoint 2007
Para el servidor Puente o sea el servidor SharePoint 2010 las recomendaciones son las siguientes:
En la medida de disponer de mayor cantidad de RAM se garantiza un proceso más rápido de migración. Y el espacio en disco se basa en el requerimiento de SharePoint de 5 veces el tamaño de la memoria RAM partiendo del mínimo recomendado de 80 GB + 5 Veces la RAM. Se asume por ser un servidor puente que solo será un servidor, pero esto dependerá de la granja de SharePoint 2007 de origen cuantos servidores tienen ya que no solo se migrará contenido sino servicios también.
A continuación la recomendación mínima de una granja de SharePoint 2013 y un servidor de SQL Server 2012 en sus diferentes ediciones:
Comandos útiles para la migración de base de datos de contenido adjunta:
Bueno eso es todo por este artículo espero lo encuentren útil.
Hasta la próxima, SharePoint4Fun!,
Juan Manuel Herrera Ocheita


