Получение ошибки, когда я использую функцию SQL CLR из Sharepoint 2010 Web Services ASMX
Получение ошибки при выполнении хранимой процедуры SQL.. которая извлекает данные из служб sharepoint 2010 asmx...
Пожалуйста, смотрите ниже мой код хранимой процедуры:
USE [PMTReporting]
GO
/****** Object: StoredProcedure [dbo].[SP_Dashboard_AgentLevelReport] Script Date: 10/23/2013 12:46:52 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[SP_Dashboard_AgentLevelReport]
@StartRecordDate DATE,
@EndRecordDate DATE,
@EmployeeIDs NVARCHAR(MAX)
AS
BEGIN
/** Create CAML Query for start and end Record Date Parameters**/
DECLARE @NVAR_StartCAML NVARCHAR(10)
DECLARE @NVAR_EndCAML NVARCHAR(10)
DECLARE @NVAR_StartEndRecordDateCAML NVARCHAR(500)
DECLARE @NVAR_CAMLQuery NVARCHAR(MAX)
SET @NVAR_StartCAML = '<Where>'
SET @NVAR_EndCAML = '</Where>'
SET @StartRecordDate = '2011-01-01'
SET @EndRecordDate = '2013-09-10'
SET @NVAR_StartEndRecordDateCAML = '<And><Geq><FieldRef Name="RecordDate" /><Value IncludeTimeValue="TRUE" Type="DateTime">' + CAST(@StartRecordDate AS NVARCHAR) + '</Value></Geq><Leq><FieldRef Name="RecordDate" /><Value IncludeTimeValue="TRUE" Type="DateTime">' + CAST(@EndRecordDate AS NVARCHAR) + '</Value></Leq></And>'
SELECT * FROM dbo.fn_GetListItemsActivities('http://wks10953:1000/_vti_bin/Lists.asmx','Activities','',@NVAR_StartEndRecordDateCAML)
order by RecordDate
END
и я выполняю код ниже:
exec [dbo].[SP_Dashboard_AgentLevelReport] '','',''
и получить ниже ошибки:
Сообщение 6522, уровень 16, состояние 1, процедура SP_Dashboard_AgentLevelReport, строка 28 Ошибка.NET Framework при выполнении пользовательской подпрограммы или агрегата "fn_GetListItemsActivities": System.Net.WebException: сбой запроса с состоянием HTTP 401: не авторизован. System.Net.WebException: в System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(сообщение SoapClientMessage, ответ WebResponse, поток responseStream, логический асинхронный вызов) в System.Web.Services.Protocols.SoapHttpvoke(метод String.name) параметров) в WSS.Lists.GetListItems(String listName, String viewName, запрос XmlNode, XmlNode viewFields, String rowLimit, XmlNode queryOptions, String webID) в SharePointActivities.GetActivitiesItems(SqlString URL-адрес, SqlStringString.Name, SqlStringString.name)
Пожалуйста, смотрите ниже ошибку, которую я получаю, когда я вызываю свою процедуру в SSRS 2008 r2, иногда она работает очень хорошо, и когда она выдает ошибку ниже, тогда все мои функции CLR не работают, которые связаны с sharepoint asmx webservices... и дать ту же ошибку
Msg 6522, Level 16, State 1, Line 1
A .NET Framework error occurred during execution of user-defined routine or aggregate "fn_GetListItemsEmployees":
System.Net.WebException: The request failed with HTTP status 401: Unauthorized.
System.Net.WebException:
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at WSS.Lists.GetListItems(String listName, String viewName, XmlNode query, XmlNode viewFields, String rowLimit, XmlNode queryOptions, String webID)
at SharePointEmployees.GetEmployeesItems(SqlString url, SqlString listName, SqlString viewName).
Теперь все мои функции CLR выполняются и выдают такую ошибку для всех... поэтому я не могу найти, что это за проблема.
Пожалуйста, помогите мне в этом...