问题标签 [sap-cloud-sdk]

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 回答
3633 浏览

sapui5 - SAP ui5 应用程序中非活动用户的会话超时

我正在创建一个 UI5 应用程序。我的问题是如何为非活动用户设置会话超时。会话超时是否有任何直接属性?

0 投票
2 回答
515 浏览

java - 无法使用 SDK 从 S/4 系统检索数据以进行服务开发

我正在使用 Olingo 构建 OData v2 服务,该服务部分通过自定义网关 OData 服务从 S/4 系统获取数据,部分来自 Cloud Platform Neo 并将两者结合起来。为此,我使用 S/4 Cloud SDK ( https://help.sap.com/viewer/p/SDK_FOR_SERVICE_DEVELOPMENT ) 中包含的 SDK 进行服务开发。

这是我的问题:尝试从我的 Olingo 服务调用我的网关 OData 服务时,它给了我一个错误“在 JSON 中找不到错误字段”。经过一些尝试,我找到了堆栈跟踪,但它也没有真正帮助我,因为它只是说元数据请求失败,没有原因。这是我的堆栈跟踪: 来自 SCP 日志的堆栈跟踪 谁能告诉我这可能是什么原因(凭据和 URL 被仔细检查)和/或帮助我解决这个问题?

提前非常感谢!

编辑

该问题似乎与目标配置有关。我尝试了一个 HTTP 目标而不是 HTTPS,现在它正在工作......我仍然想让它也能在 HTTPS 上工作。

0 投票
2 回答
252 浏览

sap - 我可以在本地或 NEO 环境中使用 com.sap.cloud.servicesdk 吗?

我想使用 SAP Cloud Platform SDK for Service Development 以花哨而简单的方式创建 odata-services :-)

我已按照教程创建一个公开模拟数据的简单 OData V4 服务中的说明进行操作。

我能够在 SAP Cloud Foundry 中成功部署和运行它,但我的目标是在本地以及稍后在 SAP Neo 环境中运行它。

因此,我尝试将其部署在本地 SAP 服务器“Java Web Tomcat 8”上。部署成功,我也可以得到 $metadata。但是,一旦我调用端点http://localhost:8080/quickstart/odata/v4/EPMSampleService/Products,就会返回以下错误消息:

{"error":{"code":"不支持操作。","message":"不支持操作。"}}

如果可以在本地和 SAP NEO 中以某种方式使用 SCP 服务 SDK,有什么想法吗?

0 投票
2 回答
1023 浏览

cloud-foundry - s4sdk、Neo 或 Cloud Foundry

我们目前正在评估 SCP、可用的 SDK,并尝试为以下项目要求找到合适的环境(Neo 或 CF)和正确的设置:

  • 提供 oData 服务
  • 连接 S/4(读/写)
  • SCP Hana DB 中的持久性
  • SCP 工作流程集成
  • SCP文档服务集成
  • 多租户能力

我们发现很难确定正确的设置(环境和 SDK):

  • Neo 中提供了“文档”和“工作流”服务。我们的假设是否正确,即我们的服务应用程序因此也必须在 Neo 中运行?

  • “用于服务开发的 SAP Cloud Platform SDK”在我们看来是实现 OData 服务的正确方法。但是,该 SDK 仅适用于 Cloud Foundry 环境。

请给我们一些建议

  • 什么样的环境适合我们的要求?
  • 可以使用哪些 SDK 来有效地实现它?
0 投票
2 回答
823 浏览

etag - 使用“API_PHYSICAL_INVENTORY_DOC_SRV”修补库存项目时出错(eTag - CloudSDK)

我们希望使用 CloudSDK(版本 1.9.2)在我们的 Java 应用程序中实现库存预订流程。我们正在调用 S4 OnPremise System (1709)。

1.) 我们在使用服务 DefaultPhysicalInventoryDocumentService() 和方法 .createPhysInventoryDocHeader() 时调用创建过程。

=> 结果:创建了实物盘点文件。

2.) 必须对已创建的盘点单据的盘点对象进行盘点。为此,我们使用方法 .getPhysInventoryDocItem() 获取相应的项目,设置新值并使用方法 updatePhysInventoryDocItem() 调用更新过程。

=>结果:错误:“数据服务请求必须是有条件的。尝试使用 \"If-Match\" 标头。”

我们曾使用 SAP 的 Gateway Client 尝试过这个过程。在这里,我们必须使用 GET 过程访问实例,以从响应中获取“eTag”,并能够在 patch 方法中将其指定为“If-Match”参数。此过程在网关客户端中工作。

