jump to navigation

SharePoint Exception Details: System.Security.SecurityException: January 19, 2011

Posted by juanpablo1manrique in BI, Business Inteligent, Seguridad, SharePoint, Uncategorized.
Tags: ,
add a comment

Al intentar llamar otra aplicación WEB desde SharePoint recibi el siguiente error

Security Exception
Description: The application attempted to perform an operation not allowed by the security policy.  To grant this application the required permission please contact your system administrator or change the application’s trust level in the configuration file.

Exception Details: System.Security.SecurityException: Request for the permission of type ‘Microsoft.SharePoint.Security.SharePointPermission, Microsoft.SharePoint.Security, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c’ failed.

Para solucionar este inconveniente en el web.config del sharepoint se encuentran las siguientes definiciones

      <trustLevel name=”WSS_Medium” policyFile=”C:\Archivos de programa\Archivos comunes\Microsoft Shared\Web Server Extensions\12\config\wss_mediumtrust.config” />
      <trustLevel name=”WSS_Minimal” policyFile=”C:\Archivos de programa\Archivos comunes\Microsoft Shared\Web Server Extensions\12\config\wss_minimaltrust.config” />

Las cuales establecen las posibles politicas de seguridad que puede tener el SharePoint, estas politicas son editables y permiten dar mayor o menor funcionalidad al SharePoint con respecto a otras aplicaciones o dlls.

Si comparamos la definición de la politica de WSS_Medium y WSS_Minimal para este dll se observa que en WSS_Medium se pueden ejecutar más acciones.

  • WSS_Medium <IPermission       version=”1″ Flags=”Assertion, Execution, ControlThread, ControlPrincipal,     RemotingConfiguration”   />
  • WSS_Minimal <IPermission       version=”1″ Flags=”Assertion, Execution, ControlThread, ControlPrincipal,     RemotingConfiguration”   />

Entonces se debe reemplazar unas cuantas lineas más abajo con

  • <trust level=”WSS_Medium” originUrl=”” />

Y solucionada la integración

Advertisements

Se recibe un error al ingresar al server report de SSIS January 19, 2011

Posted by juanpablo1manrique in BI, Business Inteligent, Reporting Services, SQL SERVER 2008, SSRS.
Tags:
add a comment

He estado instalando Reporting services de SQL en su versión 2008,

El cual tiene 2 modos de operación Native Mode e SharePoint Integrated Mode, y en el proceso de la instalación en SharePoint Integrated Mode me aparecio el siguiente error, al intentar entrar a la URL de server de SSRS

The report server has encountered a configuration error. if the report server is configured to use sharepoint integrated mode, verify that the server belongs to a sharepoint farm and that the service account has access the report server to this farm.

La solución de este inconveniente fue entrar a la consola de servicios de windows services.msc y cambiar la cuenta de usuario con la que corre el servicio, y entregar una cuenta windows que tuviera permisos sobre las bases de datos de SharePoint

Exception occurred when adding the dwp filteractions.dwp, exception is Access is denied. July 8, 2010

Posted by juanpablo1manrique in BI, Business Inteligent, Cube, DefineNames, Excel 2007, Excel Services, Report Center, SharePoint, WebPart.
Tags:
add a comment

En estos días cree un sitio de reportes “Report Center”, la administración de este sitio estará a cargo de otra persona, este administrador no deberia tener acceso al sitio principal. Cuando el administrador2 intento crear un nuevo DASHBOARD “New dashboard”, siempre aparecia un error de Access is denied.

Fui y consulte los logs de errores de SharePoint de eventos en C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\LOGS
y observe el siguiente error.

Exception occurred when adding the dwp filteractions.dwp, exception is Access is denied.

Finalmente me decidi a darle permisos sobre el sitio principal y la tarea funciono correctamente, oviamente no queria darle tantos permisos así que probe solo darle permisos sobre todas las librerias, pero no sobre el sitio principal y tampoco funciono.

Así que finalmente toco darle permisos en el sitio principal, y promoverlo de “Limited Access” a “Restricted Read”

Excel Services es o no es un WEB Service. May 31, 2010

Posted by juanpablo1manrique in BI, Business Inteligent, Excel 2007, Excel Services, SharePoint, WebPart.
Tags:
add a comment

Pues si y no, empecemos con el NO

