| Aplicaciones de Servicios | Descripción | Add-in/Instalador |
| Word Viewing Service | Permite a los usuarios ver o editar documentos word dentro del navegador. | Office Web Apps |
| PowerPoint Service | Permite a los usuarios ver o editar documentos powerpoint dentro del navegador. | Office Web Apps |
| Excel Calculation Services | Permite a los usuarios ver o editar documentos excel dentro del navegador. | Office Web Apps |
| Project Application Service and Project Server Service Application | Microsoft Project Server 2010 permite tener varias instancias de acceso web, exponer planificaciones sobre datos de Microsoft Project, y exponer servicios webs para interactuar con datos de Microsoft Project 2010. | Microsoft Project Server 2010 |
| Microsoft SQL Server Power Pivot for Microsoft SharePoint | Microsoft SQL Server PowerPivot da la posibilidad de analizar gran cantidad de datos. | SQL Server 2008 R2 |
| Microsoft SQL Server Reporting Services (SSRS) | Integra Microsoft SQL Server Reporting Services con SharePoint Foundation 2010 o SharePoint Server 2010 configurando un servidor de reportes para ejcutarse en modo integrado con SharePoint. | SQL Server 2008 R2 Reporting Services Add-in for SharePoint Products |
domingo, 25 de marzo de 2012
Aplicaciones de servicios que requieren add-in o instaladores
Ver archivos html en el navegador sobre Sharepoint 2010
Si haces click sobre un archivo .html en una document library, Sharepoint te mostrará el cartel de “Guardar”. Esto evita ver los archivos html en el navegador.
Para resolver esto, se debe hacer lo siguiente:
- Abrir SharePoint Central Administration
- Click sobre Application Management
- En la sección Web Applications, click sobre Manage web applications
- Seleccionar el web application deseado
- En la ribbon elegir Web Application
- Abrir el menú de General Settings y hacer click sobre General Settings
- Ir hasta la sección Browser File Handling y cambiar la opción a Permisive
sábado, 24 de marzo de 2012
Incrementar el tamaño de subida de archivos Sharepoint 2010
Los valores por default de subida de archivos son:
Sharepoint 2010: 50 MB
IIS 7 ~ 30 MB
1 - Incrementar el tamaño via el central administration
- Ingresar al Central Administration
- Ir a la sección “Manage Web Applications”
- Seleccionar el web application deseado
- Seleccionar “General Settings” en la ribbon
- En la sección “Maximum Upload Size”, cambio el valor al deseado
2 – Incrementar el tamaño del request del IIS 7
- Abro una línea de comandos
- Ejecuto lo siguiente: %windir%\system32\inetsrv\appcmd set config -section:requestFiltering -requestLimits.maxAllowedContentLength:valorEnBytes
200 MB –>200x1024x1024=209715200 bytes
Entonces valorEnBytes sería 209715200
3 – Incrementar el tiempo de timeout de la conexión IIS7
Si se sube archivos grandes, puede ser que nos lance un error de timeout, el valor default es de 120 segundos.
- Abro el IIS
- Selecciono el web application
- Voy a Advanced Settings
- Expando “Connection Limits”
- Seteo el valor deseado en “Connection Time-out (seconds)”
Seteo el valor a 1200 segundos.
4 – Incremento el valor de executionTimeOut
Ingreso a 'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS' (el path depende de donde lo hayas instalado)
Abro el 'web.config' (previo backup), y edito la sección donde está el path “upload.aspx”
<location path="upload.aspx">
<system.web>
<httpRuntime executionTimeout="999999" maxRequestLength="2097151" />
</system.web>
</location>
También edito el web.config en el path C\Inetpub\wwwroot\wss\Virtual Directories\<Virtual Directory>, la sección httpRuntime
<httpRuntime executionTimeout="999999" maxRequestLength="2097151" />
También edito el web.config del siguiente path: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\CONFIG
<httpRuntime executionTimeout="999999" maxRequestLength="2097151" />
Opcional – Aumentar el tamaño de la propiedad large-file-chunk-size
También es recomendable aumentar el tamaño de la propiedad large–file–chunk–size. El valor dependerá del tamaño máximo de subida que quieras subir. Recomendación: arranca con 50MB y sigue probando hasta que sea el adecuado, recuerda que los archivos se almacenarán en el WFE hasta que son envíados. Ej: archivo de 150 MB, se dividirá en 3 chunks de 50 MB al bajar el documento.
stsadm.exe –o setproperty –pn large–file–chunk–size –pv 52428800
Conversión de documentos
Sharepoint 2010 provee 4 servicios de conversión
- InfoPah Form a Web Page (xml into html)
- Word Document a Web Page (docx into html)
- Word document con Macros a Web Page (docm into html)
- XML a Web Page (xml into html)
- Document Conversions Launcher Service
- Document Conversions Load Balancer Services
- Habilitar los 2 servicios (Central Administration > Manage Services on Server).
- Configurar cada servicio (Central Administration > Manage Services on Server).
Launcher Service: Set Load Balancer server and port number 8082.
Load Balancer Service: scheme (http or https) and port number 8093. - Habilitar “Enable document conversions” para cada web application (Central Administration > General Application Settings > Configure document conversions)
Enable for webapp, Load Balancer server, block conversion interval. - Habilitar conversión de documentos para los content types a nivel de site collection(Site Settings > Content Types under Galleries > Select a content type > Manage document conversion for this content type) .
CAML Queries
Query Syntax:
1. Joins lógicos:
a. And: Ej. <And><expression1><expression2></And>
b. OR: Ej.<OR><expression1><expression2></OR>
2. Operador de comparación
a. BeginsWith: busca por un string al inicio de una columna.
<BeginsWith><FieldRef Name = “ColumnName”/><Value Type = “Value”/><XML /></BeginsWith>
b. Contains: busca por un string en cualquier parte de una columna.
<Contains><FieldRef Name = “ColumnName”/><Value Type = “Value”/><XML /></Contains>
c. Neq: Operador aritmético que significa “no igual a”
<Neq> <FieldRef Name = “Field_Name”/> <Value Type = “Field_Type”/> <XML /> </Neq>
d. Eq: Operador aritmético que significa “igual a”
<Eq> <FieldRef Name = “Field_Name”/> <Value Type = “Field_Type”/> <XML /></Eq>
e. In: Especifica un item de lista especificado por el campo FieldRef es igual a un conjunto de valores
<In><FieldRef Name = “Field_Name”/><Values><Value Type = “Field_Type”/></Values><XML /></In>
f. Gt: Operador aritmético que significa “más grande que”
<Gt><FieldRef Name = “Field_Name”/><Value Type = “Field_Type”/><XML /></Gt>
g. IsNotNull: Retorna ítems que no tienen valores nulos
<IsNotNull><FieldRef Name = “Field_Name”/><Value Type = “Field_Type”/><XML /></IsNotNull>
h. IsNull: Retorna ítems que tienen valores nulos o vacíos
<IsNull><FieldRef Name = “Field_Name”/><Value Type = “Field_Type”/><XML /></IsNull>
i. Includes:Si el campo especificado es un campo de lookup que permite varios valores, se especifica que elemento de valor está incluido en el elemento de la lista para el campo especificado por el elemento FieldRef.
<Includes><FieldRef Name = “Field_Name”/><Value Type = “Field_Type”/><XML /></Includes>
j. Lt : Operador aritmético que significa “más chico que”
<Lt><FieldRef Name = “Field_Name”/><Value Type = “Field_Type”/><XML /></Lt>
k. NotIncludes: Si el campo especificado es un campo de lookup que permite varios valores, se especifica que elemento de valor está EXCLUIDO en el elemento de la lista para el campo especificado por el elemento FieldRef.
<NotIncludes><FieldRef Name = “Field_Name”/><Value Type = “Field_Type”/><XML /></NotIncludes>
3. Group Operators
a. GroupBy: permite agrupar la info devuelta
<GroupBy Collapse = “TRUE” | “FALSE”><FieldRef Name = “Field_Name”/></GroupBy>
b. OrderBy: determina el orden de la consulta
<OrderBy Override = “TRUE” | “FALSE” UseIndexForOrderBy = “TRUE” | “FALSE”>
<FieldRef Ascending = “TRUE” | “FALSE” Name = “Text” />
</OrderBy>
4. Value Elements
a. Month: Se utiliza en el elemento DateRangesOverlap para recuperara partir de un calendario de todas las instancias de un evento recurrente que se producen dentro de un mes.
<DateRangesOverlap> <FieldRef Name= “EventDate” /> <FieldRef Name= “EndDate” /> <FieldRef Name= “RecurrenceID” /> <Value Type=\”DateTime\”> <Month /> </Value></DateRangesOverlap>
b. Now: Devuelve la fecha y hora actuales.
<Now></Now>
c. Today: Presenta la fecha actual en el formato que sea relativa a la zona del servidor, hora local. Para los servidores en los Estados Unidos, el formato es DD / MM / AAAA (por ejemplo,01/21/2001).
<Today Offset = “Integer”></Today>
d. UserId: Contiene el número único de identificación del usuario autenticado actualmente de un sitio, tal como se define en la tabla UserInfo de la base de datos de contenido.
<UserID></UserID>
Tips #9–Sharepoint 2010
1-Error “Cannot connect to the configuration database” (No puede conectarse a la base de datos de configuración)
Verificar si el servicio MSSQLSERVER en el servidor de SQL SERVER esta iniciado.
2-Calcular el tamaño de las bases de datos de administración de search, de crawl y de property.
La base de datos de administración de search requiere aproximadamente 10GB. Las restantes, use la siguiente fórmula:
3-Verificar las managed property actuales del servicio de search
Get-SPEnterpriseSearchMetadataManagedProperty -SearchApplication "Search Service Application" | where {$_.Retrievable -eq $false}
4-Poner como sólo lectura una base de contenido
- Abrir Microsoft SQL Server Management Studio y conectarse al servidor SQL de SharePoint
- Elija la base de contenidos deseada
- Seleccione "Propiedades" mediante el botón derecho sobre la base
- En la pantalla de Propiedades seleccione Opciones
- En la sección de "Otras opciones" - Estado - "Base de datos de solo lectura" seleccione "True" y acepte los cambios
5-Valor nulo al usar property bag element
1: <?xml version="1.0" encoding="utf-8"?>
2: <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
3: <PropertyBag ParentType="Web">
4: <Property Name="letras en minuscula" Type="string" Value="valor" />
5: </PropertyBag> 6: </Elements>6-Sincronizar información del usuario desde el AD
Set-SPUser -Identity sharepoint\usuario -Web http://spssite –SyncFromAD
7-Deshabilitar el borrado de una lista
PS > $spWeb = Get-SPWeb http://sharepointsite.com
PS > $spList = $spWeb.Lists["Tareas"]
PS > $spList.AllowDeletion = $false
PS > $spList.Update()
PS > $spWeb.Dispose()
8-Remover una base de contenidos via PowerShell
Get-SPContentDatabase -Identity "ContentDBaBorrar" | Remove-SPContentDatabase Confirm
9-Obtener la url de los adjuntos de un objeto SPListItem
1: private string[] GetAttachmentUrls(SPListItem item)2: {3: return from string fileName in repeaterItem.Attachments4: orderby fileName5: select SPUrlUtility.CombineUrl(item.Attachments.UrlPrefix, fileName);6: }
10-Abrir un popup con contenido aspx
1: var options = SP.UI.$create_DialogOptions();options.width = 900;2: options.height = 400;3: options.resizable = 1;4: options.scroll = 1;5: options.url = '{SiteUrl}/_layouts/ApplicationPage.aspx';6: SP.UI.ModalDialog.showModalDialog(options);
11-Saber que librerías tiene habilitada la opción de recibir emails.
1: SELECT2: Webs.FullUrl As LibraryURL,3: AllLists.tp_Title As LibraryTitle,4: AllLists.tp_EmailAlias As emailAlias5: FROM6: AllLists7: INNER JOIN8: webs on AllLists.tp_WebID = Webs.Id9: WHERE10: AllLists.tp_EmailAlias IS NOT NULL
Links útiles #12 – Sharepoint 2010
1-Search multilenguaje Sharepoint 2010
2-Crear un slider de contenido con Sharepoint y Jquery
3-Alias de SQL Server 2008 R2 con Sharepoint 2010
4-Filtrar una lista de Sharepoint con jquery y un combo
http://request4it.wordpress.com/2012/03/13/filter-a-sharepoint-list-with-jquery/
5-Puertos necesarios para un farm de Sharepoint 2010
6-Script para habilitar todas las features de IIS para usar Sharepoint 2010
http://otak-otak-it.blogspot.com.ar/2012/03/automatic-iis-configuration-script-for.html
7-Eligiendo la tecnología de reportes correcta
8-Reglas: Analizador/mantenimiento de base de datos de Sharepoint 2010
9-Configurando el Panel de refinamiento Sharepoint 2010
10-Configurar el servicio de user profile
http://www.anhero.org/how-to-configuration-the-user-profile-service-in-sharepoint-2010/
11- Extendiendo la parte social de Sharepoint
12-Crear una columna autoincremental con formato definido
http://dlairman.wordpress.com/2011/01/10/add-a-unique-auto-incrementing-column-to-a-sharepoint-list/
13-Desarrollando un BCS de Sharepoint 2010 con Visual Studio 2010
14-Almacenar datos de configuración para los jobs
15-Acceder a Sharepoint 2010 vía tecnologías de cliente.
16-Cómo saber a que proceso atachar el debbuger en Visual Studio 2010 y Sharepoint 2010
17-Servicios disponibles en las dos versiones de Sharepoint 2010 (Standart & Enterprise)
18-Importar las managed property y crawled property
http://gallery.technet.microsoft.com/Import-Search-CrawledManage-1fa3d94b
19-Optimizando la performance de reporting services
20-Mejores prácticas para backups & restore de Sharepoint 2010
http://smallcitydesign.com/sharepoint-2010-backup-and-recovery-best-practices/
sábado, 17 de marzo de 2012
Link útiles #11–Sharepoint 2010
1- Buscar contenido externo usando BCS
2-Configurar Form Based Authentication y SQL Membership Provider
3-Usando CONTAINS con FULLTETSQLQUERY
4-Crear columnas o fields de listas de manera programática (Single line of text, multiline text, boolean, number, choice, user field, date time field, lookup field, modificar una vista)
5-Redireccionar un formulario infopath después de hacer el submit
http://www.tcscblog.com/2011/06/29/redirect-an-infopath-form-web-part-after-submit/
6-Filtrar un combo en infopath, dependiendo del valor de otro valor seleccionado
7-Usar una conexión de base de datos en infopath
http://dataqueen.unlimitedviz.com/2012/03/use-a-sql-server-data-source-for-an-infopath-pick-list/
8-Configurar el servicio de Search en Sharepoint 2010
9-Configurar el Servicio de User Profile
10-Permitir SSL en Sharepoint 2010
Evitar el prompt (pedido) de acceso de manera continua en Sharepoint 2010
1 - Agregar el sitio de Sharepoint a la zona trusted security (Tools –> Internet Options –>Security->Local Intranet->Sites). Se recomienda que se ingrese de la siguiente manera: *.domainsharepoint.com
2 – Usar el store de Windows Credential Store, registrar sus credenciales en este store
3 - Si al descargar documentos, le lanza la pantalla de acceso y tiene windows vista o 7, baje el siguiente KB: http://support.microsoft.com/?id=943280
Tip: si la vista del explorador de Sharepoint anda lenta, desmarcá la opción “Automatically detect settings” en la configuración de la LAN (Tools/Internet Options)
Tips #8–Sharepoint 2010
1-El menú Site actions no aparece!!!
Agregar la url del site como trusted site
Ejecutar el IE como administrador.
2-Script para mostrat todos los administradores de site collection
1: $sitioRoot = New-Object Microsoft.SharePoint.SPSite($sitioUrl)2: $spWebApp = $sitioRoot.WebApplication3:4: foreach($site in $spWebApp.Sites)5: {6: foreach($siteAdmin in $site.RootWeb.SiteAdministrators)7: {8: Write-Host "$($siteAdmin.ParentWeb.Url) - $($siteAdmin.DisplayName)"9: }10: $site.Dispose()11: }12: $sitioRoot.Dispose()
3-Recorrer todos los site collections y subsitios
1: function RecorrerSite() {2: param([Microsoft.SharePoint.SPWeb]$SiteIdentity)3:4: Write-Output "Sitio: $($SiteIdentity.Url)"5:6: if($SiteIdentity.Webs.Count -gt 0)7: {8: foreach($subSitio in $SiteIdentity.Webs)9: {10: RecorrerSite -SiteIdentity $subSitio11: }12: }13: }14:15: $servicioWebApplication = (Get-SPFarm).services |16: ? {$_.typename -eq "Microsoft SharePoint Foundation Web Application"}17:18: foreach($webApp in $servicioWebApplication.WebApplications)19: {20: Write-Output "Web Application: $($webApp.name)"21: foreach($siteColl in $webApp.Sites)22: {23: Write-Output "Colleccion de sitio: $($siteColl.Url)"24: RecorrerSite -SiteIdentity $($siteColl.RootWeb)25: }26: }
4-Clase ContentIterator para procesar una lista de gran tamaño
SharePoint Server proporciona un API,ContentIterator, para ayudar con el acceso a más de 5.000 elementos en una lista larga y no chocar con el throttling de la lista (SPQueryThrottleException). ContentIterator permite segmentar la consulta para el procesamiento de manera única. Considere el uso de esta capacidad si es necesario para procesar un gran número de elementos que pueden exceder el throttling de una lista.
1: static int exceptions = 0;2: static int items = 0;3:4: protected void OnTestContentIterator(object sender, EventArgs args)5: {6: items = 0;7: exceptions = 0;8: string query1 = @"<View>9: <Query>10: <Where>11: <And>12: <BeginsWith>13: <FieldRef Name='SKU' />14: <Value Type='Text'>S</Value>15: </BeginsWith>16: </And>17: </Where>18: </Query>19: </View>";20:21: ContentIterator iterator = new ContentIterator();22: SPQuery listQuery = new SPQuery();23: listQuery.Query = query1;24: SPList list = SPContext.Current.Web.Lists["Parts"];25: iterator.ProcessListItems(list,26: listQuery,27: ProcessItem,28: ProcessError29: );30: }31:32: public bool ProcessError(SPListItem item, Exception e)33: {34: // process the error35: exceptions++;36: return true;37: }38: public void ProcessItem(SPListItem item)39: {40: items++;41: //process the item.42: }
5-Constantes de los estados de workflows
- Status: Value
- Not Started: 0
- Failed on Start: 1
- In Progress: 2
- Error Occurred: 3
- Canceled: 4
- Completed: 5
- Failed on Start(Retrying): 6
- Error Occurred (Retrying): 7
- Canceled: 15
- Approved: 16
- Rejected: 17
6-The SharePoint Health Analyzer detected a condition requiring your attention. Drivers are at risk of running out of free space
Para evitar este error, deberás tener 5 veces más de RAM que espacio libre en el server.
7-Falta “Destination Folder” cuando se sube un documento
Se debe activar la feature Metadata Navigation and Filtering
8-Durante el backup de un site se pone el site cómo sólo lectura, en el caso que haya una interrupción (ej:reiniciar el server), se dejará como sólo lectura. Para ello será necesario ejecutar lo siguiente:
Set-SPSite -Identity http://mysite -LockState "Unlock"
9-Cambiar la opción del indicador “New” en los documentos recientemente subidos
El default para que aparezca el valor “Nuevo” es de dos días.
Verificar la configuración actual:stsadm.exe -o getproperty -pn days-to-show-new-icon -url http://misitio
Cambiar a 4 días
stsadm.exe -o setproperty -pn days-to-show-new-icon -pv 4 -url http://misitio
Si lo seteo a 0 (cero), directamente no aparece.
10-Enviar un mail con powershell
1: function enviarMail{2:3: Write-Host "Enviando Email"4:5: #nombre del servidor SMTP6: $smtpServer = "smtp.xxxx.com"7:8: #Creando un objeto mail9: $msg = new-object Net.Mail.MailMessage10:11: #Creando un objeto SMTP server12: $smtp = new-object Net.Mail.SmtpClient($smtpServer)13:14: #Email formato15: $msg.From = "fromID@mail.com"16: $msg.ReplyTo = "replyto@mail.com"17: $msg.To.Add("toID@mail.com")18: $msg.subject = "Mi asunto"19: $msg.body = "Es es el cuerpo del mail."20:21: #Enviando el mail22: $smtp.Send($msg)23:24: }25:26: #Llamo a la funcion27: enviarMail
viernes, 16 de marzo de 2012
Tips #7–Sharepoint 2010
1-Cómo puedo saber cuanto pesa mi site
Mediante StorMan.aspx: Site Actions > Site Settings > Site Collection Administration > Storage Metrics Mediante Sharepoint Designer Mediante Web Analytics: Site Actions > Site Settings > Site Actions > Site Collection Web Analytics reports, después click sobre Storage Usage y elegir un rango de fecha que sea desde el inicio. Mediante Powershell $site = Get-SPSite http://misitio
$site.Usage.Storage;
$site.Dispose();
Usar Mapped Folders en Visual Studio 2010. Click derecho sobre el proyecto y seleccionar “Add > SharePoint "Images" Mapped Folder”. Cuando deployes, automaticamente copiará las imágenes de esa carpeta a _layouts. Más info
4-Realizar copia de seguridad mientras el web application se está ejecutando
1: SPSite siteCol = SPContext.Current.Site;2: SPContentDatabase cDB = siteCol.ContentDatabase;3: SPDatabaseSnapshot snap = cDB.Snapshots.CreateSnapshot();4: SPContentDatabase unDB = SPContentDatabase.CreateUnattachedContentDatabase(snap.ConnectionString);5: unDB.Sites.Backup(siteCol.ServerRelativeUrl.Trim('/'), "\\Server\Backups\MySite.bak", true);
5-Algunas cosas de search
Especificar una keyword.Sólo una palabra clave.
results.aspx?k=sharepoint%20search
Especificar un scope de search. Puede tener varios scopes separados con %2c.
results.aspx?s=SDKContent
results.aspx?s=SDKContent%2cTechnicalArticlesEspecificar el ordenamiento de los resultados:
-relevance
-date
results.aspx?v=date
results.aspx?v=relevanceEspecificar la propiedad a filtrar. Ej:Buscar la propiedad Companies=Microsoft
results.aspx?k=sharepoint&a=companies:microsoft
Especificar la url donde los resultados aparecenresults.aspx?k=sharepoint&u=http://www.contoso.com
Algunas cosas más a considerar
Incluir cualquier de los términos: ANY(term1 term2)
Incluir todos los términos: ALL(term3 term4)
Incluir ninguno de estos términos: NONE(term5 term6)
Incluir un sólo scope: (scope:”scope1”)
Incluir múltiples scopes: (scope:”scope1” OR scope:“scope2”)
Incluir un término de refinamiento: r=refinementname=”refinementvalue”
Incluir varios términos de refinamiento: r=refinementname1=”refinementvalue1” refinementname2=”refinementvalue2”
Ej URL: results.aspx?k=ANY(term1)NONE(term5)(scope:”scope1”)&r=refinementname=”refinementvalue”
Algunos caracteres codificados:
Character Encoded Value $ %24 & %26 : %3A ; %3B = %3D ? %3F @ %40 “ %22 < %3C > %3E % %25 ( %28 ) %29 { %7B } %7D | %7C \ %5C ~ %7E [ %91 ] %93 # %23 + %2B
6-Donde está Microsoft.Sharepoint.dll
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\ISAPI\
7-Donde están Microsoft.SharePoint.Client.Silverlight.dll, Microsoft.SharePoint.Client.Silverlight.Runtime.dll
C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\LAYOUTS\ClientBin
8-Instalar los servicios de SharePoint Web front-end en el servidor de reporting services, ya que si no es un miembro de la granja, lanzará errores.
Más info: http://technet.microsoft.com/en-us/library/cc281311.aspx
9-Si tus workflows no se publican con Sharepoint Designer, es porque entra en juego la cache de activities que mantiene el Sharepoint Designer
Ingresa a \AppData\Local\Microsoft\WebsiteCache y borra la cache
10-Referenciar hojas de estilo
Agregarlas a la libreria Style Library/mycss.css, y después agregar en el master page actual lo siguiente.
<SharePoint:CssRegistration name="<% $SPURL:~sitecollection/Style Library/mycss.css %>" After="corev4.css" runat="server"/>"
La línea de arriba va entre las etiquetas <head></head> debajo de <SharePoint:SPHelpPageComponent Visible="false" runat="server" />
jueves, 15 de marzo de 2012
Link útiles #10 Sharepoint 2010
1-Consideraciones de capacidad al diseñar una farm
2-Documento que describe las características y los pasos para migrar a FAST SEARCH
3-Diseño de listas de gran tamaño y maximización del rendimiento de listas
http://technet.microsoft.com/es-ar/library/cc262813(v=office.14).aspx
4-Implementando un Secure Store Provider
http://pholpar.wordpress.com/2012/03/13/implementing-a-simple-secure-store-provider/
5-Microsoft Script Explorer for Windows PowerShell Beta 1
6-Habilitar accesos cross dominios en Infopath forms services
7-Mapeo de Powershell y Stsadm
http://www.dhirendrayadav.com/2012/02/stsadm-to-windows-powershell-mapping.html
8- Instalar un certificados de seguridad
9-Facebook Kit for SharePoint
10-Sharepoint Skype status field
11-Configurar Sharepoint y Exchange
miércoles, 14 de marzo de 2012
Tips #6–Sharepoint 2010
1-Filtros (querystring) Sharepoint 2010
Filtrar una o más columnas
- intranet/sites/christianTareas/Lists/Tasks/AllItems.aspx?FilterField1=Title&FilterValue1=In Progress
En la consulta anterior, informo el campo a filtrar (FilterField1) y el valor a filtrar sobre ese campo (FilterValue1).
- FilterField1=AssignedTo&FilterValue1=Christian&FilterField2=Status&FilterValue2=Not Started
Es posible agregar varios campos a filtrar, cómo en la consulta anterior.
FilterNameX debe estar en la vista actual a filtrar, en caso contrario no se filtrará. FilterNameX es case sensitive y debe ser el nombre interno.
FilterValueX no es case sensitive y no soporta wild cards.
Filtrar una columna con múltiples valores
?FilterName=Status&FilterMultiValue=In Progress;Completed
FilterMultiValue permite el uso de wild cards.
?FilterName=Title&FilterMultiValue=*meeting*
El siguiente ejemplo encontrará todas las tareas de christian con “reunion” en el título
FilterField1=AssignedTo&FilterValue1=christian&FilterName=Title&FilterMultiValue=*reunion*
FilterName debe esta en la vista actual, es case sensitive, y debe usarse el nombre interno.
FilterMultiValue no es case sensitive y soporta wild cards. Cada término se separa con ; .Ojo con los espacios.
Ordenar
?SortField=Title&SortDir=Desc
2-Cómo encuentro el nombre interno de un campo
- Ir a la lista
- Ir a “Settings Library”
- Ingreso a editar el campo deseado
- Reviso la url, y obtengo el valor del query string “Field”
intranet/sites/training/_layouts/FldEdit.aspx?List=%7B64C528B3%2D224B%2D4613%2D9D60%2D216300B5BCE0%7D&Field=PercentComplete
3-Algunas tablas de Sharepoint 2010
Features: tabla que contiene información sobre todas las características activadas para cada colección de sitios o en el sitio.
Sites: Tabla que contiene información acerca de todas lascolecciones de sitios para esta base de datos de contenido.
Webs: Tabla que contiene información acerca de todos los sitios específicos (redes) en cada colección de sitios.
UserInfo: Tabla que contiene información acerca de todos los usuarios para cada colección de sitios.
Groups: Tabla que contiene información acerca de todos los grupos de SharePoint en cada colección de sitios.
Roles Tabla que contiene información acerca de todos los roles de SharePoint (los niveles de permisos) para cada sitio.
AllLists: Tabla que contiene información acerca de las listas para cada sitio.
GroupMembership: Tabla que contiene información acerca de todos los miembros de grupo de SharePoint.
AllUserData: Tabla que contiene información sobre todos los elementos de la lista para cada lista.
AllDocs: Tabla que contiene información sobre todos los documentos(y todos los elementos de la lista) para cada biblioteca de documentos y la lista.
RoleAssignment Tabla que contiene información acerca de todos los usuarioso grupos de SharePoint que se asignan a roles.SchedSubscriptions: Tabla que contiene información acerca de todas lassuscripciones programadas (alertas) para cada usuario.
ImmedSubscriptions Tabla que contiene información acerca de todas lassuscripciones inmediatos (alertas) para cada usuario.
4-Averiguar el tamaño de un sitio
1: static void StorageQuery_2()2: {3: long espacio = 0;4: using (SPSite spsSitio=new SPSite("http://sharepoint/site/"))5: {6: using (SPWeb spwSitio=spsSitio.OpenWeb())7: {8: foreach (SPFolder spfFolder in spwSitio.Folders)9: {10: foreach (SPFile spfFile in spfFolder.Files)11: {12: espacio += spfFile.Length);13: }14: }15: }16: }17: }
5-Sabías que Sharepoint automáticamente agrega un flag a los perfiles usuarios, cuando el usuario no ha ingresado por un largo período de tiempo, es decir permanece como inactivo. Esto puede ocasionar problemas con “people picker” ya que el perfil no está actualizado. Una manera de solucionarlo, es asignarle permisos a una lista, y después removerlos. Esto ocasiona que el flag se cambie a activo y por lo tanto el job actualice el perfil. Otra solución es actualizar el perfil vía código (http://ghamson.wordpress.com/2010/11/04/updating-user-profile-properties-via-powershell-pictureurlsharepoint-2010-in-sp2010/)
6-Tips para solucionar problemas de performance.
7-Automáticamente asignar un theme a un sitio recién creado.
- Crear un proyecto que incluya un event receiver
- El mismo será de tipo “A site was provisioned”
- Doble click sobre la feature y cambiar el scope a “Site”
- Editar el archivo element.xml, el atributo “Receivers” y “Synchronization”
<?xml version=”1.0″ encoding=”utf-8″?>
<Elements xmlns=”http://schemas.microsoft.com/sharepoint/”>
<Receivers Scope=”Site”>
<Receiver>
<Name>EventReceiver1WebProvisioned</Name>
<Type>WebProvisioned</Type>
<Assembly>$SharePoint.Project.AssemblyFullName$</Assembly>
<Class>EventReceiverProject2.EventReceiver1.EventReceiver1</Class>
<SequenceNumber>10000</SequenceNumber>
<Synchronization>Synchronous</Synchronization>
</Receiver>
</Receivers>
</Elements>1: ///Definimos el código que cambiará el theme
2:3: using System;
4: using System.Security.Permissions;
5: using Microsoft.SharePoint;
6: using Microsoft.SharePoint.Security;
7: using Microsoft.SharePoint.Utilities;
8: using Microsoft.SharePoint.Workflow;
9:10: namespace EventReceiverSiteTheme.EventReceiver1
11: {12: public class EventReceiver1 : SPWebEventReceiver
13: {14:15: public override void WebProvisioned(SPWebEventProperties properties)
16: {17: try
18: {19: base.WebProvisioned(properties);
20: SPWeb web = properties.Web;21: web.Navigation.UseShared = true;
22: string ThemeURL = “[Your Site URL]/_catalogs/theme/Mission.thmx”;
23: ThmxTheme.SetThemeUrlForWeb(web, ThemeURL);24: web.Update();25: }26: catch (Exception ex)
27: {28: throw;
29: }30: }31: }32: }
8-Workflows Actions
Un archivo de acciones de workflows(.actions) es un archivo XML que describe cómo Sharepoint Designer interactua con las actividades del workflow.
Workflow actions fson deployados en la carpeta TEMPLATE\[Locale ID]\Workflow en el root de Sharepoint (ej, TEMPLATE\1033\Workflow). La mejor manera de deplotar estos archivos, es desde el Visual Studio 2010 agregando un folder mapeado.
Con los archivos .actions definidos, la próxima configuración es agregar una entrada authorizedType al web.config.
http://msdn.microsoft.com/en-us/library/ff798323.aspx
9-Borrar una lista con powershell
List settings no muerta la opción “Delete this list” o el botón del ribbon. Usando SharePoint Designer al tratar de borrar nos dice “Unable to save changes. This list cannot be deleted”. Se puede utilizar Powershell para borrarla
1: $Web = Get-SPWeb http://misite2: $List = $Web.Lists["Lista_A_Borrar"]3: $List.AllowDeletion = $TRUE4: $List.Update()5: $List.Delete()6: $Web.Dispose()
10-Modificar el quick launch
Es posible modificar el control del quick launch
<SharePoint:AspMenu id="V4QuickLaunchMenu" runat="server"
EnableViewState="false" DataSourceId="QuickLaunchSiteMap"
UseSimpleRendering="true" UseSeparateCss="false" Orientation="Vertical"
StaticDisplayLevels="1" MaximumDynamicDisplayLevels="1"
SkipLinkText="" CssClass="s4-ql" />Por default, el atributo StaticDisplayLevels es seteado a 2, es decir tiene 2 niveles de menú. Si lo cambio a 1, sólo el título se verá.
El valor default del atributo MaximumDynamicDisplayLevels es 0. Esto deshabilita los menues flyout.
Ej: el siguiente menú se cambio MaximumDynamicDisplayLevels= 3 y StaticDisplayLevels =3
Más info: http://msdn.microsoft.com/en-us/library/ms466994.aspx
http://panvega.wordpress.com/2008/04/18/customize-the-sharepoint-navigation-aspmenu/