CachéFactory | Início Anterior Próximo

CachéFactory

O tipo de conexão CacheFactory®, por se tratar de uma conexão de acesso a uma base de dados de objetos, possui três maneiras distintas e específicas de executar consultas ou alterações em um banco de dados uma seria usando a interface relacional, a outra usando as Queries relacionais definidas no Caché ou utilizando chamadas diretas aos métodos das classes.
Para utilizar a interface relacional basta colocar o prefixo &sql seguido da instrução SQL que se deseja executar. Lembre-se que durante a compilação o Caché informa o nome dado às tabelas. Logo abaixo segue uns exemplos:
&sql SELECT * FROM webintegrator_database.CacheTest
&sql INSERT INTO webintegrator_database.CacheTest VALUES (|codigo|,|nome|,|telefone|)
Ao utilizar as Queries relacionais definidas no Caché é só colocar o prefixo &sql query seguido do nome da query. Podem ser usados . (ponto) ou _ (sublinhado) uma vez que um objeto sempre é separado por . e o WebIntegrator converte os símbolos. Logo abaixo segue uns exemplos:
&sql query webintegrator_database.CacheTest_byName
&sql query webintegrator.database.CacheTest.byName(|name|)
&sql query webintegrator.database.CacheTest.byName(|name|)
Os métodos devem ser construídos segundo as regras abaixo:

| ·

Método para efetuar um comando UPDATE deve receber os parâmetros necessários e retornar %Status. Exemplo:

webintegrator.database.CacheTest.save(|codigo|,|nome|,|telefone|)

| ·

Método para efetuar um comando SELECT deve ter o primeiro parâmetro como sendo do tipo webintegrator.database.CacheResultSet e retornar vazio (void). Pode ter outros parâmetros como valor usado na codificação. Na chamada dentro do WebIntegrator deve-se ignorar o parâmetro de referência (CacheResultSet). Durante a codificação utiliza-se métodos como: response.AddHeader, row.AddField, response.AddRow, etc. Exemplo:

webintegrator.database.CacheTest.show()