两个相似的东西 dropdownbyindex, dropdownbykey。
1.dropdownbykey:如果你的table中有一列要是dropdownlist, 并且每一行的dropdownlist的可选项一样,那么就用dropdownbykey.
a.context node: 直接在context node里面创建一个attribute - AGENTTYPE. 把UI绑定到agenttype.
b.填充创建的 attribute的nodeinfo.
Data lv_NODE_INFO type REF TO IF_WD_CONTEXT_NODE_INFO.
data LT_VALUESET type WDR_CONTEXT_ATTR_VALUE_LIST.
Data L_VALUE type WDR_CONTEXT_ATTR_VALUE.
loop at lv_atype INTO ls_atype.
L_VALUE-VALUE = ls_atype-value.
L_VALUE-text = ls_atypl-text.
INSERT L_VALUE into table LT_VALUESET.
ENDLOOP.
lv_NODE_INFO = WD_CONTEXT->GET_NODE_INFO( ).
lv_NODE_INFO = lv_NODE_INFO->GET_CHILD_NODE( 'ITEMSTABLE' ).
lv_NODE_INFO->SET_ATTRIBUTE_VALUE_SET( NAME = 'AGENTTYPE' VALUE_SET = LT_VALUESET ).
c.正常绑定值到context node.
2.dropdownbyindex:如果你的table中有一列要是dropdownlist, 并且每一行的dropdownlist的可选项不一样,那么就用dropdownbykey.
a。父node下面需要创建一个这个dropdownlist的子node,子node包含dropdownlist要显示的text.子node的cardinality为0:n。
b.supply function 绑定值,或者从最外层一层一层绑定值。
filedownload:
在我们做filedownload的时候,我们往往不希望在一开始就load好所有文件的content。而是在用户点击文件名的时候再去拿file content.在webdynpro里面如下可以实现。
a.filedownload绑定到 filename 属性上。
b.在context node 里面创建一个子node, 这个子node里面创建一个content属性,这个属性真正来保存文件内容。
c.在子node里面创建一个supply function, 这个function中真正调用后台代码获得文件的content.绑定到node上。