Inserir um Subformulário
Um subformulário é um processo bastante interessante (e em alguns casos, absolutamente necessário) de visualizar a informação contida em várias tabelas. Como já referimos, um subformulário está sempre contido no interior de um formulário principal ( main form). Em ambos existe sempre uma relação, que tem por base a existência de um campo comum.
No nosso exemplo, pretende-se que no formulário "Ficha Cliente" esteja inserido um subformulário, de modo a que, para cada empresa cliente, sejam visualizados os vários Serviços Facturados.
O subformulário é um formulário perfeitamente igual a qualquer outro, que se apoia nos dados de um determinado objecto. Neste exemplo, o subformulário terá por base a tabela "Serviços Facturados".
A partir do momento em que o subformulário estiver criado, não irão ser inseridos mais registos directamente na tabela, mas apenas através desse novo objecto (subformulário).
O campo de ligação entre os dois formulários será o "Nº de Cliente", que, como pode verificar na tabela "Serviços Facturados", é do tipo Número { Number}.
Recordando as relações entre tabelas, como iremos relacionar um campo Numeração automática { AutoNumber } com um campo do tipo Número { Number } (respectivamente das tabelas "Clientes" e "Serviços Facturados"), é necessário que a propriedade Tamanho do campo (Field Size} do campo Number ( Numero} seja Número Inteiro Longo { Long Integer}.
Etapas:
Fig. 1.8.10 - Selecção do Formulário "Ficha de serviço Facturado" para Subformulário
Fig. 2.8.10 - Seleccionar ligação Reconhecida pelo Access
Fig. 3.8.10 - Terminar Assistente do Subformulário
Ao activar o formulário, basta verificar se o seu funcionamento está correcto.Teste o funcionamento do subformulário, inserindo alguns registos de "Serviços Facturados" em diferentes "Clientes".
Se tiver algum problema na ligação (Link) formulário-subformulário, será aconselhável seleccionar o objecto Subformulário com apenas um clique do rato e verificar as propriedades Objecto de origem {Source Object} e Ligar campos incorporados/principais {Link Child/Master Fields }