Mostrando entradas con la etiqueta Query Component. Mostrar todas las entradas
Mostrando entradas con la etiqueta Query Component. Mostrar todas las entradas

viernes, 30 de noviembre de 2012

Tips Info #82 Sharepoint 2010

1-Tablas NameValuePair

Al crear una columna con un índice, se llenará las tablas NameValuePair[_{SQLCollation}] con datos de la columna que tu indexas.

Cada vez que actualizas datos de las columnas, se actualiza las tablas NameValuePair[_{SQLCollation}]. Cuando se realiza una consulta a cualquiera de las listas de las cuales tiene un campo indexado, a continuación, se hace un JOIN con la tabla dbo.AllLists y la tabla dbo.NameValuePair. Esto provocará que las queries sean más rápidas.

2-Versionado y acceso anónimo

Si activas la opción “Major Version” en el versionado de las librerías, cada vez que publicas una versión, todos los usuarios podrán ver esa versión incluso los anónimos. En cambio una versión "minor" sólo los propietarios del documento, administradores y usuarios con permisos de approve podrán ver la versión.

3-Mostrar los attachments (adjuntos) de listas en xlst

Usar el control <xsl:element name="SharePoint:AttachmentsField">

<xsl:element name="SharePoint:AttachmentsField">
    <xsl:attribute name="runat">server</xsl:attribute>
    <xsl:attribute name="FieldName">Attachments</xsl:attribute>
    <xsl:attribute name="ControlMode">Display</xsl:attribute>
    <xsl:attribute name="Visible">true</xsl:attribute>
    <xsl:attribute name="ItemId">
        <xsl:value-of select="@ID"/>
    </xsl:attribute>
</xsl:element>

4-Query sobre list items de varios sites

Se puede usar SPSiteDataQuery o CrossListQueryInfo.

5-Algunos tips útiles sobre querys string en Sharepoint

Por default, Sharepoint 2010 muestra la última versión del documento, si se quiere mostrar todas las versiones, se puede utilizar el query string IncludeVersions:

AllItems.aspx?IncludeVersions=TRUE

Si se quiere mostrar sólo los items de un folder, se puede utilizar el query string RootFolder=*

Ej: url?RootFolder=*  ->muestra los items de todos los folders

Ej: http://urlsitecollection/sites/Demo/TheDocumentLibrary/Forms/AllItems.aspx?RootFolder=%2fdemo%2fthedocumentlibrary%2fcarpeta

Importante: el query string RootFolder es case sensitive, debe tener caracteres de escape (%2f para barras, %2d para guiones)

Editar una página de NewItem o EditItem (por default no se pueden editar)
Ej: agregar el query string ToolPaneView, DispForm.aspx?ID=12&ToolPaneView=2

Query string que permite retornar a una url determinada, al cerrar la página o aceptar la acción
?Source=http://sitecollection/Intranet/default.aspx

Otros parámetros útiles: _ModerationStatus y _IsCurrentVersion

martes, 20 de noviembre de 2012

Tips Info # 79 Sharepoint 2010

1-Acceso denegado para todos los usuarios excepto para la cuenta de farm al hacer un restore

Esto se solucionando configurando las cuentas de super reader y writer, y dando una policy de full control a las mismas.

$wa = Get-SPWebApplication -Identity "<WebApplication>"  
$wa.Properties["portalsuperuseraccount"] = "<SuperUser>"  
$wa.Properties["portalsuperreaderaccount"] = "<SuperReader>"  
$wa.Update() 

Obviamente las cuentas deben estar previamente creadas.

Este error se debe a lo siguiente: La caché de objetos almacena propiedades de los elementos en Microsoft SharePoint Server 2010. La característica de publicación usa los elementos de esta memoria caché para representar páginas web. Los objetivos de la caché de objetos son reducir la carga en el equipo en el que se ejecuta SQL Server y mejorar el rendimiento y latencia de la solicitud. La caché de objetos realiza consultas como una de dos cuentas de usuario integradas: la cuenta de usuario súper del portal y la cuenta de lector súper del portal. Estas cuentas de usuario deben configurarse correctamente para garantizar que la caché de objetos funcione correctamente. La cuenta de usuario súper del portal debe ser una cuenta que tenga acceso de control total a la aplicación web. La cuenta de lector súper del portal debe ser una cuenta que tenga acceso completo de lectura a la aplicación web.

