POR QUE ESCOLHER A BYTE FACTORY?

Além de oferecer 100% de ferramentas e serviços personalizados, nossa equipe tem o foco na alavancagem do seu negócio, informando e auxiliando sua expansão.

CONTATO
  • End.: Av. Jose de Souza Campos, Nº 1.815, cj 1.202
    Campinas-SP CEP 13025-320
  • Tel: +55 19 3795-4460 / 4461 / 4462 / 4463
  • Email: atendimento@bf.net.br

Atribuindo valores a cursores tipo objeto

Atribuindo valores a cursores tipo objeto

Esta nota pode ser considerada altamente técnica por alguns usuários.
Na montagem de acessos a dados, os scripts podem utilizar comandos do tipo TableExecSQL e os nomes dos cursores passam a ser simples Strings. As atribuições são também super simples e encapsulam possíveis falhas nas atribuições.
Entretanto, o AICS permite a criação de objetos de acessos a dados tipo TADOQuery. Estes objetos podem representar objetos tipo ADO ou outros tipos de objetos de acessos a dados, depende apenas da versão do AICS utilizada.
Pois bem, no primeiro caso, os comandos de atribuição de valores são do tipo SetString, SetFloat, SetDateTime etc. Mas, estes comandos de atribuição requerem o uso de cursores escondidos a partir dos alias atribuídos em comandos TableExecSql. Se os cursores forem reais, pode-se atribuir valores com a sintaxe Cursor.fieldbyname('nome do campo').as...
Onde, o as... pode ser AsString, AsFloat etc. Este comando NÃO está imune a erros, isto é, se houver um erro no seu código ou outra falha, o script poderá ser interrompido.
Ainda, se o cursor estiver fechado e for do tipo parâmetros dinâmicos, a atribuição é ainda mais complicada. Visando facilitar e encapsular estes comandos, a BF publicou as atribuições internas que o AICS dispõe aos scripts dos usuários, relacionados a seguir:
Procedure SetFloatDS(Cursor:DelphiTDataSet;Coluna:string;Valor:Double)
Procedure SetStringDS(Cursor:DelphiTDataSet;Coluna, Valor:string)
Procedure SetIntegerDS(Cursor:DelphiTDataSet;Coluna:string; Valor:longint)
Procedure SetDateTimeDS(Cursor:DelphiTDataSet;Coluna:string; Valor:Double)
Procedure SetLogicalDS(Cursor:DelphiTDataSet;Coluna:string; Valor:boolean)
A grande vantagem destes comandos está em não gerarem erros e, ainda, os cursores podem ser do tipo aberto (em edição) ou fechados (com parâmetros).

Leia, por favor

Nosso website utiliza cookies para facilitar a navegação. Ao continuar o acesso, você aceita essa política automaticamente.