CPI系列 区分开发/生产环境

2024-03-05 07:48

本文主要是介绍CPI系列 区分开发/生产环境,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

CPI是SAP公司提供的云服务,功能类似于PI/PO,用于集成多个系统之间的调用

本文主要介绍怎么在CPI中区分开发/生产环境

开发包命名

CPI没有区分开发/测试/生产环境.因此只能通过开发包区分不同的环境,以便能够快速识别.

一个简单的命名规则(这个命名规则中SID 和 模块 的前后顺序可能因项目而异

<SID>_<模块>

示例: 

  • DCA_POSDM 表示CAR开发系统的POSDM模块

  • PCA_POSDM 表示CAR生产系统的POSDM模块

  • DS4_MM 表示S4开发系统的MM模块

  • PS4_MM 表示S4生成系统的MM模块

IFlow命名

IFlow (Integration Flow)是CPI配置的基本对象,用于配置一个接口的完整链路

在IFlow配置比较多的情况下, 为了能明确的定义为特定的IFlow,可以设置特定的编码规则区分

<SID>_<接口编号>_<发出系统ID>_<接收系统ID> . 

命名规则中是否需要附带源/目标系统信息,可根据项目实际情况确定.

比如 DCA_XP_SUM_POS_POSDM 代表开发环境中的小票的合计数据上传接口,从POS系统传递到POSDM

也可以简化成 DCA_XP_SUM

IFlow 外部化

IFlow中的关键属性(需要用于区分开发或生产环境的属性)通过外部化的方式添加参数

d3d748039a5af88aaebd38a481cd16ca.png

点击上图的外部化按钮, 对特定属性设置参数,设置好参数后, 属性的原有值会变成参数的默认值. 修改后,保存,部署IFlow.

d788d789f216f5e5f4a747b81640d7b0.png

456dae8e64de0b3cc681314bc7076ce8.png

需要确保外部化以后的数值性样式如下图, 如果还有额外的属性值, 可能会影响后续上传到生产环境的IFlow

5b0b3b59abfb5b7d3214f91bdd53f189.png

IFlow版本

对应创建或修改完成的IFlow,最好习惯性的另存一个新的版本, 这样有利于追溯修改记录.系统会自动建议一个版本号, 可以自行添加备注.

2ccb00b519d12c2780d44e3be335c69e.png

3ad69f7f1d0e7f97893f0bcb60ef0a11.png

IFlow"传输"

IFlow其实没有传输的概念(因为只有一个环境).这里借用大家习惯的传输概念来说明生产环境的IFlow怎么快速实现.

在开发包中下载需要传输的IFlow ,保存在本地电脑中.

ab41ead51d0e1178ac7dd5de09b3d3e0.png

在生产包中,通过上传创建IFlow, 遵照命名规范,修改IFlow名称.

967201990b8eb48a7f98f7d3c2e18610.png

eb7910e895d1adad31112841ad74da9c.png

确保另存为版本与开发系统一致,这样有利于识别开发与生产环境的版本差异.

39be112f2fd03a92989803a65091d621.png

配置参数

开发环境无需配置参数(因为使用了参数的默认值,生产环境对应所有地址/用户相关的参数需要重新配置)

两个入口

第一个入口时在开发包中显示部件时,使用部件操作配置

15a16e3093410ca78bc091999fa33674.png

第二个入口是进入IFlow后,点击配置按钮配置.

f3d427259a6581bd11ee9b56e5102872.png

对所有和地址/用户名相关的参数设定生产环境的对应值.

71bd33a1fb121090624a54fba69643e9.png

0e16fcef7645053983a7a7d1b9163421.png

配置好后部署一下.

部署可能会报错,原因如下. (因为DEMO环境中的生产系统信息尚不完善). 有两个环节没有配置

  • cloud connect 中与生产环境的连接

  • 安全材料中对生产环境账号的配置.

所有信息完善后, PCA_XP_SUM就能部署成功了.

2eab62ab23f0d1e4ebd613a490a5bbb6.png

总结

SAP提供的CPI是一个已经部署好的服务. 用户通过租赁子账号方式获取CPI服务,因此没有多个环境. 只能

  • 通过开发包/IFlow命名区分开发/生产环境. 

  • 通过参数化简化IFlow与环境相关属性的修改. 

  • 通过下载,上传功能快速完成生产环境的IFlow创建或修改.

来实现CPI不同环境的部署

这篇关于CPI系列 区分开发/生产环境的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/775784

相关文章

一篇文章彻底搞懂macOS如何决定java环境

《一篇文章彻底搞懂macOS如何决定java环境》MacOS作为一个功能强大的操作系统,为开发者提供了丰富的开发工具和框架,下面:本文主要介绍macOS如何决定java环境的相关资料,文中通过代码... 目录方法一:使用 which命令方法二:使用 Java_home工具(Apple 官方推荐)那问题来了,

Nginx搭建前端本地预览环境的完整步骤教学

《Nginx搭建前端本地预览环境的完整步骤教学》这篇文章主要为大家详细介绍了Nginx搭建前端本地预览环境的完整步骤教学,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录项目目录结构核心配置文件:nginx.conf脚本化操作:nginx.shnpm 脚本集成总结:对前端的意义很多

一文详解Python如何开发游戏

《一文详解Python如何开发游戏》Python是一种非常流行的编程语言,也可以用来开发游戏模组,:本文主要介绍Python如何开发游戏的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录一、python简介二、Python 开发 2D 游戏的优劣势优势缺点三、Python 开发 3D

基于Python开发Windows自动更新控制工具

《基于Python开发Windows自动更新控制工具》在当今数字化时代,操作系统更新已成为计算机维护的重要组成部分,本文介绍一款基于Python和PyQt5的Windows自动更新控制工具,有需要的可... 目录设计原理与技术实现系统架构概述数学建模工具界面完整代码实现技术深度分析多层级控制理论服务层控制注

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

基于Go语言开发一个 IP 归属地查询接口工具

《基于Go语言开发一个IP归属地查询接口工具》在日常开发中,IP地址归属地查询是一个常见需求,本文将带大家使用Go语言快速开发一个IP归属地查询接口服务,有需要的小伙伴可以了解下... 目录功能目标技术栈项目结构核心代码(main.go)使用方法扩展功能总结在日常开发中,IP 地址归属地查询是一个常见需求:

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同