SAP Viewcluster maintenance call的基本使用方法

1.创建表或视图(创建的表或者视图必须生成表维护dialog,否则SE54分配表的时候会报错),SE11

2.创建Viewcluster,SE54

3.维护Viewcluster,SM34

4.给Viewcluster挂事务代码,se93挂SM34

例如我们想把SCARR和SFLIGHT这两张表放在一个维护界面进行维护,那么就可以考虑创建一个视图簇。

首先,SE11直接基于SCARR和SFLIGHT直接生成维护视图或者针对这两张表分别创建独立的维护视图,推荐后者,因为基于透明表直接生成维护视图有诸多的限制。

如下图所示的方法是基于透明表直接生成维护视图,不推荐。

基于透明表创建维护视图,再基于维护视图创建维护视图类型的视图。

现在可以用SM30通过维护这个视图来实现对透明表SCARR的维护了。

以同样的方式创建表SFLIGHT的维护视图ZVSFLIGHT并生成ZVSFLIGHT的表维护界面。

现在,要维护这两个表,我们需要分别进SM30,不方便,我们想把它们放在一起维护。

SE54创建一个视图簇即可实现这个需求。

将需要放在一起维护的视图或者表填到“对象结构”,然后分别选中每一条数据分配对应的字段附属。

最后激活这个视图簇。

SM34就能维护这个视图簇了,和SM30差不多,只不过一个界面可以维护多个视图。

也可以SE93给这个视图簇分配一个事务代码。

如果默认是SHOW=X,则执行事务代码默认界面是显示模式,点击修改可进入修改模式。

上面的方式只是将不同的视图放在同一个维护界面进行维护而已,如果想将几个视图有层次的进行维护,例如订单抬头>订单行项目>行项目明细这样有层级的模式,则还需要进行一些调整。

例如要事先下面的模式,我们需要在SE11创建维护视图的时候做处理,在SE54创建维护视图的时候也需要将几个要维护的视图之间建立前后关系。

例如我们想在维护SCARR的界面双击,根据MANDT和CARRID这两个字段过滤出对应的SFLIGHT条目进行维护,则我们需要将ZVSFLIGHT视图中的这两个字段设置P为S(put the Maintenance Attribute = S in the fields which you need to have carried over to the next screen.)。

SE54重新建一个视图簇测试一下。

在分配视图的时候,将要作为跳转后的下级的视图中的“预处理器(其实就是上级)维护成上级视图,Drp设置为S。

字段附属中,将上级表和关联字段维护进去。

然后激活视图簇。

SM34就能实现有层次的维护视图了。

例如我们删除这条数据,保存。

SE16N查询SFLIGHT就只有51条数据了。

发表评论