[resolvido] Relacionamento com chave composta

Moderador: Avelino Sampaio

ROSANO
Mensagens: 20
Registrado em: 06 Jun 2015, 22:21

[resolvido] Relacionamento com chave composta

Mensagempor ROSANO » 06 Jul 2015, 19:30

Como fazer uma relacionamento de modo que toda vez que eu combinar um órgão e com uma categoria no formulário retorne o subformulário relacionado e me permita acrescentar novos registros, caso já exista algum registro; ou permita começar registros se ainda não houver uma combinação específica de órgão e categoria? Observação: Não pode haver combinações repetidas.

Segue link com o arquivo:

Muitissimo Grato!

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.


ROSANO
Mensagens: 20
Registrado em: 06 Jun 2015, 22:21

Re: Relacionamento com chave composta

Mensagempor ROSANO » 07 Jul 2015, 20:07

Será que isso é complicado?
A princípio, me parece tão simples!

Avatar do usuário
Avelino Sampaio
Mensagens: 1896
Registrado em: 04 Jun 2015, 18:27
Contato:

Re: Relacionamento com chave composta

Mensagempor Avelino Sampaio » 07 Jul 2015, 20:43

Rosano,

veja se eu entendi: se lanço IPEN e SAUDE em um novo registro não poderei ter esta combinção IPEN SAUDE. É isso ?

Aguardamos
==================================================
Clique no link abaixo e veja um ótimo kit de ensino que tenho para você.
http://www.usandoaccess.com.br
==================================================

ROSANO
Mensagens: 20
Registrado em: 06 Jun 2015, 22:21

Re: Relacionamento com chave composta

Mensagempor ROSANO » 07 Jul 2015, 21:45

Exatamente!
E ainda não avisar que não pode ser combinada de novo, mas puxar o subformulario da combinação existente para poder inserir novos registros!
Seria possível?

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.


Avatar do usuário
Avelino Sampaio
Mensagens: 1896
Registrado em: 04 Jun 2015, 18:27
Contato:

Re: Relacionamento com chave composta

Mensagempor Avelino Sampaio » 08 Jul 2015, 09:01

Rosano,

abra o seu formulário.

rosano_fig1.gif


Vá para um registro novo e entre com SES e EFETIVO e veja o resultado.

Tive que utilizar um pouco de programação para filtrar a combinção existente.

Código:
Option Compare Database
Dim blnCancela As Boolean
Dim j

Private Sub CATEGORIA_AfterUpdate()
Call fncVerificaCadastro
End Sub

Private Sub Form_Timer()
'Dispara o filtragem após 0.5 segundo
DoCmd.ApplyFilter , "categoria & secretaria = " & j
'desativa o timer do formulário
Me.TimerInterval = 0
End Sub

Private Sub SECRETARIA_AfterUpdate()
Call fncVerificaCadastro
End Sub

Private Sub fncVerificaCadastro()
Dim ws As Object
'verifica se a combinação categoria e secretaria existe já cadstrada
If DCount("categoria & secretaria", "secretarias com categoria", "categoria= " & Nz(Me!CATEGORIA, 0) & " and secretaria = " & Nz(Me!SECRETARIA, 0)) > 0 Then
'salva os valores categoria e secretaria na variável j
j = Nz(Me!CATEGORIA) & Nz(Me!SECRETARIA)
Set ws = CreateObject("WScript.shell")
'descarta o novo registro
ws.SendKeys "{ESC}"
Set ws = Nothing
'ativa o timer do formulário em 0,5 segundo
Me.TimerInterval = 500
End If
End Sub


Nota: Para impedir lançamentos orfãos no subformulário eu alterei a propriedade REQUERIDO para SIM do campo ID_SC da tabela VIGÊNCIAS.

Aguardamos
Você deve estar registrado e autenticado para ter acesso ao arquivo anexo.
==================================================
Clique no link abaixo e veja um ótimo kit de ensino que tenho para você.
http://www.usandoaccess.com.br
==================================================

ROSANO
Mensagens: 20
Registrado em: 06 Jun 2015, 22:21

Re: Relacionamento com chave composta

Mensagempor ROSANO » 09 Jul 2015, 15:52

Agora sim!

Era exatamente isso que eu queria!

Que bom que existem caras feras que não se importam em dividir seu conhecimento com quem precisa!

Muitíssimo Obrigado! Valeu demais!

tuvok20@hotmail.com

Disable adblock

Precisamos do seu apoio. Faca uma doacao para o site atraves do Paypal.



Voltar para “Tabelas”

Quem está online

Usuários neste fórum: Nenhum usuário registrado e 2 visitantes