O módulo SmartQry cria telas a partir de um simples comando SQL. Se o comando retornar todos os campos requeridos para gravação, é possível também executar operações de inclusão, alteração e exclusão dos dados.
Objeto | Descrição |
---|---|
def | Responsável pelas definições de comportamento da tela |
def.width | Tamanho padrão para colunas. Padrão é 110 (int) |
def.displayMemo | Indica se mostra texto dos campos memos no grid. Caso false (default), mostra apenas quando é selecionado o campo (true/false). |
def.readOnly | Indica se permite a edição (crud) dos dados (true/false). |
def.fdConn | Objeto de configuração da conexão ao banco de dados, com base no framework FireDac. |
def.fdConn.driverId | Indica o banco de dados a ser conectado (MySQL, MSSQL, Ora...). |
def.fdConn.dataBase | Indica o nome do banco de dados. |
def.fdConn.userName | Indica o usuário do banco de dados. |
def.fdConn.password | Indica a senha do usuário de banco de dados. |
def.fdConn.server | Indica o endereço do servidor de banco de dados. |
def.fdConn.port | Indica a porta (int) do servidor de banco de dados. |
def.fields | Objeto de configuração dos campos |
def.fields.field .width |
Largura da coluna (int) |
def.fields.field .displayMemo |
Indica se mostra texto longo no campo (true/false). |
def.fields.field .groupHeader |
Grupo do da coluna (text) |
def.fields.field .readyOnly |
Indica se edita campo (true/false) |
def.fields.field .visible |
Indica se mostra campo. Caso false, campo pode ser visualizado pelo menu de campos (true/false) |
def.fields.field .color |
Indica a cor de fundo da coluna. O valor deve ser texto, com prefixo $00 , seguido dos códigos em hexa RGB invertidos (BGR). Ex. Cor 00569A (RGB 0,86,154), deve ser colocado $009A5600 |
def.fields.field .fontColor |
Indica a cor de fonte. O valor deve ser texto, com prefixo $00 , seguido dos códigos em hexa RGB invertidos (BGR). Ex. Cor 00569A (RGB 0,86,154), deve ser colocado $009A5600 |
def.fields.field .fontSize |
Indica o tamanho da fonte (int). |
def.fields.field .fontName |
Indica o nome da fonte (text). |
def.fields.field .titleCaption |
Nome do título da coluna (text). |
def.fields.field .titleColor |
Indica a cor de fundo do título da coluna. O valor deve ser texto, com prefixo $00 , seguido dos códigos em hexa RGB invertidos (BGR). Ex. Cor 00569A (RGB 0,86,154), deve ser colocado $009A5600 |
def.fields.field .titleFontColor |
Indica a cor de fonte do título. O valor deve ser texto, com prefixo $00 , seguido dos códigos em hexa RGB invertidos (BGR). Ex. Cor 00569A (RGB 0,86,154), deve ser colocado $009A5600 |
def.fields.field .titleFontSize |
Indica o tamanho da fonto do título da coluna (text). |
def.fields.field .titleFontName |
Indica o nome da fonte do título da coluna (text). |
def.fields.field .alignment |
Indica o alinhamento (left, center, right) do dado (text). |
def.fields.field .titleAlignment |
Indica o alinhamento (left, center, right) do título (text). |
def.fields.field .filteringEditor |
Indica o tipo de filtro da coluna. O uso depende do SQL possuir parâmetro com o mesmo nome do campo na cláusula where . Valores possíveis edit (text). Ver exemplo de filtros. Demais tipos a serem implementados. |
sqlQry | Requerido. Sql de consulta. Para telas editáveis, a consulta deve conter todos os campos requeridos para inserção / edição |
Para utilização de filtro, o Sql deve possuir os parâmetros na cláusula where
com o mesmo nome (em caixa baixa) do campo, com o refixo :
no nome.
select buser, buser_descfrom buserwhere buser = :buser
Para utilização de filtro aproximado, pode-se utilizar o comando like
.
select buser, buser_descfrom buserwhere buser like :buser
Para campos que permitam valores null
, deve-se considerar no comando essa condição, pois caso contrário os registros nulos não serão considerados mesmo sem a seleção de filtro.
select buser, buser_descfrom buserwhere buser = :buserand coalesce(buser_desc,'') like coalesce(:buser_desc,'')