$subSelect=new Select(array('A'=>new TableIdentifier('target','CAT')));
$subSelect->columns(array('fk_w','TI'=>'id','mtarget_f'=>new Expression('sum(F)'),
'mcost'=>new Expression('round(sum(F*D.mcost),2)')))
->join(array('B'=>new TableIdentifier('item','CAT')),'B.id=A.fk_w',
array())
->join(array('D'=>new TableIdentifier('rate','CAT')),'A.dat=D.year and D.fk_c=B.CCODE and D.fk_b=A.fk_b',
array())
->where->equalTo('Year', $year);
$select=new Select(array('A'=>new TableIdentifier('item','CAT')));
$select->columns(array('WID'=>'id','AID'=>'AID',
'item'=>'ITEM_ID','Wtitle'=>'WTITLE'))
->join(array('B'=>new TableIdentifier('cn','CAT')),'B.id=A.CCODE',
array('Ct'=>'name'))
->join(array('S'=>$subSelect),'S.fk_w=A.id',array('Mtarget'=>'mcost',
'MTarget'=>'m_target',
'TID'),'left');