销售订单 交货单 行项目屏幕增强

2023-12-20 09:30

本文主要是介绍销售订单 交货单 行项目屏幕增强,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

销售订单行项目屏幕增强(有效做法)
直接附加vbap,屏幕加字段,pbo加一段
PROCESS BEFORE OUTPUT.
* Verarbeitung vor der Ausgabe
*{ INSERT DEVK926128 1
MODULE 8459_pbo_disable_fields .
*} INSERT

include MV45A_8459_PBO_DISABLE_FIELO01
MODULE 8459_pbo_disable_fields OUTPUT.
IF sy-tcode = 'VA03'OR sy-tcode = 'VA43'.
LOOP AT SCREEN.
screen-input = '0'.
MODIFY SCREEN.
ENDLOOP.
ENDIF.
ENDMODULE. " 8459_pbo_disable_fields OUTPUT


销售订单行项目屏幕增强(我的做法)
se11-vbap-附加结构, SAPMV45A找到屏幕 8459,直接编辑屏幕(画屏幕时字段一定参考vbap,否则默认写入读取都是从vbap的),插入pbo module,放入MV45AOZZ

module get_data output.
if sy-tcode = 'VA01' and vbap-posnr > gv_posnr.
select single name1 telf1
into (vbap-zzywyxm,vbap-zzywylxfs)
from kna1
inner join knvp on kna1~kunnr = knvp~kunn2
where knvp~kunnr = vbak-kunnr and knvp~parvw = 'Z1'.

select single str_suppl3 roomnumber building
into (vbap-zzshdz,vbap-zzroomnumber,vbap-zzbuilding)
from adrc
inner join kna1 on adrc~addrnumber = kna1~adrnr
where kunnr = vbak-kunnr.
gv_posnr = vbap-posnr.
endif.
endmodule.

在MV45ATOP中插入一行代码(防止回车又取了一次数据)
data gv_posnr like vbap-posnr.

交货单项目增强(屏幕字段名可以随便取,和表附加结构没有联系)
使用badi LE_SHP_TAB_CUST_OVER
lips附加结构zzlips.,新建函数组zlips,在top中定义 tables zzlips.,在函数组下新建屏幕 2001,
创建函数 zdata_to_screen
function zdata_to_screen.
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" REFERENCE(IS_LIPS) TYPE LIPS
*"----------------------------------------------------------------------
if sy-tcode = 'VL01N'.
select single *
into corresponding fields of zzvbap
from vbap
where vbeln = is_lips-vgbel and posnr = is_lips-vgpos.
endif.
move-corresponding is_lips to zzvbap.
endfunction.

创建
FUNCTION ZDATA_FROM_SCREEN.
*"----------------------------------------------------------------------
*"*"本地接口:
*" EXPORTING
*" REFERENCE(CS_LIPS) TYPE LIPS
*"----------------------------------------------------------------------
move-corresponding zzvbap to CS_LIPS.
ENDFUNCTION.

实现badi badi LE_SHP_TAB_CUST_ITEM

method if_ex_le_shp_tab_cust_item~activate_tab_page.
ef_caption = '附加屏幕'.
ef_program = 'SAPLZLIPS'.
ef_position = 10. " Tab position
ef_dynpro = '2001'. " screen number
cs_v50agl_cust = 'X'.
endmethod.

method IF_EX_LE_SHP_TAB_CUST_ITEM~TRANSFER_DATA_TO_SUBSCREEN.
call function 'ZDATA_TO_SCREEN'
exporting
is_lips = is_lips.
.
endmethod.

method if_ex_le_shp_tab_cust_item~transfer_data_from_subscreen.
call function 'ZDATA_FROM_SCREEN'
importing
cs_lips = cs_lips.
endmethod.

这篇关于销售订单 交货单 行项目屏幕增强的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python+PyQt5实现多屏幕协同播放功能

《Python+PyQt5实现多屏幕协同播放功能》在现代会议展示、数字广告、展览展示等场景中,多屏幕协同播放已成为刚需,下面我们就来看看如何利用Python和PyQt5开发一套功能强大的跨屏播控系统吧... 目录一、项目概述:突破传统播放限制二、核心技术解析2.1 多屏管理机制2.2 播放引擎设计2.3 专

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

Python实战之屏幕录制功能的实现

《Python实战之屏幕录制功能的实现》屏幕录制,即屏幕捕获,是指将计算机屏幕上的活动记录下来,生成视频文件,本文主要为大家介绍了如何使用Python实现这一功能,希望对大家有所帮助... 目录屏幕录制原理图像捕获音频捕获编码压缩输出保存完整的屏幕录制工具高级功能实时预览增加水印多平台支持屏幕录制原理屏幕

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

Ubuntu中Nginx虚拟主机设置的项目实践

《Ubuntu中Nginx虚拟主机设置的项目实践》通过配置虚拟主机,可以在同一台服务器上运行多个独立的网站,本文主要介绍了Ubuntu中Nginx虚拟主机设置的项目实践,具有一定的参考价值,感兴趣的可... 目录简介安装 Nginx创建虚拟主机1. 创建网站目录2. 创建默认索引文件3. 配置 Nginx4

SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法

《SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法》本文主要介绍了SpringBoot项目启动错误:找不到或无法加载主类的几种解决方法,具有一定的参考价值,感兴趣的可以了解一下... 目录方法1:更改IDE配置方法2:在Eclipse中清理项目方法3:使用Maven命令行在开发Sprin

Nginx实现高并发的项目实践

《Nginx实现高并发的项目实践》本文主要介绍了Nginx实现高并发的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录使用最新稳定版本的Nginx合理配置工作进程(workers)配置工作进程连接数(worker_co