MDG产品近10年最大变革综述 - MDG on S/4HANA 2023

前言

SAP Master Data Governance on SAP S/4HANA 2023 (私有云和OP)带来了主数据治理的众多创新内容,包括新的“cloud-read mode”,该模式将作为配置和使用MDG产品的一个全新额外选项。作为MDG产品近10年来的最大版本更新,将支持一些新的主数据治理场景,比如数据提供方触发自动化的主数据创建和变更流程,此外也将支持新的“federated governance”(联邦式治理)方式,这种方式下MDG将在SAP S/4HANA系统架构中扮演好核心数据拥有者的角色。此外,2023版MDG也会带来诸多“classic mode” 经典模式下的功能增强,这部分内容已经在之前的blog中详细解释。

业务伙伴数据的cloud-ready模式介绍

在去年的SAP TechEd大会上,SAP介绍了ABAP Cloud将作为下一代ABAP开发模型,用于支持基于云的企业级应用开发。这将使SAP Business Technology Platform (BTP)平台和SAP S/4HANA 平台在公有云和私有云环境协同发展,相互配合。ABAP Cloud使用FIORI作为前端,Core Data Services(CDS)支撑数据模型,ABAP RESTful Application Programming Mode(RAP)和云原生ABAP语言实现业务逻辑。

作为SAP核心MDM解决方案,SAP MDG完全基于ABAP构建,因此MDG也将适配最新的SAP技术架构。综上所述,SAP在MDG产品开发了新的cloud-ready模式,该模式完全基于ABAP Cloud架构实现。

Cloud-ready 模式对于MDG业务伙伴数据来说将是一个新的选项,可以使用该模式管理主数据治理流程,包括主数据集中治理 MDG,数据合并 MDC和数据质量管理 MDQ。对于已经存在的MDG流程来说(老的MDG今后统称为classic mode),新模式也是一种可选项。客户可以同时使用cloud-ready模式和classic模式。Cloud-ready模式目前支持业务伙伴主数据域,并将是数据提供方集成和联邦式数据治理的基础。

在这里插入图片描述

图:MDG IMG配置中新的“Cloud-Ready Mode”节点。原有MDG配置现在都放置于“Classic Mode in SAP MDG”节点下。

在MDG中使用cloud-ready模式的主要优点在于流程设计的一致性和所有MDG应用都将基于SAP Fiori界面展现:

  • 可以启用端到端的全自动化流程(如外围系统发数->MDC->MDG->激活->下发流程)
  • 使用工作流把MDC、MDQ和MDG的所有步骤串联起来
  • 可以在任何主数据步骤中启用主数据批量维护界面(新的基于Fiori界面)
  • 从MDC到MDG的无感界面跳转和交互
  • 字段扩展在所有MDG Fiori界面上保持一致
  • 提供新的流程可视化界面,让申请人随时看到目前申请状态

数据提供方集成

Data provider integration 是MDG主数据质量管理模块的扩展。它是外部数据内容和服务接入MDG平台的门户。

客户价值通过各种集成场景,利用外部服务和自动化端到端主数据管理流程而不断提升。数据提供方集成的使用包含在SAP MDG中(需要和数据提供方签订额外的合同):

假设你是一个主数据专员,目前需要去创建一条新的客户主数据。你首先在Fiori
Launchpad上打开Manage Business Partner应用,然后搜索相关的客户数据是否存在:你通过输入搜索条件,如公司名称(1)。因为没有找到想要的主数据,现在需要新建一条客户数据。
在这里插入图片描述

图:数据提供方集成功能支持自动化创建或修改BP数据

与手工填写BP所需字段内容不同,你可以点击“Look Up and Create” 按钮(2),这将直接获取到外部数据源的相关记录并显示在MDG搜索结果清单中。现在你可以在列表中选中一条所需记录,然后点击“Create Business Partner” (3)。外部数据源的数据将会自动传输到MDG流程中(4):用户得以节约大量填写数据的时间,并确保数据质量。

SAP MDG 联邦化部署介绍

联邦化的主数据治理是除了SAP MDG主数据集中治理外的另一种部署方式选项。这种部署模式允许将主数据所有权分散到多套MDG实例中,每个MDG实例只管理主数据的一个子集。用BP主数据来举例,一个MDG实例负责管理核心数据(如公司名、地址、税号、识别号等),多个其他的MDG实例可以分别管理组织层级数据(如销售数据、财务数据等)。用户可以指定不同的系统负责主数据中的不同视图。在联邦主数据治理场景下,除了在不同系统架构中协同处理数据外,主数据流程也可以在不同的系统中进行协同管理,并跨系统地追踪每个流程进度。

该模式下主数据可以在所有MDG系统和下游业务系统进行维护。维护后的数据需要被分发到核心数据拥有者系统中,用于分析本次变化的数据内容,并确定这些变更数据的拥有者系统。这些数据变更将通知到相关的拥有者系统,他们将修改并验证这些数据,并把结果反馈给核心数据拥有者。一旦核心数据拥有者收到了所有数据拥有者的反馈信息,他将会把新的数据重新分发到关联的MDG系统和所有相关的下游业务系统。

联邦主数据治理的概念

图:联邦主数据治理的概念

在这里插入图片描述

图:联邦主数据治理下,一台MDG实例作为核心数据拥有者,其他MDG实例作为业务数据拥有者

联邦MDG的最大好处在于可以灵活管理数据:

  • 集中统一管理核心数据
  • 在不同的业务单元中按需管理各业务相关的主数据字段
  • 联邦流程贯穿于所有相关的MDG系统中,可以灵活按需配置
  • 跨系统的流程可视化能力
  • 减少各业务单元的沟通协调成本,提高了MDG主数据管理平台的适用性
  • 11
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
Java可以使用HttpURLConnection或者HttpClient这两个类库调用其他项目的接口。 下面是使用HttpClient调用其他项目接口的示例代码: ```java import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.List; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; import org.apache.http.client.entity.UrlEncodedFormEntity; import org.apache.http.client.methods.HttpPost; import org.apache.http.impl.client.CloseableHttpClient; import org.apache.http.impl.client.HttpClients; import org.apache.http.message.BasicNameValuePair; import org.apache.http.util.EntityUtils; public class HttpClientExample { public static void main(String[] args) { CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost httpPost = new HttpPost("http://example.com/project/v1/mdg/identity/project/queryAllProject"); List<NameValuePair> params = new ArrayList<>(); params.add(new BasicNameValuePair("param1", "value1")); params.add(new BasicNameValuePair("param2", "value2")); try { httpPost.setEntity(new UrlEncodedFormEntity(params, StandardCharsets.UTF_8)); HttpResponse response = httpClient.execute(httpPost); HttpEntity entity = response.getEntity(); if (entity != null) { InputStream instream = entity.getContent(); BufferedReader reader = new BufferedReader(new InputStreamReader(instream)); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } } } catch (IOException e) { e.printStackTrace(); } finally { try { httpClient.close(); } catch (IOException e) { e.printStackTrace(); } } } } ``` 在上面的代码中,我们使用了HttpPost类来发送POST请求,并传递参数。params是一个List,包含了所有的参数名和参数值。UrlEncodedFormEntity类将params转换成了POST请求的参数格式。 需要注意的是,这里的URL是示例代码中的URL,需要替换成实际的接口URL。另外,如果接口需要传递JSON格式的数据,则需要使用HttpEntity和StringEntity类来构造请求体。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值