在Form上如果想只添加Dimension的某一个是很很简单的事情,只需要指定Dimension[i]就可以了,但在如果想在Runbase的dialog上动态添加Dimension上的某个元素可就不那么简单了.试了半天都没办法加上去,最后只能曲线救国,想了如下三种办法:
1.新建一个EDT,该EDT只有一个元素,跟想要添加到Dialog上的Dimension中的那个元素相对应,与Dimension建立的关系也一样.
如下图所示:
在Dialog上添加Dimension中的一个元素
然后重载Dialog,用如下代码添加就可以了

在Dialog上添加Dimension中的一个元素_dialog.addField(typeId(Dimension1));
2.依然用扩展数据类型Dimension添加,把不想要的隐藏掉.如下面代码所示:
在Dialog上添加Dimension中的一个元素  fieldCAFrom = _dialog.addFieldValue(typeid(Dimension),strCAFrom);
在Dialog上添加Dimension中的一个元素    d 
= new Dictionary();
在Dialog上添加Dimension中的一个元素    dt 
= new DictType(d.typeName2Id("Dimension"));
在Dialog上添加Dimension中的一个元素
在Dialog上添加Dimension中的一个元素    
for(i=1;i<=dt.arraySize();i++)
    }

3.添加一个string类型的控件,然后重载其Lookup方法,自己写一个窗体出来.

相关文章: