0

当我执行我的 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 行 在执行用户定义的例程或聚合“fn_GetListItemsActivities”期间发生 .NET Framework 错误:System.Net.WebException:请求失败,HTTP 状态 401:未授权。System.Net.WebException:在 System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage 消息,WebResponse 响应,流 responseStream,布尔 asyncCall)在 System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(字符串方法名,对象 []参数)在 SharePointActivities.GetActivitiesItems(SqlString url、SqlString listName、SqlString viewName、SqlString Query)处的 WSS.Lists.GetListItems(String listName、String viewName、XmlNode query、XmlNode viewFields、String rowLimit、XmlNode queryOptions、String webID)。

请参阅下面的错误,当我在 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 功能都受到影响,并且给所有人提供了这种错误......所以我无法找到这个问题。

请在这方面帮助我...

4

0 回答 0