Excel Services tiene gran cantidad de funcionalidades bastante interesante las cuales permiten que por medio de Presentación de archivos de Excel utilizando ExcelWEBAccess, tener en un ambiente web funcionalidades interesantes como búsquedas, presentación de zonas definidas utilizando DefineNames, permite cálculos de formato y cálculos entre celdas, etc.
Ahora el Si, (WebService).

Pero igualmente podemos utilizar el WEBService el cual expone varios metodos WEB para realizar modificaciones sobre archivos de Excel que se encuentren en una librería de documentos de SharePoint.

La dirección de acceso de este Web Service es http://server/_vti_bin/excelservice.asmx?WSDL
El cual expone los siguientes métodos.
Methods
Calculate ( sessionId As string ,  sheetName As string ,  rangeCoordinates As RangeCoordinates ) As ArrayOfStatus

CalculateA1 ( sessionId As string ,  sheetName As string ,  rangeName As string ) As ArrayOfStatus

CalculateWorkbook ( sessionId As string ,  calculateType As CalculateType ) As ArrayOfStatus

CancelRequest ( sessionId As string ) As ArrayOfStatus

CloseWorkbook ( sessionId As string ) As ArrayOfStatus

GetApiVersion ( ) As string

GetCell ( sessionId As string ,  sheetName As string ,  row As int ,  column As int ,  formatted As boolean ) As ArrayOfStatus

GetCellA1 ( sessionId As string ,  sheetName As string ,  rangeName As string ,  formatted As boolean ) As ArrayOfStatus

GetRange ( sessionId As string ,  sheetName As string ,  rangeCoordinates As RangeCoordinates ,  formatted As boolean ) As ArrayOfAnyType

GetRangeA1 ( sessionId As string ,  sheetName As string ,  rangeName As string ,  formatted As boolean ) As ArrayOfAnyType

GetSessionInformation ( sessionId As string ) As string

GetWorkbook ( sessionId As string ,  workbookType As WorkbookType ) As base64Binary

OpenWorkbook ( workbookPath As string ,  uiCultureName As string ,  dataCultureName As string ) As string

Refresh ( sessionId As string ,  connectionName As string ) As ArrayOfStatus

SetCell ( sessionId As string ,  sheetName As string ,  row As int ,  column As int ,  cellValue As ) As ArrayOfStatus

SetCellA1 ( sessionId As string ,  sheetName As string ,  rangeName As string ,  cellValue As ) As ArrayOfStatus

SetRange ( sessionId As string ,  sheetName As string ,  rangeCoordinates As RangeCoordinates ,  rangeValues As ArrayOfAnyType ) As ArrayOfStatus

SetRangeA1 ( sessionId As string ,  sheetName As string ,  rangeName As string ,  rangeValues As ArrayOfAnyType ) As ArrayOfStatus

Para consultar una celda pueden utilizar el siguiente código

    Private Sub _GetCell()
        Dim sessionId As String = Nothing
        Dim cellValue As Object = Nothing
        Dim objExcelService As New shphost.ExcelService()
        Dim status As shphost.Status() = Nothing
        Try
            objExcelService.UseDefaultCredentials = True
            objExcelService.SoapVersion = Services.Protocols.SoapProtocolVersion.Soap12
            sessionId = objExcelService.OpenWorkbook(_workbookPath, “en-US”, “en-US”, status)
            ‘ Retrieve the data from the referenced cell.
            cellValue = objExcelService.GetCell(sessionId, _sheetName, _row, _column, True, status)
            _cell = cellValue
        Catch ex As SoapException
            Dim objLog As New EventViewerLog
            objLog.CreateLogSharePointComponents(“An error has occurred.SOAPException” & ex.Message)
            _cell = “An error has occurred.” & ex.Message
        Catch ex As System.Exception
            Dim objLog As New EventViewerLog
            objLog.CreateLogSharePointComponents(“An error has occurred.Normal Exception” & ex.Message)
            _cell = “An error has occurred.” & ex.Message
        Finally
            Try
                If Not String.IsNullOrEmpty(sessionId) Then
                    objExcelService.CloseWorkbook(sessionId)
                End If
            Catch ex As Exception
                Dim objLog As New EventViewerLog
                objLog.CreateLogSharePointComponents(“An error has occurred.Finally Exception” & ex.Message)
            End Try
        End Try
    End Sub

The dimension has attribute loop error SSAS May 31, 2010

Posted by juanpablo1manrique in BI, Business Inteligent, Cube, Developer, Dimension, Excel Services.
Tags:
1 comment so far

Este error aparece en SSAS cuando al crear la dimensión se ha seleccionado en la segunda pantalla, la asignación de keys, varias columnas, “esto no debería ser”, solo debería estar el dimentionkey el cual es obligatorio y único para este tipo de base de datos.

He intentado arreglar estos errores pero lo mejor es reconstruir la dimensión y asegurarse de seleccionar bien las columnas de key, y cuando se solicite el namecolumn seleccionar la misma de la llave y en la siguiente pantalla ahi sí, seleccionar los diferentes atributos a navegar.

Saludos

Cargar un Archivo de Excel en SQL Server 2008 x64 March 27, 2010

Posted by juanpablo1manrique in Business Inteligent, Developer, Excel 2007, Excel Services, Office 2010, SQL SERVER 2008.
Tags: ,
30 comments

En estos días he estado desarrollando un procedimiento para cargar un archivo de Excel en SQL, todo estaba funcionando perfecto hasta que toco subir el archivo a un servidor de SQL server x64.

En el ambiente de desarrollo estaba utilizando Microsoft.Jet.OLEDB.4.0 pero al subirlo al servidor aparece un error que dice:

  • The OLE DB provider “Microsoft.Jet.OLEDB.4.0” has not been registered.

Buscando en internet encontré que para el servidor de x64 el nuevo proveedor es Microsoft.ACE.OLEDB.12.0, pero igualmente salió un error que decía:

  • The OLE DB provider “Microsoft.ACE.OLEDB.12.0” has not been registered.

Buscando en Internet encontré que se debían ejecutar las siguientes sentencias:

  • EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’AllowInProcess’, 1
  • EXEC master.dbo.sp_MSset_oledb_prop N’Microsoft.ACE.OLEDB.12.0′, N’DynamicParameters’, 1
  • exec sp_configure ‘Advanced’, 1
  • RECONFIGURE
  • exec sp_configure ‘Ad Hoc Distributed Queries’, 1
  • RECONFIGURE
  • exec sp_configure ‘xp_cmdshell’, 1
  • RECONFIGURE
  • GO
  • sp_configure ‘show advanced options’, 1
  • GO
  • RECONFIGURE WITH OverRide
  • GO
  • sp_configure ‘Ad Hoc Distributed Queries’, 1
  • GO
  • RECONFIGURE WITH OverRide
  • GO

Pero seguía presentándose el error:

  • Cannot create an instance of OLE DB provider “Microsoft.ACE.OLEDB.12.0” for linked server “(null)”.

Esto se debe a que Microsoft en el lanzamiento de SQL SERVER 2008 x64 no hizo un proveedor para poder cargar archivos de Excel, el COLMO NO. Menos mal este problema lo tuve hace poco y descubrí que los componentes de conectividad de Office 2010 ya traen este proveedor los cuales se pueden descargar desde:

http://www.microsoft.com/downloads/details.aspx?familyid=C06B8369-60DD-4B64-A44B-84B371EDE16D&displaylang=en

Con lo cual se instala el proveedor y la sentencia:

  • SELECT * INTO SourceDimBalance FROM OPENROWSET(
  • ‘Microsoft.ACE.OLEDB.12.0’,
  • ‘Excel 12.0;Database=c:\TEMP\DimBalance.xlsx;HDR=YES’,
  • ‘SELECT * FROM [Hoja1$]’)

 

Funciona correctamente!!!!

Download AdventureWorks 2008 R2 November CTP February 23, 2010

Posted by juanpablo1manrique in Best Practices, BI, Business Inteligent, Developer, Install, OLAP, SQL SERVER, SQL SERVER 2008, Windows 2008.
add a comment

Recordando que en el isntalador de SQL 2008 no viene incluida la base de datos de AdventureWorks para realizar pruebas y para carga los ejemplos como los de BI con los proyectos de Analysis Services listos para ejecutar me encontre este link donde lo pueden desacargar.

http://msftdbprodsamples.codeplex.com/releases/view/24854#DownloadId=91938

El instalador incluye

AdventureWorks OLTP 2008 R2
AdventureWorks Data Warehouse 2008 R2
AdventureWorks LT 2008 R2
AdventureWorks OLAP Standard 2008 R2
AdventureWorks OLAP Enterprise 2008 R2
AdventureWorks OLTP

AdventureWorks Data Warehouse
AdventureWorks LT
AdventureWorks OLAP Standard
AdventureWorks OLAP Enterprise