Saturday, March 22, 2014

Cara mem-filter Dimension Attribute pada SSRS Report

Berikut adalah contoh bagaimana cara mem-filter Dimension Attribute pada SSRS Report.<br />
Method processReport dibawah ini adalah method yang terdapat pada class Report Data Provider (DP Class).

Contoh:

[SysEntryPointAttribute(false)]
public void processReport() {
   Query _qry = new Query(querystr(CustTransOpen));
   ContractClass _contract;
   QueryBuildDataSource _qbds = _qry.dataSourceTable(tableNum(CustTrans));
   QueryRun _qrun;
   ;
   // Get contract
   _contract = this.parmDataContract() as ContractClass;

   // set range if dimension2 filled
   if( _contract.parmDimension2() ) {
      SysQuery::addDimensionAttributeRange(_qry
           , _qbds.name()
           , fieldStr(CustTrans, DefaultDimension)
           , DimensionComponent::DimensionAttribute
           , _contract.parmDimension2()
           , "Dimension 2 Name"
           , true
      );
   }

   _qrun = new QueryRun(_qry);
   while( _qrun.next() ) {
      this.insertTmpTable();
   }
}