sharepoint2013工作流中查找用户的信息报错

pbsh 2014-11-19 03:08:45
在工作流中查找域用户的信息,出错,导致工作流内部状态由已启动直接跳转到已取消.
工作流查找配置如下:
1、一个部门列表,其中两列,姓名和上级,列类型都是用户和用户组。
2、一个任务列表,创建项目时启动工作流。
3、工作流中使用创建者列去部门列表中查找他的上级。
错误如下:
1、在工作流内部状态时错误如下:
Retrying last request. Next attempt scheduled in less than one minute. Details of last request: HTTP InternalServerError to http://win-rqdf9p2cnn9/_vti_bin/client.svc/web/lists/getbyid(guid'f9ffe268-c254-485d-8137-d7b3bcd0969b')/Items?%24filter=OData__x65b0__x5efa__x680f_3+eq+'i%3A0%23.w%7Celbi%5Candrewshi'&%24select=ID%2COData__x65b0__x5efa__x680f_3Id%2CGUID Correlation Id: 218d5f2e-e7ee-afde-3a71-d151b6672eaf Instance Id: 04f88fab-43b3-48b4-b770-255df358bde7

2、内部状态变成已取消时错误如下:
RequestorId: 218d5f2e-e7ee-afde-3a71-d151b6672eaf。详细信息: System.ApplicationException: HTTP 500 {"error":{"code":"-2146232060, Microsoft.SharePoint.SPException","message":{"lang":"zh-CN","value":""},"innererror":{"message":"","type":"Microsoft.SharePoint.SPException","stacktrace":" 在 Microsoft.SharePoint.SPGlobal.HandleComException(COMException comEx)\u000d\u000a 在 Microsoft.SharePoint.Library.SPRequest.GetListItemDataWithCallback2(IListItemSqlClient pSqlClient, String bstrUrl, String bstrListName, String bstrViewName, String bstrViewXml, SAFEARRAYFLAGS fSafeArrayFlags, ISP2DSafeArrayWriter pSACallback, ISPDataCallback pPagingCallback, ISPDataCallback pPagingPrevCallback, ISPDataCallback pFilterLinkCallback, ISPDataCallback pSchemaCallback, ISPDataCallback pRowCountCallback, Boolean& pbMaximalView)\u000d\u000a 在 Microsoft.SharePoint.SPListItemCollection.EnsureListItemsData()\u000d\u000a 在 Microsoft.SharePoint.SPListItemEntityCollection.TryWriteAsOData(ODataWriter writer, RESTfulQuery query, ProxyContext proxyContext)\u000d\u000a 在 Microsoft.SharePoint.Client.ServerStub.Write(Object value, Uri path, ODataWriter writer, RESTfulQuery query, ProxyContext proxyContext)\u000d\u000a 在 Microsoft.SharePoint.Client.Rest.RestRequestProcessor.Process()\u000d\u000a 在 Microsoft.SharePoint.Client.Rest.RestRequestProcessor.ProcessRequest()\u000d\u000a 在 Microsoft.SharePoint.Client.Rest.RestService.ProcessQuery(Stream inputStream, IList`1 pendingDisposableContainer)","internalexception":{"message":"<nativehr>0x80131904<\/nativehr><nativestack><\/nativestack>","type":"System.Runtime.InteropServices.COMException","stacktrace":" 在 Microsoft.SharePoint.Library.SPRequestInternalClass.GetListItemDataWithCallback2(IListItemSqlClient pSqlClient, String bstrUrl, String bstrListName, String bstrViewName, String bstrViewXml, SAFEARRAYFLAGS fSafeArrayFlags, ISP2DSafeArrayWriter pSACallback, ISPDataCallback pPagingCallback, ISPDataCallback pPagingPrevCallback, ISPDataCallback pFilterLinkCallback, ISPDataCallback pSchemaCallback, ISPDataCallback pRowCountCallback, Boolean& pbMaximalView)\u000d\u000a 在 Microsoft.SharePoint.Library.SPRequest.GetListItemDataWithCallback2(IListItemSqlClient pSqlClient, String bstrUrl, String bstrListName, String bstrViewName, String bstrViewXml, SAFEARRAYFLAGS fSafeArrayFlags, ISP2DSafeArrayWriter pSACallback, ISPDataCallback pPagingCallback, ISPDataCallback pPagingPrevCallback, ISPDataCallback pFilterLinkCallback, ISPDataCallback pSchemaCallback, ISPDataCallback pRowCountCallback, Boolean& pbMaximalView)"}}}} {"Transfer-Encoding":["chunked"],"X-SharePointHealthScore":["0"],"SPClientServiceRequestDuration":["35"],"SPRequestGuid":["218d5f2e-e7ee-afde-3a71-d151b6672eaf"],"request-id":["218d5f2e-e7ee-afde-3a71-d151b6672eaf"],"X-FRAME-OPTIONS":["SAMEORIGIN"],"X-Content-Type-Options":["nosniff"],"X-MS-InvokeApp":["1; RequireReadOnly"],"MicrosoftSharePointTeamServices":["15.0.0.4481"],"Cache-Control":["max-age=0, private"],"Date":["Wed, 19 Nov 2014 07:06:49 GMT"],"Set-Cookie":["WSS_KeepSessionAuthenticated={dff38173-a02d-4c4d-8461-ebef9e2ec112}; path=\/"],"X-AspNet-Version":["4.0.30319"],"X-Powered-By":["ASP.NET"]} 在 Microsoft.Activities.Hosting.Runtime.Subroutine.SubroutineChild.Execute(CodeActivityContext context) 在 System.Activities.CodeActivity.InternalExecute(ActivityInstance instance, ActivityExecutor executor, BookmarkManager bookmarkManager) 在 System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor, BookmarkManager bookmarkManager, Location resultLocation)

User Profile service和同步程序都启动了。
求解答,多谢。
...全文
806 31 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
31 条回复
切换为时间正序
请发表友善的回复…
发表回复
pbsh 2014-11-24
  • 打赏
  • 举报
回复
官方文档里涉及排序规则的部分: 5.配置 SQL Server 并确认以下信息: ◦数据库排序规则是 LATIN1_General_CI_AS_KS_WS。 ◦已为 SharePoint 2013 安装程序的用户帐户创建登录帐户。此帐户将为新数据库的数据库所有者。 6.安装与现有数据库服务器上相同的 SQL Server 服务包和修补程序。 ---------------------------------------------------------------------------------------------------------------------------- 然而,2013的工作流管理器,对应的后台数据库却默认是现有数据库实例的排序规则。 微软倒是挺有意思。
pbsh 2014-11-24
  • 打赏
  • 举报
回复
引用 27 楼 shrenk 的回复:
如果是代码的话,肯定可以搞定,有很多办法查找一个用户,但是如果是SPD的话,不好说,实在不行自己写个activity? 不知道我想的是不是复杂了。
能不能帮忙看看你们的Sharepoint数据库排序规则是什么? 我msdn官方文档指定的排序规则就是Latin1_General_CI_AS_KS_WS,安装时候也没有可以选择的地方。 多谢。
pbsh 2014-11-24
  • 打赏
  • 举报