尽管如此,我们还是对我们的 Java 应用程序尝试了相同的过程。不幸的是,我们没有为获取请求返回 eTag。根据后端的跟踪,与网关客户端中相同的 OData 服务被寻址。

我们的实现是通过 PostMan 调用的(用于测试目的)。

请求(标题/正文): 请求 - 标头 请求 - 正文

回复: 回复

补丁 - 方法:

0 投票
3 回答
354 浏览

odata - 未知异常“null - 解析元数据时出错”。在执行 DefaultSalesOrderService() - updateSalesOrder()

作为 PoC 的一部分,我目前正在尝试为 S/4HANA Cloud 的并行扩展构建一个原型,该原型由两层组成:使用S/4HANA Cloud SDK 与 Java 后端分离的 SAPUI5 前端。

总的来说,它也很好用。但是我经常遇到 UPDATE 命令的问题,所以我写了一个小 servlet 用于演示目的。现在我在更新过程中总是遇到同样的异常,即"Error while parsing the metadata"

我已经尝试了一切,现在不知道什么可能是这个异常的触发器。

我试图在 pom.xml 中添加更多依赖项,但没有成功。使用 GET 命令获取所有字段并更新填充对象的尝试也未成功。ETag 也不是问题,这是自最新版本以来由“versionIdentifier”出色处理的。

如果你们中的任何一个知道我的错误在哪里,我将非常感激!

在此先感谢您的帮助!

[旧] 代码片段:公共类 UpdateService 扩展 HttpServlet

[旧] Http 响应

更新 - 2018-04-18

首先,感谢您的帮助!

我稍微重新编写了代码并实现了 Henning 的解决方法。乍一看,一切似乎都正常。没有例外,也没有警告。

但是,在后端您可以看到,实际值保持不变。你对我有什么建议吗?

[新] 代码片段:公共类 UpdateService 扩展了 HttpServlet

[新] Http 响应

[新] S/4HANA 云 API

0 投票
1 回答
134 浏览

sap-cloud-sdk - 更新请求不再将所有字段发送到 SAP S/4HANA 系统

由于更新到 Cloud SDK 版本 2.0.0,我们现在在向请求中添加字段时遇到了问题。主要是关于“盘点盘点单据项目”的流程步骤。此处手动设置的项目属性不会发送到请求中。

这些是我们实际设置并发送到 S/4 系统的属性:

Java 编码

这些是嵌入在查询中的属性:

S4 中的请求

0 投票
1 回答
97 浏览

sap - 在 Cloud Foundry 中部署 s4sdk 应用程序时出现问题

该项目是使用生成的:mvn archetype:generate -DarchetypeGroupId=com.sap.cloud.s4hana.archetypes -DarchetypeArtifactId=scp-cf-spring -DarchetypeVersion=2.3.1,该项目在本地运行良好。为 spring security 添加了 jars,定义了名为“destinations”的环境并执行了对 S4 Hana 系统的调用,这在本地工作正常。但是,当我通过 cf push 部署它时出现错误,日志如下所示:

如果需要提供任何其他详细信息,请告诉我。

0 投票
2 回答
880 浏览

sap - 获取访问令牌失败:通过 OAuth2Bearer 访问 S4HANA 时未找到有效的 JWT 承载

我通过以下方式生成了项目:

mvn archetype:generate -DarchetypeGroupId=com.sap.cloud.s4hana.archetypes -DarchetypeArtifactId=scp-cf-spring -DarchetypeVersion=LATEST

我包含了 S4Sdk jar 并访问了 S4Hana V2 API。该代码适用于基本身份验证,但是当我将目标类型配置为“OAuth2SAMLBEARER ASSERTION”时,通过 .execute 调用访问 S4Hana API 时,我在 CF 日志中收到以下错误。:

注意我已经在 S4Hana 系统和子账户之间建立了信任,配置了通信和业务用户,主要传播步骤如下:https ://blogs.sap.com/2018/02/05/deep-dive-8-with- sap-s4hana-cloud-sdk-leverage-principal-propagation-via-oauth-2-when-sumption-a-business-api-from-s4hana-cloud/

请检查并让我知道是否需要为此配置其他内容。


我尝试通过评论中建议的博客创建 approuter,但在 cf 中部署 approuter 时出错:

你能帮帮我吗?我从博客中建议的链接下载了 approuter。

0 投票
1 回答
414 浏览

java - 创建 ErpConfigContext 引发异常

我正在尝试使用 S/4HANA SDK 调用 CompanyCode OData VDM 服务,但如果我在 Cloud Foundry 环境中执行此操作,则会收到附加错误。我之前一直在使用 SDK,但这并没有发生。你能帮帮我吗?

代码:

错误: