2011年1月14日 星期五

good example of adding relationship to the query

between 2 table:
static void Job6(Args _args)
{
DictRelation dr1,dr2;
Query q;
QueryBuildDataSource qB1,qB2;

q = new Query();
qB1 = q.addDataSource(tablename2id('smmActivities'));

dr1 = new DictRelation(tablename2id('smmActivities'));
if(dr1.loadTableRelation(tablename2id('smmBusRelTable')))
{
qB2 = qB1.addDataSource(tablename2id('smmBusRelTable'));
qB2.addRelation(dr1);
}

info(qB2.toString());

}

between 3 table:
static void Job6(Args _args)
{
DictRelation dr, dr1;
Query q;
QueryBuildDataSource qB1,qB2,qB3;

dr = new DictRelation(tablename2id('smmActivities'));
dr.loadTableRelation(tablenum(smmActivityParentLinkTable));

dr1 = new DictRelation(tablenum(smmActivityParentLinkTable) );
dr1.loadTableRelation(tablename2id('smmBusRelTable'));

q = new Query();
qB1 = q.addDataSource(tablename2id('smmActivities'));
qB1.addRange(fieldname2id(tablename2id('smmActivities'),fieldstr(Common,RecId))).value(queryValue(docuRef.RefRecId));

qB2 = qB1.addDataSource(tablenum(smmActivityParentLinkTable));
qB2.addRelation(dr);

qB3 = qB2.addDataSource(tablename2id('smmBusRelTable'));
qB3.addRelation(dr1);


info(qB1.toString());

}

沒有留言:

張貼留言