Technical Articles
SAP S/4HANA Cloud集成与扩展FAQ(2020年12月 – 2021年3月)
本文主要收集了与集成扩展相关的常见问题(2020年12月 – 2021年3月),按照主要问询对象API,CDS View,CPI,自定义字段和逻辑以及集成相关对常见问题进行了大致的分类。每一类对象下又进行了问题性质的分类,例如:功能缺失,操作和实施以及配置相关问题等。客户可以点击下方链接查看到相关问题。
Contents
API
功能缺失相关问题
- 问题:客户使用SOAP API PurchaseOrderRequest_In来创建purchase order可以成功,但是不能生成delivery schedule lines,即使填了相应的字段。
解答:当前该SOAP API不支持创建schedule lines,可以使用Odata API PURCHASEORDER_PROCESS_SRV来创建含schedule line的PO。
- 问题:哪些 API 可用于为生产订单添加组件?
解答:目前,只有可用于读取生产订单的组件的API,没有可用于添加组件的 API。若您业务需要,您可以通过customer influence提出功能请求。
操作和实施相关问题
- 问题:想要使用API “Billing Document – Create with SD Document Reference”来创建sales billing document,想问API是否支持partial invoicing?以及这是一个SOAP API,客户之前用的是ODATA,会有影响吗?
解答:1. partial billing/invoicing不取决于那个渠道,而是取决于item category。
- SOAP通常是异步的,也能处理相对大量的数据;ODATA一般是同步的,更加用户友好,因为得到及时反馈。但处理的数据量不如SOAP。因为两个API类型提供的字段是不一样的,所以更应该从业务上看是否需要的字段都支持。
- 问题:客户想要通过API (API_PRODUCTION_ORDER_2_SRV)来更改long text但失败,想要问什么原因?
解答:long text在API里是只读的,不能更改。详见链接:https://help.sap.com/viewer/a6f0333202384ba2b48a841a4a6deb1b/2020.000/en-US/e76b570c36764ae9a1cc4747a3c144b7.html
- 问题:在Sales Order ODATA API中没有找到字段unloading point?
解答:目前API里没有这个字段。Workaround是使用VA01来创建含unloading point的SO;或者用API先创建SO,然后用VA02来添加unloading point。或者去Customer Influence上提交一个新需求申请。
- 问题:客户使用API “Journal Entry – Change (Asynchronous)”来修改journal entry的时候,发现message dashboard里面没有内容。
解答:修改journal entry的API在SAP_COM_0002里,异步创建journal entry的inbound SOAP API是JournalEntryBulkCreationRequest_In,异步修改journal entry的inbound SOAP API是JournalEntryBulkChangeRequest_In。但是把修改结果返回给外部系统是另一个outbound的API:JournalEntryBulkChangeConfirmation_Out
- 问题:使用Odata API来读取S4的batch主数据,但是每次读取上限100条。问如何扩大上限?
解答:Odata API如果采用分页机制的话,最大可以到1000条。
- 问题:使用API(API_CUSTOMER_RETURN_SRV)中/A_CustomerReturn的POST 方法创建退货订单,项目批次无法保存
解答:请参阅社区中的帖子,获取问题的答案:
https://s4hanacloud.community.sap/questions/KOOABow1ww4oV3OBngnkcu
批次字段为只读字段。
- 问题:客户维护了purchase info record,但是通过PO的Odata API生成的Purchase order上的tax code不是客户想要的tax code。
解答:确认tax code的优先级有以下两个:
- condition record
- info record
因为客户维护了condition record,上面的tax code和info record里的tax code不同,因此覆盖了info record里的tax code。因此客户需要:
- 更改condition record上的tax code。或者
- 移除condition record。
- 问题:客户使用Odata API API_PRODUCT_SRV来创建product主数据,但是MRP 1 View里minimum lot size没有数据。
解答:原因是因为字段MinimumLotSizeQuantity在多个节点上都有,客户没有在节点A_ProductSupplyPlanning上维护该字段,只在A_ProductPlant上维护了,导致数据没有保存成功。在Note 2928466里列出了在多个节点上都有同一字段的列表。
- 问题:客户询问有没有不通过API来批量更新purchase info record里的delivery time的方法。
解答:有App “Mass Changes to Purchasing Info Records”可以来完成这个操作。
- 问题:使用API API_PRODUCTION_ORDER_2_SRV想要更改scheduled date,但是出错。
解答:MfgOrderScheduledStartDate和MfgOrderScheduledEndDate是只读的,不能通过API直接更改。需要用API更改MfgOrderPlannedStartDate和MfgOrderPlannedEndDate,然后MfgOrderScheduledStartDate和MfgOrderScheduledEndDate会自动更改。
配置相关问题
- 问题:调用API_MATERIAL_DOCUMENT_SRV接口的时候,获取数据的时候没问题,但是向SAP推送数据的时候,SAP有时会返回 401的问题。
解答:这是客户端问题。401 是由于未向 SAP 系统发送登录详细信息,如果没有收到登录详细信息,SAP无法在后端执行此操作,这是预期结果。客户需要检查其客户端上是否在 http headers 有传送login details
CDS View
回归问题
- 问题:Custom CDS View在系统更新之后不能返回数据了。
解答:解决这个问题的一个方法是:在Q系统重新发布一下custom communication scenario;然后到P系统重新把这个scenario从Q系统导入一下。但是需要记住的是,communication arrangement不要被重新激活。
功能缺失相关问题
- 问题:使用的CDS View I_InventoryPriceByKeyDate不支持四位小数?
解答:在表TCURX里没有维护CNY,那么默认小数位数就是两位。
- 问题:想要打印超过 40 个字符的物料描述文本,是否有支持的CDS?
解答:没有显示产品/物料主数据长文本的已发布 CDS 视图。为了了解功能改进,请考虑到SAP Customer Influence提交新的请求。
操作和实施相关问题
- 问题:想要找含有invoice receipt’s quantity字段的CDS View。
解答:CDS View I_PurchaseOrderHistoryAPI01含有相关的字段。这个CDS View下有GR(Goods Receipt)和IR(Invoice Receipt)的数据,这两个的quantity都可以看到。
- 问题:从CDS View “I_PurgInfoRecdOrgPlntDataApi01″得到的数据不正确,net price为0;但是从”Manage Purchasing Info Records”里看到的值不为
解答:这是因为CDS View “I_PurgInfoRecdOrgPlntDataApi01″的数据是从EINE表得到的,net price是从字段NETPR得到的;而Manage purchasing info record或者ME12/ME13中的net price是一个计算后的值。
- 问题:哪个CDS View包含字段MARC-BSTRF (Rounding Value)?
解答:客户可以去CDS View I_PRODUCTSUPPLYPLANNING找到rounding value,具体链接:https://api.sap.com/cdsviews/I_PRODUCTSUPPLYPLANNING/fields
- 问题:哪个CDS View存有accounting journal entry信息?
解答:建议使用CDS View I_JournalEntryItem。这个CDS View包含了journal entry item(表ACDOCA)的大部分内容,比如company code,G/L Account,profit center,segment等等。
- 问题:客户没有在含物料的 CDS 视图中找到“反冲”字段。是否有 CDS 视图可用?
解答:CDS I_PRODUCTSUPPLYPLANNING 包含字段 MatlCompIsMarkedForBackflush( 反冲 ),
详细信息可参考链接:https://s4hanacloud.community.sap/questions/KBtdbAUYrkUTE1kxQ2u7Ew
- 问题:客户在为销售凭证流创建 CDS 视图报表,需要销售订单、出库交货和开票凭证的业务伙伴的相关信息。想问有没有出库交货业务伙伴的 CDS?
解答:详情请查阅 api.sap.com:
Outbound Delivery (A2X) -> Outbound Delivery Headers -> /A_OutbDeliveryHeader(‘{DeliveryDocument}’)/to_DeliveryDocumentPartner
- 问题:是否有“映射关键指标与总账科目”的数据源?想使用此数据源生成 CDS 视图,项目经理可以检查内部项目的成本详细信息。
解答:SSCUI 101306 中没有用于映射活动类型和总账科目的 CDS 视图。
详细信息可以参考:https://s4hanacloud.community.sap/feed/item/u0rvaSn9KtyBr4gaIxj8HO?anchor_feed=true
另外,如果您想要使用 CDS 视图检索“费用”的计划成本,
您可以使用 CDS 视图 I_RESOURCEREQUESTPLANITEM。
- 问题:客户基于“I_MfgOrderActlPlaTgtCost”标准 CDS 视图创建了自定义 CDS 视图,在预览该CDS的时候发现字段 CrdtTargetCostInDspCrcy & DebitTargetCostInDspCrcy 没有值,但基于此 CDS 的QUERY却可以取到值。
解答:对于CDS View的问题,请确保参数正确并在 CDS 视图中再次检查。
CDS View字段目标成本借项的值仍不同于生产订单目标成本的问题function gap。CDS 视图中显示的目标成本并不总是准确的。
如下面注释所示,目标成本始终是即时的。
2618359 – FAQ: Product Costing: On-the-Fly Target Cost Calculation in S/4 HANA Cloud(https://launchpad.support.sap.com/#/notes/2618359 )但实际上,目标成本应该是完成差异计算后的固定值。
- 问题:是否有CDS可以链接物料和工艺路线?
解答:请考虑使用 CDS 视图 I_MfgBOOMaterialAssignment 查找工艺路线的物料分配信息。
详情可参考help.sap.com 文档,网址为:
CPI
操作和实施相关问题
- 问题:客户不能访问CPI的tenant了:https://XXXXXXX -tmn.hci.cn1.hana.ondemand.com/itspaces
解答:除了分配Administrator的角色之外,还需要分配CPI的角色,具体步骤可以查看相关链接https://help.sap.com/viewer/368c481cd6954bdfa5d0435479fd4eaf/Cloud/en-US/3ec767915f4b4cf894413971c8376ca5.html
- 问题:客户使用 S/4HANA Cloud Scope Item 1ZQ 与外部第三方仓库连接,并且使用 SOAP API 将入库交货发送到外部仓库 和 进行确认。现在,该客户还要使用 SAP CPI 。想要了解如何配置 SAP CPI 集成,可以使 S/4 HANA Cloud 可以通过 SAP CPI 向外部 发送入站交付 ,并且可以监控 SAP CPI 中的流程。
解答:1.创建“通信系统”以在 S4HANA Cloud 和 SAP Cloud Platform Integration 之间建立连接
2.创建“通信场景”以存储 CPI 服务。
3.转到“通信安排”链接通信系统和通信场景。
自定义字段和逻辑
操作和实施相关问题
- 问题:想要删除自定义字段,报错说自定义字段在自定义的CDS View里被使用。但系统里没有找到该CDS View。
解答:该CDS View被用户创建成了一个draft版本,所以只有创建的用户能看到。所以先要创建用户登录去draft版本的CDS View里删除该自定义字段,然后可以去完全删除该自定义字段。
- 问题:如何在SAP 自定义字段和逻辑中向自定义业务对象中写入数据?
解答:您可以在以下博客中找到一些指导:
配置相关问题
- 问题:客户在业务上下文产品-常规里增加了一个自定义字段,在主数据迁移模板里找不到。
解答:详情请查看KBA 2978407。
集成相关
操作和实施相关问题
- 问题:如何做S/4HANA Cloud与ADFS的集成?
解答:可以参考以下两个链接:
https://answers.sap.com/questions/13243409/view.html
- 问题:客户实现了自定义逻辑”Batch – After Internal Batch Number Assignment using Custom Business Objects”,第一条记录的KEY可以被写入custom business object,但之后的都报错。
解答:为了定义自定义逻辑生成batch number,需要依次使用两个BadIs:Before Internal Batch Number Assignment,然后After Internal Batch Number Assignment(或After Internal Batch Number Assignment using Custom Business Objects),客户没有实现第一个badI。
以上为本次分享的全部内容。若想要了解往期更多有关集成扩展的常问问题,可以点击下方链接进行查看:
- S/4HANA Cloud集成与扩展FAQ(2020年6月 – 2020年8月):click here.
- S/4HANA Cloud集成与扩展FAQ(2020年3月 – 2020年5月):click here.
- SAP S/4HANA Cloud集成与扩展FAQ(2020年09月 – 2020年11月): click here.