首页 > 其他分享 >DEMO:表维护视图相关维护及调用

DEMO:表维护视图相关维护及调用

时间:2022-10-14 20:40:21浏览次数:48  
标签:ZLM DEMO DB 视图 001 维护 event VIEW


新建一个数据库表

DEMO:表维护视图相关维护及调用_vim

设置成可维护

DEMO:表维护视图相关维护及调用_字段_02


这里可以se11创建表维护视图

DEMO:表维护视图相关维护及调用_数据库表_03

也可以直接在刚才的界面

DEMO:表维护视图相关维护及调用_数据库表_04

DEMO:表维护视图相关维护及调用_数据库表_05

点新建即可。

另外,表字段里有时间和日期。

想在创建和修改行项目的时候,日期和时间字段自动填充。


首先可以考虑在对应的PAI里处理

这里加一个 on request 的modle。

DEMO:表维护视图相关维护及调用_字段_06

比如最简单的 

DEMO:表维护视图相关维护及调用_数据库表_07

我自己习惯在这里控制,自己修改table control ,可控的地方多。

比如字段描述,字段显示长度,是否必输,是否可输入。哪些字段增加什么特殊校验之类的。都可以自己加。


另外可以考虑使用event。

使用event的话,需要单独建一个维护视图,不能直接se11创建完数据库表直接table maintaince generator。

DEMO:表维护视图相关维护及调用_字段_08

新建Event:01

DEMO:表维护视图相关维护及调用_数据库表_09

DEMO:表维护视图相关维护及调用_vim_10

代码可以参考下面的,使用的是全局变量 total。

另外一个常用的全局变量是<ACTION>,分别代表不同的操作。

<ACTION> ='N':代表新记录

<ACTION> ='D':代表删除记录

<ACTION> ='U':代表更新记录

DEMO:表维护视图相关维护及调用_字段_11

我上面代码里没有区分是修改还是创建,一般是要加上的,我懒得写了。


下面说下,创建数据库后直接table maintaince generator生成的视图会怎样:

DEMO:表维护视图相关维护及调用_vim_12

如果是se11 创建维护视图呢?

DEMO:表维护视图相关维护及调用_vim_13

所以使用event的时候注意建一个view。

DEMO:表维护视图相关维护及调用_字段_14


我自己一般很少使用event,基本上都是直接修改生成的table control。更方便灵活,但是正规做法肯定是通过event来处理的。看你们自己的爱好吧。


下面说一下function调用。

一般就是使用 VIEW_MAINTENANCE_CALL 即可,

有时候需要加上筛选条件,然后有个选择屏幕程序来控制,比如控制权限等等的吧。


这个也是比较常用的。


可以直接参考下面的demo。

DEMO:表维护视图相关维护及调用_数据库表_15

DEMO:表维护视图相关维护及调用_数据库表_16

添加晒选条件


DEMO:表维护视图相关维护及调用_数据库表_17

DEMO:表维护视图相关维护及调用_数据库表_18

只显示筛选条件中的LH。


*&---------------------------------------------------------------------*
*& Report ZLM_VIEW_DB_001
*&
*&---------------------------------------------------------------------*

REPORT ZLM_VIEW_DB_001.

TABLES ZLM_DB_001.

SELECT-OPTIONS:
s_carrid FOR ZLM_DB_001-carrid.

DATA: lt_seltab TYPE STANDARD TABLE OF vimsellist.
DATA: gt_exclude TYPE TABLE OF vimexclfun,
gwa_exclude TYPE vimexclfun.

START-OF-SELECTION.

"选择条件控制
CLEAR lt_seltab[].
CALL FUNCTION 'VIEW_RANGETAB_TO_SELLIST'
EXPORTING
fieldname = 'CARRID'
append_conjunction = 'AND'
TABLES
sellist = lt_seltab
rangetab = s_carrid.
"调用维护视图
CALL FUNCTION 'VIEW_MAINTENANCE_CALL'
EXPORTING
action = 'U'
view_name = 'ZLM_DB_001'
TABLES
dba_sellist = lt_seltab[]

简单的表维护视图相关就先写到这里,后续会补充一些其他可能用到的东西。

DEMO:表维护视图相关维护及调用_字段_19




标签:ZLM,DEMO,DB,视图,001,维护,event,VIEW
From: https://blog.51cto.com/u_15680210/5757895

相关文章

  • DEMO:ME31L 创建计划协议 BAPI_SAG_CREATE
    前台:ME31L程序执行:*&---------------------------------------------------------------------**&ReportZLM_ME31L*&*&-----------------------------------------------......
  • ALV demo 05:cl_salv_table event
    效果图:定义的statuscode:*&---------------------------------------------------------------------**&ReportZLM_ALV005*&*&-----------------------------------------......
  • ALV demo 04:cl_salv_table (ICONs and Tooltips)
    QQ群:SAP干货铺, 群号:775662808干货:​效果图:code:*&---------------------------------------------------------------------**&ReportZLM_ALV003*&*&sapliumeng*&----......
  • ALV demo 05:cl_salv_table(Apply Styles to Cell)
    QQ群:SAP干货铺, 群号:775662808所有群管理严格,严格禁止一切外来链接、招聘、广告等垃圾信息!效果:carrid列的第二行设置为热键,CONNID第三行设置为buttoncode:*&---------......
  • DEMO: BAPI_SALESORDER_CREATEFROMDAT2 创建订单
    REPORTzdemo_va01.PARAMETERSp_kunnrTYPEkunnrDEFAULT'1004615'.PARAMETERSp_vkorgTYPEvkorgDEFAULT'S600'.PARAMETERSp_vtwegTYPEvtwegDEFAULT'10'.PARAM......
  • DEMO: ALV显示明细
    本来需求是ALV双击某个字段的时候,弹出一个新ALV显示对应的明细,但是明细字段太多了,弹出来以后也挺难看的。就想起来SE11进去,查看数据点明细的时候于是就debug了下这个按钮大......
  • Demo:选择屏幕写页签
    效果图:demo代码需要特别注意的是abapmemory的应用文本版:*&---------------------------------------------------------------------**&ReportZLM_SCREEN3*&------------......
  • DEMO:冲销交货单过账凭证WS_REVERSE_GOODS_ISSUE
    reportzdemo_vl09.parametersp_vbelntypevbeln_vl.data:lt_likptypetableoflikp.data:ls_likplikelineoflt_likp.data:lt_mesg......
  • DEMO:MB1B 311 移库 BAPI_GOODSMVT_CREATE
    *&---------------------------------------------------------------------**&ReportZDEMO_MB1B*&*&---------------------------------------------------------------......
  • WDA DEMO 11 根据BAPI/Function创建WDA
    货铺QQ群号:834508274进群统一修改群名片,例如BJ_ABAP_森林木。群内禁止发广告及其他一切无关链接,小程序等,进群看公告,谢谢配合不修改昵称会被不定期踢除,谢谢配合事先声明下,本......