采购订单抬头及行项目增强字段配置(超详细)

2023-11-21 04:41

本文主要是介绍采购订单抬头及行项目增强字段配置(超详细),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

听说有一个开发小哥哥想XXX我的XXX,我要卷死他,哈哈哈哈哈

多学多用,不会开发的业务顾问不是一个好顽主

和大家共同学习,仅此记录,酌情参考。

本次主要介绍使用 User-Exit 的方式实现采购订单的屏幕增强。 涉及的用户出口是 MM06E005,本次案例的需求就是在 ME21N、ME22N 和 ME23N 的抬头和 项目上添加 SCM 状态字段。

1、SE11: 创建域  ZZSCM_STATUS_YSS

 

 下面这个就是采购订单抬头& 行项目的 字段枚举值

 2、创建 数据类型:ZZSCM_STATUS_YSS_SJLX

【注】:数据类型和域的名字可是一致的,这里我做个区分,所以分开来标注

 把域关键进属于类型中:

  

 3、CMOD  创建 增强项目

 

 

 

 

在结构 CI_EKKODB 和 CI_EKPODB 中添加 ZZSCM_STATUS_YSS_SJLX 字段

结构 CI_EKKODB 和 CI_EKPODB 是 MM06E005 中预留的两个字段接口,

我们只需将想要 添加的自定义字段添加到这两个结构中就可以了,

不过要注意,自定义的字段要以 ZZ 开 头。

结构 CI_EKKODB 和 CI_EKPODB 如果不存在,需要自己创建。如果已经存在就修改。 

双击:

 用同样的方式,在 CI_EKPODB 中添加 ZZSCM_STATUS_YSS_SJLX 字段

 

在屏幕 101 和 111 上添加自定义字段 屏幕 101 和 111 是增强预留的屏幕,

101 是采购订单抬头的增强屏幕,111 是 采购订单 行项目的增强屏幕 

 

进入如下视图:

先拖拽一个TEXT

 

 再双击它,调整一下格式

 

最后保存 ----激活-----测试

  完美呈现

 

 如法炮制 行项目: EKPO

 

进入下一部分:大招来了

CMOD  激活增强   看看效果

 ME21N进去看:

 

 【注】但是到这一步,虽然字段做了出来,但是还没有数据能够保存进数据库,因为没有代码逻辑,因此,我们需要增加代码逻辑,让数据保存进数据库

首先:我们先介绍一下Function

然后我们取消激活,继续调整:

 

 

 

 

 

 

 

添加如下代码:

DATA: ekko LIKE ekko, " Header

ekpo LIKE ekpo, " Item

aktyp TYPE c, " A=display, V=change, H=create

no_screen TYPE c. " do not display 

 

 

 插入如下代码:

 no_screen = i_no_screen.

ekko = i_ekko.

ekko_ci = i_ci_ekko.

aktyp = i_trtyp.

 

 以此往下:

 

 在 Include 中添加代码

IF NOT e_ci_ekko = ekko_ci AND aktyp NE 'A'.

e_ci_ekko = ekko_ci.

e_ci_update = 'X'.

ENDIF.

 继续依次:

 

在 Include 中添加代码

no_screen = i_no_screen.

ekko = i_ekko.

ekpo = i_ekpo.

ekpo_ci = i_ci_ekpo.

aktyp = i_aktyp. 

 依次进行:

 

添加代码:

IF NOT e_ci_ekpo = ekpo_ci AND aktyp NE 'A'.

e_ci_ekpo = ekpo_ci.

e_ci_update = 'X'.

ENDIF. 

 

下一步:

 

 

 

 

 添加代码:

IF aktyp = 'A'."作用是在显示采购订单时,将我们自己添加的自定义字段设置为无法 编辑,只能显示

LOOP AT SCREEN. screen-input = 0.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

 

 

再搞定行项目:

 

 同样添加代码:

IF aktyp = 'A'."作用是在显示采购订单时,将我们自己添加的自定义字段设置为无法 编辑,只能显示

LOOP AT SCREEN.

screen-input = 0.

MODIFY SCREEN.

ENDLOOP.

ENDIF.

 

 

 至此-----全部开发完毕

