Web Dynpro 是SAP提供的用于开发基于Web和多终端的窗体开发解决方案。
WDA的报错看着挺难受,还好demo的例子比较多,可以平时看看例子基本上可以满足你的需求了。
Web Dynpro for abap采用了MVC(model view controller)的设计方法。
Web Dynpro基本原理
MVC框架:M是模型,V是用户界面视图,C是控制器。
每一个component都需要一个application
每建立一个application都会有一个URL
一个Web Dynpro component包含window,views和component controller。
window和view主要和UI相关。windows只是一种容器,在一个component内一个window可以包含任意对个view,
而component controller只有一个。如果一个component不需要view,那么windows也就相应无需存在了。
window是多个view的组合容器,view必须在window中才能被用户看到。
一个window包含至少一个view,如果是多个view的话可以通过导航实现,但必须定义开始的view。
每一个window可以有一个或者多个进入以及输出plug,对应于view的plug。
Outbound Plugs:链接window和view的inbound plug
Inbound Plugs :链接view的outbound plug到嵌入window
B、Controller
C、Context 上下文
Web Dynpro中有两个常提到的概念:
context mapping 和data binding。
每个controller内部都会有一个context,用于存储controller所用的数据。
context mapping提供了一种机制,供不同的controller之间交换数据。context mapping 分为 internal 和extern两种。
data bingding为数据在context和UI元素之间自动(双向)传递提供支持。
context是一个包含node和attribute的结构。每一个context都有一个默认的root node,
这个root node不能被修改或者删除。
一个node可以包含子元素(node和attribute),而attribute只能依附于其他node或者context root node而存在。
在同一个context内,每一个node的名字必须是唯一的,一个node连同其子元素被合称为一个element。