Desabilitando o filtro por classes filhas nas cláusulas "where" de classe

Data de postagem: Feb 15, 2011 1:22:6 AM

O DataSource faz parte da biblioteca bdo, do Framework. Para utilizá-lo, você deve incluí-lo da seguinte forma:

__includeOnce('ufs:/bdo/datasource/datasource.js');

A propriedade disableGetChildren permite definir se as chaves das classes filhas da classe informada no filtro do DataSource serão adicionadas à cláusula ‘WHERE’ da consulta SQL gerada. Caso não seja informada, o DataSource considerará seu valor padrão, que é false.

O exemplo abaixo pode ser executado no iDBSql para efeito de testes:

var dts = new DataSource(45116432); var filters = dts.createFilters([ { name: "PED_CLASSE", classKey: -189999895 } ]); var columns = dts.createColumns([ {name: "PED_RECURSO.NOME"}, {name: "PED_QUANTIDADE" } ]);

dts.getQuery(filters, columns);

Para desabilitar a busca nas classes filhas basta configurar a propriedade para ‘true’:

var dts = new DataSource(45116432); var filters = dts.createFilters([ { name: "PED_CLASSE", classKey: -189999895, disableGetChildren: true } ]); var columns = dts.createColumns([ {name: "PED_RECURSO.NOME"}, {name: "PED_QUANTIDADE" } ]); dts.getQuery( filters, columns );