Criando Fontes de Dados Mestre/Escravo
Em determinadas situações é necessário criar campos associados a tabelas que possuem uma relação de dependência entre si. Tais campos são implementados utilizando fontes de dados chamadas mestre/escravo. Campos associados a fontes mestre/escravo permitem que o usuário selecione um valor a partir de uma tabela e uma segunda tabela seja "filtrada" de acordo com o valor selecionado na primeira (ver figura 1).
Neste tópico explicaremos a criação de fontes de dados mestre/escravo tomando como exemplo uma tabela de estados representando a tabela mestre e uma tabela de cidades representando a tabela escrava. As tabelas utilizadas possuem as seguintes estruturas:
Tabela de Estados
Campo | Tipo | Tamanho |
Nome | Alfanumérico | 40 |
Sigla | Alfanumérico | 2 |
Tabela de Cidades
Campo | Tipo | Tamanho |
Nome | Alfanumérico | 40 |
Estado | Alfanumérico | 2 |
Na figura 1 temos um exemplo de campos no GoldenDoc utilizando tabelas estados e cidades:
Figura 1
A seguir mostramos exemplos do uso das tabelas mestre/escravo utilizando fontes de dados ODBC e LightBase.
Exemplo 1 - Fontes de dados ODBC
Para implementar as fontes mestre/escravo ODBC são necessários os seguintes passos:
1.1) Criação e configuração dos DSNs
1.2) Criação e configuração das fontes de dados
1.3) Criação e configuração dos campos GoldenDoc
1.1 - Criação e configuração dos DSNs
A partir do Administrador de Fontes de Dados ODBC do Windows deve-se criar DSNs necessários. Para este exemplo será necessário apenas o DSN tabelas que referência o database das tabelas estados e cidades. Para serem acessíveis pelo GoldenDoc o DSN deve ser criado como DSN do sistema (System DNS).
1.2 - Criação e configuração das fontes de dados
Fonte de Dados Mestre
A partir do GoldenDoc Studio crie uma nova fonte de dados do tipo ODBC e configure as propriedades com as valores abaixo:
Figura 2
A propriedade DSN (figura 2) é definida com o DSN criado, tabelas. Para a propriedade Consulta SQL definimos o comando de consulta informando o campo sigla, que contem o valor a ser gravado pelo GoldenDoc; e o campo nome que contem a descrição a ser exibida para o usuário. Em todo comando select devemos definir o campo de valor com um alias para valuefiled e campo de descrição com um alias para descriptionfield.
Fonte de Dados Escrava
A partir do GoldenDoc Studio crie uma nova fonte de dados do tipo ODBC e configure as propriedades com as valores abaixo:
Figura 3
A propriedade DSN (figura 3) é definida com o DSN criado, tabelas. Para a propriedade Consulta SQL definimos o comando de consulta informando ambos os campos valuefield e descriptionfield com campo nome, pois neste caso o valor a ser exibido para o usuário será o mesmo a ser gravado pelo GoldenDoc. Para fontes escravas, no final do comando select deve constar a tag pré-definida [%slavefilter%]. Na propriedade Filtro da Tabela Escrava definimos uma clausula where com o campo de relacionamento estado e a tag pré-definida [%mastervalue%], esta clausula fará com que apenas as cidades com o estado igual ao valor corrente da tabela estado sejam exibidos.
1.3 - Criação e configuração dos campos GoldenDoc
Pelo GoldenDoc crie os campos que serão associados as fontes de dados mestre e escrava. Para ambos os campos defina a propriedade Tipo de Campo para tabela e a propriedade Origem dos valores para a respectiva fonte de dados. No campo mestre defina a propriedade Campo Escravo para o campo GoldenDoc escravo associado.
Exemplo 2 - Fontes de dados LightBase
Para implementar as fontes mestre/escravo LightBase são necessários os seguintes passos:
2.1) Criação e configuração das fontes de dados
2.2) Criação e configuração dos campos GoldenDoc
2.1 - Criação e configuração das fontes de dados
Fonte de Dados Mestre
A partir do GoldenDoc Studio crie uma nova fonte de dados do tipo LightBase e configure as propriedades abaixo:
Figura 4
Na propriedade Nome da Base (figura 4) definimos o nome da base que será usada na tabela mestre, neste caso a base é estado. A propriedade Campo de Valor, que indica qual campo terá o valor a ser gravado pelo GoldenDoc, definimos com campo sigla e a propriedade Campo de Descrição, que indica o campo que contem a descrição a ser exibida para o usuário, definimos com o campo nome.
Fonte de Dados Escrava
A partir do GoldenDoc Studio crie uma nova fonte de dados do tipo LightBase e configure as propriedades abaixo:
Figura 5
Na propriedade Nome da Base (figura 5) definimos o nome da base que será usada na tabela escrava, neste caso a base é cidades. Ambas as propriedade Campo de Valor e Campo de Descrição são definidas com campo nome, pois neste caso o valor a ser exibido para o usuário será o mesmo a ser gravado pelo GoldenDoc.
2.2 - Criação e configuração dos campos GoldenDoc
A criação e configuração dos campos é igual ao passo 1.3.