回复
引用 26 楼 shrenk 的回复:
[quote=引用 24 楼 pbsh 的回复:] 操作系统是中文版的windows server 2012,数据库实例是简体中文的排序规则,但是sharepoint的数据库都是一个拉丁文的排序规则,可能是我安装的时候没注意。 我猜是用户表的排序规则跟工作流传入的创建者信息比对时,由于排序规则不一致,无法比较,所以报错。 现在很难处理了,很多表,函数,统计信息都是那个排序规则 求高人指点方法,多谢.
从SQL 447的错误“表达式类型 int 对 COLLATE 子句无效。” 来看应该是你说的这个问题,因为COLLATE 子句只能应用于 char、varchar、text、nchar、nvarchar 和 ntext 数据类型。可能是在查找用户的时候,是按照用户的id查找的,而id是int型的。 如果是根据某个用户,查找另一个用户的话,应该有别的办法,需要点儿时间想想。[/quote] 感谢兄台的回答. 公司的操作系统和数据库都是中文版的.我在官网下了个Sharepoint的开发测试版本,也是中文版的T_T。 我看了一下,大部分Sharepoint数据库的排序规则默认都是Latin1_General_CI_AS_KS_WS,现在太多东西都是依赖这个排序规则,手工修正麻烦了。 安装的时候在哪里指定数据库的排序规则呢?好像没有看到过。
Justin-Liu 2014-11-24
  • 打赏
  • 举报
回复
引用 30 楼 pbsh 的回复:
官方文档里涉及排序规则的部分: 5.配置 SQL Server 并确认以下信息: ◦数据库排序规则是 LATIN1_General_CI_AS_KS_WS。 ◦已为 SharePoint 2013 安装程序的用户帐户创建登录帐户。此帐户将为新数据库的数据库所有者。 6.安装与现有数据库服务器上相同的 SQL Server 服务包和修补程序。 ---------------------------------------------------------------------------------------------------------------------------- 然而,2013的工作流管理器,对应的后台数据库却默认是现有数据库实例的排序规则。 微软倒是挺有意思。
现在已经确定就是这个原因了吗? 你网上搜搜,如果这是个普遍问题,那或许会有一个工具去修改,不然就手动改吧 话说,如果没有的话,你做一个,挺不错的呀
计算机器 2014-11-21
  • 打赏
  • 举报
回复
如果是代码的话,肯定可以搞定,有很多办法查找一个用户,但是如果是SPD的话,不好说,实在不行自己写个activity? 不知道我想的是不是复杂了。
计算机器 2014-11-21
  • 打赏
  • 举报
回复
引用 24 楼 pbsh 的回复:
操作系统是中文版的windows server 2012,数据库实例是简体中文的排序规则,但是sharepoint的数据库都是一个拉丁文的排序规则,可能是我安装的时候没注意。 我猜是用户表的排序规则跟工作流传入的创建者信息比对时,由于排序规则不一致,无法比较,所以报错。 现在很难处理了,很多表,函数,统计信息都是那个排序规则 求高人指点方法,多谢.
从SQL 447的错误“表达式类型 int 对 COLLATE 子句无效。” 来看应该是你说的这个问题,因为COLLATE 子句只能应用于 char、varchar、text、nchar、nvarchar 和 ntext 数据类型。可能是在查找用户的时候,是按照用户的id查找的,而id是int型的。 如果是根据某个用户,查找另一个用户的话,应该有别的办法,需要点儿时间想想。
Justin-Liu 2014-11-21
  • 打赏
  • 举报
回复
你的是447啊,根本查不到对应的ID。。。 你各种东西都装的中文版吗?
pbsh 2014-11-20
  • 打赏
  • 举报
回复
Cause: One or more of the following might be the cause: Insufficient SQL Server database permissions ----这个应该查看哪个用户的权限?我的域管理员是有访问所有数据库权限的。 SQL Server database is full ----------看过了,都是自增长,没满。 Incorrect MDAC version ---------这个怎么确定? SQL Server database not found -----------数据库存在 Incorrect version of SQL Server -------sql server 2012 SQL Server collation is not supported -----排序规则?怎么判定是否支持? Database is read-only -----数据库都是可读写的。
pbsh 2014-11-20
  • 打赏
  • 举报
回复
看到一篇文章,不知道跟这个是否有关系。 http://technet.microsoft.com/en-us/library/ee513056(v=office.14).aspx
pbsh 2014-11-20
  • 打赏
  • 举报