下面看一下效果:

 

创建一个采购订单并保存:

 

 数据已经保存:

 然后我们做个ME22N的修改:

 再看数据表更新:

 就会到这里了,多的不会了。

写错的地方酌情参考。

屏幕有个地方没激活,激活一下就好了,不做修正了。

这篇关于采购订单抬头及行项目增强字段配置(超详细)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python FastMCP构建MCP服务端与客户端的详细步骤

《PythonFastMCP构建MCP服务端与客户端的详细步骤》MCP(Multi-ClientProtocol)是一种用于构建可扩展服务的通信协议框架,本文将使用FastMCP搭建一个支持St... 目录简介环境准备服务端实现(server.py)客户端实现(client.py)运行效果扩展方向常见问题结

Spring Boot 整合 Apache Flink 的详细过程

《SpringBoot整合ApacheFlink的详细过程》ApacheFlink是一个高性能的分布式流处理框架,而SpringBoot提供了快速构建企业级应用的能力,下面给大家介绍Spri... 目录Spring Boot 整合 Apache Flink 教程一、背景与目标二、环境准备三、创建项目 & 添

Nacos注册中心和配置中心的底层原理全面解读

《Nacos注册中心和配置中心的底层原理全面解读》:本文主要介绍Nacos注册中心和配置中心的底层原理的全面解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录临时实例和永久实例为什么 Nacos 要将服务实例分为临时实例和永久实例?1.x 版本和2.x版本的区别

Java进程CPU使用率过高排查步骤详细讲解

《Java进程CPU使用率过高排查步骤详细讲解》:本文主要介绍Java进程CPU使用率过高排查的相关资料,针对Java进程CPU使用率高的问题,我们可以遵循以下步骤进行排查和优化,文中通过代码介绍... 目录前言一、初步定位问题1.1 确认进程状态1.2 确定Java进程ID1.3 快速生成线程堆栈二、分析

Java中的登录技术保姆级详细教程

《Java中的登录技术保姆级详细教程》:本文主要介绍Java中登录技术保姆级详细教程的相关资料,在Java中我们可以使用各种技术和框架来实现这些功能,文中通过代码介绍的非常详细,需要的朋友可以参考... 目录1.登录思路2.登录标记1.会话技术2.会话跟踪1.Cookie技术2.Session技术3.令牌技

springboot项目中使用JOSN解析库的方法

《springboot项目中使用JOSN解析库的方法》JSON,全程是JavaScriptObjectNotation,是一种轻量级的数据交换格式,本文给大家介绍springboot项目中使用JOSN... 目录一、jsON解析简介二、Spring Boot项目中使用JSON解析1、pom.XML文件引入依

如何搭建并配置HTTPD文件服务及访问权限控制

《如何搭建并配置HTTPD文件服务及访问权限控制》:本文主要介绍如何搭建并配置HTTPD文件服务及访问权限控制的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、安装HTTPD服务二、HTTPD服务目录结构三、配置修改四、服务启动五、基于用户访问权限控制六、

Macos创建python虚拟环境的详细步骤教学

《Macos创建python虚拟环境的详细步骤教学》在macOS上创建Python虚拟环境主要通过Python内置的venv模块实现,也可使用第三方工具如virtualenv,下面小编来和大家简单聊聊... 目录一、使用 python 内置 venv 模块(推荐)二、使用 virtualenv(兼容旧版 P

使用vscode搭建pywebview集成vue项目实践

《使用vscode搭建pywebview集成vue项目实践》:本文主要介绍使用vscode搭建pywebview集成vue项目实践,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录环境准备项目源码下载项目说明调试与生成可执行文件核心代码说明总结本节我们使用pythonpywebv

CentOS 7 YUM源配置错误的解决方法

《CentOS7YUM源配置错误的解决方法》在使用虚拟机安装CentOS7系统时,我们可能会遇到YUM源配置错误的问题,导致无法正常下载软件包,为了解决这个问题,我们可以替换YUM源... 目录一、备份原有的 YUM 源配置文件二、选择并配置新的 YUM 源三、清理旧的缓存并重建新的缓存四、验证 YUM 源