SAP ABAP WebDynpro系列教程

 

     现在对web dynpro for ABAP的需求会越来越大,你信吗?或许应该多了解些,

     空闲在家开始学习sap课程NET310 abap web dynpro。这个课程以BC400和BC401(abap objects)为基础。总结一下关于wda(web dynpro for ABAP)的基础知识。web dynpro for ABAP采用了MVC的设计方法。一个web dynpro component包括window,views和component controller。window和view主要和UI有关。windows只是一种容器,在一个component内一个window可以包含任意多个view,而component controller只有一个。如果一个component不需要view,那么windows也就相应无需存在了。

一个web dynpro component可以与一个URL关联,通过浏览器来访问,或者作为另一个web dynpro component的sub-component供调用。

web dynpro component的controller分为四类:

component controller:这种类型的controller在一个web dynpro component内只存在一个,并且没有visual interface。

custom controller:这类controller是可选的,用于封装component controller的sub-function。

View controller:每一个view都有一个对应的view controller,负责与视图有关的逻辑,如检查用户的输入和处理user action。

Window controller:一个window内只存在一个window controller,用于通过inbound plugs传递数据。

Web dynpro 中有两个常提到的概念是context mapping和data binding。每个controller内部都会有一个context,用于存储controller所用的数据。            

Context mapping提供了一种机制,供不同的controller之间交换数据。context mapping分为internal和extern两种。如果同一个component内的不同controller之间共享数据,这被成为internal context mapping;共享数据的controller不在同一个component之内,这被称为extern context mapping。要注意的是view controller一类不能作为context mapping的源,否则就违背了MVC的设计原则。data binding为数据在contex和UI元素之间自动(双向)传递提供支持。

       接下来再看看context这个东西。context是一个包含node和attribute的结构。每个context都有一个默认的root node,这个root node不能被修改或删除。一个node可以包含子元素(node和attribute),而attribute只能依附于其他node或context root node而存在。在同一个context内,每个node的名字必须是唯一的。一个node连同其子元素被合称为一个element。

扫描二维码关注公众号,回复: 3087492 查看本文章

context中的每个node都有两个重要的property:

cardinality:这个属性给出了当前node collection在运行时(runtime)包含的元素数目的最小值和最大值。这个属性的取值包括0..1(仅允许0或1个元素),0..n(允许0或更多元素),1..1(仅允许一个元素),1..n(允许一个或多个元素)。

singleton:这个属性决定了子节点在实例化时是singleton还是不是singleton,因此它的值就是布尔值。在课程中在讲singleton时还提到了supply function,两者常在一起使用以实现lazy data instantiation。比如在加载一个包含多行的表时,每一行包含的更详细数据不会被首先加载,而只有在用户选中并查特定行时,与该行相关的数据在会被读取。

定义user interface相对比较简单,从左边栏的工具箱里拖拽需要的UI elements到layout里面,并设置各个UI element的属性。更多的工作是关于data binding。

 

当然要想学习一门东西,最好的办法就是实际操作,用列子说话,我会在后续做些简单的系列教程:

 

系列一:Holle World (简单的WDA概念)

系列二:ALV Report (运用SAP系统的SALV_WD_TABLE)

系列三:Select Options(运用SAP系统的WDR_SELECT_OPTIONS)

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/jiali765/article/details/10364605
今日推荐