回复
Unknown SQL Exception 447 occurred. Additional error information from SQL Server is included below. 表达式类型 int 对 COLLATE 子句无效。 ConnectionString: 'Data Source=WIN-RQDF9P2CNN9;Initial Catalog=WSS_Content;Integrated Security=True;Enlist=False;Pooling=True;Min Pool Size=0;Max Pool Size=100;Connect Timeout=15' Partition: 401174ad-bb2b-4f75-ba1d-e79c68ae7a63 ConnectionState: Closed ConnectionTimeout: 15 SqlError: '表达式类型 int 对 COLLATE 子句无效。' Source: '.Net SqlClient Data Provider' Number: 447 State: 0 Class: 16 Procedure: '' LineNumber: 1 Server: 'WIN-RQDF9P2CNN9' Proxy response returned error: '远程服务器返回错误: (500) 内部服务器错误。'
计算机器 2014-11-20
  • 打赏
  • 举报
回复
这个跟数据库访问有关系,在这个错误附近肯定还有别的错误,你找找看,找到了一起贴出来看看
pbsh 2014-11-20
  • 打赏
  • 举报
回复
引用 11 楼 jason_dct 的回复:
我看看, 你是使用 ULSViewer 工具找到日志吗?
哇,感谢老大,这个工具好用呃。 看到错误: 11/20/2014 10:29:11.70 w3wp.exe (0x0D18) 0x1E04 SharePoint Foundation Database 880i High System.Data.SqlClient.SqlException (0x80131904): 表达式类型 int 对 COLLATE 子句无效。 在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction) 在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose) 在 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady) 在 System.Data.SqlClient.SqlDataReader.TryConsumeMetaData() 在 System.Data.SqlClient.SqlDataReader.get_MetaData() 在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) 在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds) 在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite) 在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) 在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) 在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior) 在 Microsoft.SharePoint.Utilities.SqlSession.ExecuteReader(SqlCommand command, CommandBehavior behavior, SqlQueryData monitoringData, Boolean retryForDeadLock) ClientConnectionId:2cb40c48-ebed-43d7-9ed6-9e87e5dde2ca 218d5f2e-e7ee-afde-3a71-d151b6672eaf
pbsh 2014-11-20
  • 打赏
  • 举报
回复
引用 13 楼 SPFarm 的回复:
楼主的工作流是SP Designer做的,还是vs做的?
SPD做的。
pbsh 2014-11-20
  • 打赏
  • 举报
回复
引用 11 楼 jason_dct 的回复:
我看看, 你是使用 ULSViewer 工具找到日志吗?
直接记事本打开的
Justin-Liu 2014-11-20
  • 打赏
  • 举报
回复
看着晕 先把问题最小化
Justin-Liu 2014-11-20
  • 打赏
  • 举报
回复
是不是VS自己开发的啊 SPD设计的报500那就有可能是bug了
pbsh 2014-11-20
  • 打赏
  • 举报
回复
操作系统是中文版的windows server 2012,数据库实例是简体中文的排序规则,但是sharepoint的数据库都是一个拉丁文的排序规则,可能是我安装的时候没注意。 我猜是用户表的排序规则跟工作流传入的创建者信息比对时,由于排序规则不一致,无法比较,所以报错。 现在很难处理了,很多表,函数,统计信息都是那个排序规则 求高人指点方法,多谢.
Justin-Liu 2014-11-20
  • 打赏
  • 举报
回复
加油!就是这个路子 下班了,明天有时间跟你一起看看
SPFarmer 2014-11-19
  • 打赏
  • 举报
回复
楼主的工作流是SP Designer做的,还是vs做的?
段传涛 2014-11-19
  • 打赏
  • 举报
回复
表示 没有看到, 仅仅查相关信息 , 有个分类的。
加载更多回复(11)

3,245

社区成员

发帖
与我相关
我的任务
社区描述
企业开发 SharePoint
社区管理员
  • SharePoint社区
  • 霖雨 - LinyuLoveTJ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