问题标签 [sap-successfactors]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
108 浏览

sap-cloud-sdk - SAP OData 生成器为导航条目生成错误 URL

使用 SAP V2 代码生成器,我们为成功因素创建了类。

为调用导航实体的请求生成 URL 时,会引发 500 错误。

生成$select=emailNav/*&$expand=emailNav

尝试运行会导致

message lang="en-US">无法理解具有字符序列的 API 请求:emailNav/* 在字符位置编号:9 个无效字符:*

当/如果我尝试将 ALL_FIELDS 静态字段用于实体时,我会遇到类似的问题。

如果我删除 /* 并将 url 粘贴到浏览器中,它可以正常工作。

我们正在寻找任何解决方案。已经花了几天时间阅读博客和运行搜索。

是否有关于使用生成的类的高级文档?

提前致谢。

找到解决方案—— 通过克隆 FluentHelperBasic 类并执行以下操作找到了解决问题的方法:

此代码需要在代码设置委托扩展之后移动。

0 投票
1 回答
81 浏览

.net-core - 使用 Dotnet API 和 IdentityServer 4 的 Successfactors SSO

我有一个使用 IdentityServer4 作为 IDP 的 Dotnet Core API 应用程序。前端是用 Angular 构建的。

现在,我需要连接到我的一位客户的 Successfactors。我知道 SAML 是那里最好的联合协议。

请建议我在这里应该采用什么方法以及我可以遵循的相关教程。我没有得到好的谷歌结果。

0 投票
1 回答
248 浏览

rest - 通过 API 从成功因素中提取所有数据

全部,

我正在尝试使用 oData API 从成功因素中提取所有数据,但它一次只提供 1000 行

如何一次提取所有数据?

谢谢

0 投票
0 回答
41 浏览

odata - SAP SuccessFactors:[COE0020]您无权查看此模板

尝试使用以下 curl 请求在 SAP SuccessFactors 中发布 GoalComment_1 实体。

curl --location --request POST 'https://apisalesdemo8.successfactors.com/odata/v2/GoalComment_1'
--header 'Authorization: Bearer eyJ0b2tlbkNvbnRlbn...'
--header 'Accept: application/json'
--header 'Content-Type: application/json'
--header 'Cookie: JSESSIONID=B3FA77754CA4B3FE696F9B1605CB5CEE.ps8bsfapi52t; JSESSIONID=8CDD1581EF4E8E2E5F2DE075033BCD5E.ps8bsfapi51t'
--data-raw '{}'

但是,遇到以下错误:

0 投票
2 回答
95 浏览

javascript - 在正则表达式中添加多个条件

我是使用正则表达式的初学者。我试图在 SuccessFactors Onboarding 1.0 中建立验证。对于手机号码字段。人们应该能够添加最多 15 位数字和以下字符:+ ( ) 和空格。我想禁止人们输入字母(即分机)。如果格式不匹配,系统应该抛出错误。错误是在页面设置中配置的,正则表达式是一个条件,当不匹配时会导致屏幕上弹出错误,因此错误消息不需要是表达式的一部分。

我想出了以下代码:^[\d]{1,15}$|\|/[^a-z]+x/$,但该代码仅启用字符数的验证加上禁用添加字母(在测试时它似乎禁用了大写和小写)。我不知道如何添加允许添加上述字符的第三个条件。我尝试使用此代码:[\d]{1,15}$|\[^a-z]+x\|\(?:+()\$,但此代码不允许添加其他字符并禁用错误消息,用户无法继续处理到下一页,但屏幕上不会出现错误,只有旁边的红色星号场。

我可以请任何人帮助我弄清楚如何正确添加最后一段验证,以便允许 + () 和最多 15 位数字等字符,但其他所有内容都会弹出错误。

提前致谢!

0 投票
0 回答
149 浏览

active-directory - LdapErr:使用 Azure AD 预配服务将员工从 SuccessFactors 预配到 Active Directory 时的 DSID-0C090D77

我们使用 Azure AD 预配服务将员工从 SAP SuccessFactors 预配到 Active Directory(本地)。几个月来一切都很好,但一周前我们收到了一些员工的以下错误:

{"Exceptions":[{"SerializedExceptionString":"{"ClassName":"Microsoft.ActiveDirectory.SynchronizationAgent.Contract.SerializableDirectoryOperationException","Message":"语法无效。","Data":null,"InnerException" :null,"HelpURL":null,"StackTraceString":null,"RemoteStackTraceString":null,"RemoteStackIndex":0,"ExceptionMethod":null,"HResult":-2146233088,"Source":null,"WatsonBuckets": null,"ResponseResultCode":"InvalidAttributeSyntax","ResponseErrorMessage":"00000057: LdapErr: DSID-0C090D77, comment: 属性转换操作出错,数据 0, v2580","SerializedException":"详细信息:\r\nType: System .DirectoryServices.协议。DirectoryOperationException\r\n语法无效。\r\n堆栈跟踪:\r\n\r\n服务器堆栈跟踪:\r\n 在 System.DirectoryServices.Protocols.LdapConnection.ConstructResponse(Int32 messageId, LdapOperation operation, ResultAll resultType, TimeSpan requestTimeOut, Boolean exceptionOnTimeOut)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object[]& outArgs)\r\n 在 System.Runtime.Remoting .Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)\r\n\r\n在 [0] 处重新抛出异常:\r\n 在 System.DirectoryServices.Protocols.LdapConnection.EndSendRequest(IAsyncResult asyncResult)\r\n 在System.Threading.Tasks.TaskFactoryProtocols.LdapConnection.ConstructResponse(Int32 messageId, LdapOperation operation, ResultAll resultType, TimeSpan requestTimeOut, Boolean exceptionOnTimeOut)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object []& outArgs)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)\r\n\r\n在 [0] 处重新抛出异常: \r\n 在 System.DirectoryServices .Protocols.LdapConnection.EndSendRequest(IAsyncResult asyncResult)\r\n 在 System.Threading.Tasks.TaskFactoryProtocols.LdapConnection.ConstructResponse(Int32 messageId, LdapOperation operation, ResultAll resultType, TimeSpan requestTimeOut, Boolean exceptionOnTimeOut)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Object []& outArgs)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)\r\n\r\n在 [0] 处重新抛出异常: \r\n 在 System.DirectoryServices .Protocols.LdapConnection.EndSendRequest(IAsyncResult asyncResult)\r\n 在 System.Threading.Tasks.TaskFactory对象服务器,Object[]& outArgs)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)\r\n\r\n在 [0] 处重新抛出异常: \r\n在 System.DirectoryServices.Protocols.LdapConnection.EndSendRequest(IAsyncResult asyncResult)\r\n 在 System.Threading.Tasks.TaskFactory对象服务器,Object[]& outArgs)\r\n 在 System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink)\r\n\r\n在 [0] 处重新抛出异常: \r\n在 System.DirectoryServices.Protocols.LdapConnection.EndSendRequest(IAsyncResult asyncResult)\r\n 在 System.Threading.Tasks.TaskFactory1.FromAsyncCoreLogic(IAsyncResult iar, Func2 endFunction, Action 1 endAction, Task1 promise, Boolean requiresSynchronization)\r\n--- 从先前引发异常的位置结束堆栈跟踪 ---\r\n 在 System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()\r\ n 在 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务)\r\n 在 Microsoft.ActiveDirectory.SynchronizationAgent.ActiveDirectory.LdapConnectionExtensions.d__0`1.MoveNext()\r\n--- 堆栈跟踪结束.. . 此操作已重试 0 次。它将在此日期之后再次重试:2021-08-17T14:19:17.6916498Z UTC

上述错误显示在 Azure AD 门户中。特定的员工并没有真正的共同点。其中三个在 SuccessFactors 中处于禁用状态,其中 1 个处于活动状态。

我们构建了逻辑以在必要时更改用户的 OU,并确定是否应在 Active Directory 中禁用用户。

我们已经尝试重新启动集成,重新启动配置代理,但到目前为止还没有解决这个问题。

我们的主要问题是我们无法追踪错误消息真正来自哪个属性。我们可以在 Active Directory 中启用额外的日志记录吗,或者以前有人见过这个问题吗?

0 投票
0 回答
69 浏览

moodle - 从外部链接将 SCORM 包上传到 SAP SuccessFactors?

我想通过外部链接将 SCORM 包上传到 SuccessFactors(到我的客户存储课程的服务器),但我不确定它是否可能(比如可以选择上传下载包的 moodle)。我能找到的与该问题相关的所有文档和论坛都至少有几年的历史了。

根据 SAP SuccessFactors 官方网站,SF 支持 SCORM

根据SAP SF 手册(2018 版)

“选择 AICC 标准而不是 SCORM 等替代标准的主要优势之一是 AICC 内容可以驻留在任何地方,并且仍然保持 LMS 启动和跟踪它的能力。相比之下,SCORM 标准要求内容驻留在与 LMS 相同的域。”

我发现“同源策略”要求 SCORM 包的位置在同一台服务器上。

这是因为 SCORM 包通过 JS API 与 LMS 进行通信。Web 浏览器允许包含在第一个网页中的脚本访问第二个网页中的数据,但前提是两个网页具有相同的来源。

由于上述原因,SCORM 包需要在同一个域中才能进行这些 API 调用。

我正在尝试找到任何其他方式来上传 SCORM 内容以上传到 SuccessFactors,而无需将内容实际存储在其服务器上。

我专注于使用 SCORM,因为我创建了一个 JS 包装器,它将使用 Scormfunctions 的 API 调用(LMSInitialize、LMSGetValue 等)进行初始化,以将数据发送回 node.js 服务器。

我发现的另一个选择是 AICC 包装,但根据我的研究,我找不到很多例子,并得出结论,在 2014 年 AICC 解散后,它已成为一个死标准。

我真的很感谢任何与它相关的帮助和任何建议,即使它是以不同的方式将包(任何合规性都可以)上传到 SAP SuccessFactors 并将学生数据返回到 node.js 服务器。

0 投票
1 回答
580 浏览

odata - 通过 SF OData API 查询已删除的记录?

我正在通过 OData API 将 Successfactors 员工中心数据(包括 FO、MDF、BG 元素等)复制到本地数据库以进行第三方集成。

它能够通过过滤最后修改日期来跟踪更改的记录。但是,已删除的记录无法从 OData API 中捕获。因此,当删除相应的 EC 记录时,我无法删除本地数据库中的记录。

有什么方法可以从 API 或其他来源获取已删除的记录?谢谢。

0 投票
0 回答
10 浏览

sap-successfactors - SAP 成功因素评估问题

我正在实施 SAP SF,当地合作伙伴更早更换了他的开发团队,因为他们没有能力。现在他说他有一个非常好的新团队。

我需要一些问题来帮助我评价这个由合作伙伴介绍的新开发团队。

基于这个评级,我可以接受他们是否实施该项目。

谢谢

0 投票
0 回答
26 浏览

sap-successfactors - SAP SuccessFactors Recruiting Marketing 将工作与外部站点集成

也许这个问题对你们中的一些人来说很简单,但是,我花了一些时间在互联网上搜索有关通过 API 从 SAP SuccessFactors Recruiting Marketing 中提取所有已发布/已发布工作的能力,但没有明确的答案。

我们的一位客户的网站建立在 SAP SucessFactors 中的 Career Site Builder 模块之上。我们是否希望将所有已发布的工作都拉入外部网站并将其整合到外部网站上?我正在寻找以下几点的答案:

  1. SAP SuccessFactors 是否为职位和职位搜索提供 API?
  2. 在哪里可以找到有关 API 的综合文档?
  3. 如果有要集成的 API,例如 Restful API 调用的集成机制是什么?
  4. 如果没有可用的 API,是否有人设法将作业拉入外部站点和应用程序,以及如何?

请注意,我已经检查了文档,但如前所述,同步作业用于内部模块 Career Site Builder。