Dorado 5 : 6.DORADO中的查询 (WP)

DORADO中的查询通常需要两个dataset, 一个用于承载查询结果,一个用于承载查询条件。用于承载查询条件的dataset通常使用FormDataset,即其数据是来自于前台页面的,而不是如AutoSqlDataset等是来自于后台业务逻辑的。相对于FormDataset的Controls通常是AutoForm。查询是与后台发生数据交互的,因此是button+QueryCommand的操作方式。

(图:数据保存开发套路)
第0步准备工作,创建dataset1(AutoSqlDataset)。
第1步,设置dataset01的MatchRules。
第2步,添加创建datasetConditions(FormDataset)并根据dataset01的MatchRules添加相应的Fields。
第3步,添加formConditions(AutoForm),设置其dataset属性为datasetConditions。
第4步,添加一个commandQuery(QueryCommand),设置其queryDataset为dataset1,conditionDataset为datasetConditions。
第5步,添加button1(button),设置command属性为commandQuery。

(图:查询运行时)
1,用户在formConditions中输入查询条件。
2,由于formConditions与datasetConditions的绑定关系,datasetCondistions经由formConditions获得了数据。
3,用户点击button1。
4,由于button1与commandQuery的绑定关系,commandQuery被调用。
5,由于commandQuery中conditionDataset与datasetConditions的绑定关系,数据从dataseConditions中取出。
6,commandQuery将具体参数信息传给dataset1的parameters,同时引发dataset1的flushdata。
7,根据查询条件,dataset1获得新数据。
8,由dorado引擎负责把dataset1的变化广播到与其绑定控件上,如Table。

  1. 用户看到Table上的呈现查询到的新数据。