1、 任何Form须在属性中选定当前Form的MenuItem(display)和数据源(DataSource)
2、 当前Form中的init()方法中重写该事件,就可以从Form的数据源中定位的字段值对当前数据源过滤符合数据区域!
public void init() { YAM_VirtualWareHouseTrans trans; Common _com; DictTable dict; DictField dictField; int i; ItemId _ItemId; ; super(); switch( element.args().dataset() ) { case TableNum( YAM_VirtualWareHouseTrans) : trans = element.args().record(); YAM_VirtualWareHouseInventSum_ds.query().dataSourceNo(1).addRange( fieldnum(YAM_VirtualWareHouseInventSum,ItemId)).value(trans.ItemId); break; default : _com = element.args().record(); dict = new DictTable(_com.TableId); for( i = 1 ; i <= dict.fieldCnt(); i ++) { dictField = dict.fieldObject(dict.fieldCnt2Id(i)); if(dictField.name() == 'ItemId') { _ItemId = _com.(dictField.id()); YAM_VirtualWareHouseInventSum_ds.query().dataSourceNo(1).addRange( fieldnum(YAM_VirtualWareHouseInventSum,ItemId)).value(_ItemId); /* print dictField.baseType(),enum2Value(dictField.baseType()); print 'TableName:' +dict.name() + 'TableLabel:' + dict.label(); print 'FieldName:' + dictField.name(),'FieldLabel:',dictField.label(); print 'FieldId: ',dictField.id(),'values',_com.(dict.fieldCnt2Id(i)); */ } } break; } }