2-Borrar o Recuperar un web part cerrado

image

Ingrese en la URL el siguiente parámetro ?contents=1 , esto abrirá una página donde podrá borrar el web part cerrado

image

Para restaurar un web part cerrado, deberá editar la página y vaya al link de agregar web part. Al abrir la gallería, debemos elegir la sección “Closed Web Parts”

image

3-Query sobre múltiples listas de Sharepoint con GetSiteData

SPSiteDataQuery sQuery = new SPSiteDataQuery();
string where += "<Lists>";
       where += "<List ID='ID de lista 1'/>";
       where += "<List ID='ID de lista 2'/>";
       where += "<List ID='ID de lista 3'/>";
       where += "</Lists>";
       sQuery.Lists = where;
       sQuery.ViewFields = "<FieldRef Name ='Title' />";
      
DataTable results = SPContext.Current.Web.GetSiteData(sQuery);

Más info: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spweb.getsitedata.aspx

4-Agregar un agrupamiento de más de 2 columnas en Sharepoint 2010

Crear una página de web part, y agregar un “Emty Data View”

image

En el nuevo web part haz click en “Click here to select a data source” . A continuación elige la lista que deseas mostrar. A continuación se mostrará el “Data Source Details Pane”

Selecciona las columnas que desees con SHIFT, y para finalizar el proceso haz click en “Insert Selected Fields as” y elige “Multiple Item View”

image

A continuación agrega el agrupamiento que necesites:

image

5-Feature ViewFormPagesLockDown

Dentro de un site con acceso anónimo, se puede prevenir que usuarios anónimos naveguen a páginas internas o que buscadores indexen el contenido: ej:

/_layouts/viewlsts.aspx

/Lists/[NombreLista]/AlItems.aspx

Esto se puede desactivar mediante la feature ViewFormPagesLockdown

Esto es una feature oculta, pero se puede acceder vía powershell:
Get-SPFeature | where { $_.DisplayName -eq "ViewFormPagesLockdown"}

image

Esta feature tiene alcance a nivel de site collection, se puede activar mediante powershell:

Enable-SPFeature -url http://site_collection -identity XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXX -confirm:$false

Puede ocasionar problemas con ciertos sites anónimos que permite que usuarios carguen encuestas o listas con determinados datos.

Incluso cuando el modo de bloqueo está activada, los usuarios anónimos pueden acceder a determinadoas direcciones URL de Sharepoint, tales como las páginas en el directorio _layouts y servicios web que están expuestos en el directorio _vti_bin. Se puede solucionar este problema mediante web.config.

Ej: deniego a todo link interno a usuarios anónimos (?)

<configuration>
<location path="_layouts">     <system.web>                        <authorization>         <deny users="?" />       </authorization>     </system.web>   </location>
<location path="_vti_bin">     <system.web>                        <authorization>         <deny users="?" />       </authorization>     </system.web>   </location>
<location path="_layouts/login.aspx">     <system.web>       <authorization>         <allow users="?" />       </authorization>     </system.web>   </location>
<location path="_layouts/error.aspx">     <system.web>       <authorization>         <allow users="?" />       </authorization>     </system.web>   </location>
<location path="_layouts/accessdenied.aspx">     <system.web>       <authorization>         <allow users="?" />       </authorization>     </system.web>   </location>
</configuration>
Más información: http://technet.microsoft.com/en-us/library/ee191479(v=office.12).aspx

miércoles, 8 de agosto de 2012

Tips / Info #56 Sharepoint 2010

1-Cambiar el display de un username que no cambio después del cambio en el active directory

Set-SPUser -Identity "christianazcon\cazcon" –DisplayName "Christian Azcon" -Email "mail@mail.com" -Web http://sharepointsite

2-Query Component not responding

  • Revisar si el servicio de seach osearchv4 esté corriendo y la cuenta de servicio no esté bloqueada
  • Revisar si tiene suficiente espacio donde se encuentra el indice. Es decir en los wfe (\Projects\Portal_Content\indexer\)
  • Verifique que el grupo WSS_WPG tenga permisos de ull control sobre esa carpeta
  • Deshabilitar el loopback check
  • Verificar que la opcion “Client for Microsoft Networks” en File and Printer Sharing esté habilitada
  • Reinicie el search en todos los servidores: net stop osearch14, net start osearch14

    Reinicie el query component: http://sharepointreporter.wordpress.com/2010/11/02/how-to-restart-a-query-component-in-sharepoint-2010/

    Si todo esto no funciona, resetee el indice

    #Obtengo el search service application
    $sa = Get-SPEnterpriseSearchServiceApplication

    #reseteo el indice
    #Deshabilito alertas $true/$false

    try
    {
        Write-Host "Reseteando indice..por favor espere"
        $sa.Reset($false, $false)
        Write-Host "Indice reseteado satisfactoriamente" -ForegroundColor Blue
    }
    catch
    {
        Write-Host "Hubo un problema al resetear el indice:" $_ -ForegroundColor Red
    }

    Y a continuación haga un iisreset y genere un full craw. Si sigue sin funcionar, cree un nuevo query component.http://technet.microsoft.com/en-us/library/ee513123.aspx

    3-Diferencia entre STSADM Export/Import and Backup/Restore operations

    stsadm –o backup/restore

    Permite hacer backup de site collection o web application. El backup es cómo un dump de SQL de la base de contenido.

    Backup/Restore preserva el GUID de cada objeto excepto el GUID del Site: cuando haces el restore del backup, SharePoint genera un nuevo GUID para el site collection.

    La tabla Sites en la base de datos de configuración usa el SiteID como key primario.

    Pemite full y diferencial backup. Soporta path UNC. Permite hacer backup de la historia mediante el parámetro backuphistory-

    Esto permite el restore en la misma granja del que se hizo backup o en otra granja, pero siempre se debe hacer el restore en una content database diferente ya que el GUID de los otros objetos permanecen sin cambio.

    stsadm –o export/import

    Es una operación estandar que permite hacer backups de un sub site, site collection, un web application o una lista. Genera un nuevo GUID para cada objeto - sites, sub sites, lists y items. Usa Object Model para hacer las operaciones.-

    Otra diferencia es que puedes hacer un restore en un site existente; la conducta con data existente es definida con el parámetro “update versions” en la operación import.

    No preserva instancias de workflows instances, associations, history y tasks. Cada workflow association debe recrearse y no hay manera de hacer restore de instancias en ejecución del site original.

    No mantiene las versiones de archivos. Sólo toma la última disponible.

    Si el(los) sitio(s) a exportar son mayores de 25 MB, utilice el parámetro –cabsize 1024 o un valor apropiado.

    La operación es buena para hacer merges de contenido de sites. No se olvide de usar el parámetro “includeusersecurity” en las dos operaciones de export/import si desea preservar la información relativa a permisos y otras propiedades tales como autores de documentos.

    4-Limitaciones de listas externas BCS

    • No RSS feed para listas externas
    • No es posible usar attachments
    • No permite lookups (es decir crear una columna de tipo External Data Column), ni crear columnas nuevas
    • Sin la feature de rating
    • No permite exportar a excel, crear diagrama visio, abrir en excel, abrir en project
    • Sin la feature de datasheet ni inline editing
    • Sin historial de versión
    • No se permite consumir la lista via REST (listdata)
    • No permite configurar permisos a nivel de item
    • No puede crear information managment policies
    • Workflows no puede ser configurados con external list
    • No puede configurar alertas con external list
    • No puede usar la herramienta spmetal.exe para LINQ to Sharepoint
    • No puede escribir a BLOBS, se deberá escribir su propio código
    • Sin soporte de Navegación de metadata

    5-Enumerar todos los web parts instalados

    Stsadm.exe –o enumallwebs  -includewebparts  > webparts.txt