MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Não repetir item em formulário contínuo

    Walter
    Walter
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 316
    Registrado : 17/04/2011

    [Resolvido]Não repetir item em formulário contínuo Empty [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Walter 18/4/2014, 20:41

    Tenho um Formulario com um SubForm chamado SubFml_ItensPedidoExames. Nesse há uma combobox chamada "txtExame" que busca os valores em uma tabela de apoio. Porém ao inserir um Exame no Subformulário, gostaria que esse Exame não pudesse ser novamente inserido, para não haver duplicidade. Coloquei, na Tabela que dá origem ao subform a propriedade "Indexado - duplicação não autorizada, mas ele bloqueia o item também para os proximos  registros, e não apenas para o atual.
    Alguem sabe como se faz isso?

    Obrigado,

    Walter
    Noobezinho
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3764
    Registrado : 29/06/2012

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Noobezinho 18/4/2014, 21:06

    Olá Walter

    Para ajudar melhor, seria possível  colocar as tabelas envolvidas e seus campos?

    Se entendi, o SubFml_ItensPedidoExames é de uma tabela onde irão os exames de um determinado registro que está na tabela do formulário principal.
    Nessa caso temos um relacionamento de um (tabela form principal) para vários(tabela do SubFml_ItensPedidoExames).

    Se assim for, não adiantará colocar o indexado-não duplicado nessa tabela, já que a mesma receberá outros registros para um mesmo código digamos.

    Então, sempre que se colocar um novo exame nesse subformulário, teremos que verificar se já existe o exame para tal código e se sim, fazer com que a aplicação "grite" e não deixe.
    Use um Dcontar() por exemplo.

    Abraços

    Noob


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3708
    Registrado : 04/04/2010

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Avelino Sampaio 18/4/2014, 21:12

    Olá!

    Outra opção é não deixar a combobox exibir os itens já selecionados. Vou tentar montar um modelo para vc ter uma ideia de como seria.






    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3708
    Registrado : 04/04/2010

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Avelino Sampaio 18/4/2014, 22:03

    Olá!

    Segue o exemplo.  Abra o formulário frmPedidos. Entre com os itens no subformulário e veja o que acontece com a lista da combo.  Delete itens e veja o que acontece com a lista da combobox

    Código utilizado para controlar a combobox:

    Private Sub Exame_GotFocus()
    Dim rs As DAO.Recordset
    Dim strLista$
    Dim strSql$

    On Error Resume Next
    Set rs = Me.RecordsetClone
    rs.MoveFirst
    Do While Not rs.EOF
       strLista = strLista & ",'" & rs!Exame & "'"
       rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing
    If strLista = "" Then
       strSql = "SELECT Exame, preço FROM tblExames ORDER BY exame;"
    Else
       strSql = "SELECT Exame, preço FROM tblExames WHERE exame not IN(" & Mid(strLista, 2) & ") ORDER BY exame;"
    End If
    Me!Exame.RowSource = strSql
    End Sub


    Aguardamos
    Anexos
    [Resolvido]Não repetir item em formulário contínuo Attachmentwalter.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (21 Kb) Baixado 77 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Walter
    Walter
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 316
    Registrado : 17/04/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Walter 19/4/2014, 11:50

    Obrigado pela atenção Noob.
    Obrigado, Avelino.
    Baixei seu exemplo e é exatamente o que preciso. Vou tentar implementa-lo no meu BD, se não conseguir vou posta-lo prá voce me ajudar. Ok?
    (Não vou fechar o tópico por enquanto...)

    Walter
    Walter
    Walter
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 316
    Registrado : 17/04/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Walter 19/4/2014, 16:04

    Bom dia, Avelino.

    Seu exemplo funcionou legal, mas não consegui implanta-lo no meu sisteminha... Não sei se é por causa do Código no Evento "Se não estiver na lista", ou se não adaptei seu código direito... Retirei o código para deixa-lo "limpo" e não atrapalhar sua análise.

    Além desse problema, tem mais um pequeno: o botão "Novo Pedido de Exame" deveria limpar o SubFml_ItensPedidoExames e manter a data do Pedido ("DataExame"), mas não está fazendo isso...

    Ao abrir vá na combo "Procurar por" , escolha um nome e clique no botao "Pedir Exames".

    Um abraço

    Walter
    Anexos
    [Resolvido]Não repetir item em formulário contínuo AttachmentReceita Medica PráticaHSVP.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (211 Kb) Baixado 38 vez(es)
    cafpr
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 973
    Registrado : 08/02/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  cafpr 21/4/2014, 01:18

    Teste.

    http://speedy.sh/gARfd/Receita-Medica-PraticaHSVP.mdb
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4338
    Registrado : 06/11/2009

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Assis 21/4/2014, 11:08

    Bom dia
    Grande Mestre Avelino Sampaio

    A partir do seu exemplo de não deixar repetir dados no sub formulario, queria também filtrar os dados a registar no Subformulario,  a partir dos campos "Tipo" e "Tipo1" que estão no formulário Principal

    Segue meu exemplo


    .................................................................................
    *** Só sei que nada sei ***
    Walter
    Walter
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 316
    Registrado : 17/04/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Walter 21/4/2014, 18:58

    Boa tarde, Cafpr.

    Não entendi. Parece-me que não teve modificação alguma.
    (Você não terá anexado o arquivo errado?

    Um abraço.

    Walter
    cafpr
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 973
    Registrado : 08/02/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  cafpr 21/4/2014, 23:05

    Foi adaptado o exemplo do colega Avelino no seu.
    Teste e retorne...
    Walter
    Walter
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 316
    Registrado : 17/04/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Walter 22/4/2014, 00:02

    Boa noite, Cafpr.

    Agradeço a sua atenção, tentando me ajudar nesses problemas.
    Porém, o arquivo que voce enviou é o mesmo que eu postei. Não consegui localizar o Evento onde voce inseriu o código do Avelino.
    Também o Botao Novo Pedido de Exames continua sem funcionar, apesar de ser sido feito pelo assistente do Access.

    Um abraço,

    Walter
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3708
    Registrado : 04/04/2010

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Avelino Sampaio 22/4/2014, 09:52

    Walter,

    veja se atende.

    Sucesso!


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3708
    Registrado : 04/04/2010

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Avelino Sampaio 22/4/2014, 10:09

    Assis,

    veja se atende.

    Sucesso!
    Anexos
    [Resolvido]Não repetir item em formulário contínuo AttachmentAssis_rev.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (32 Kb) Baixado 63 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4338
    Registrado : 06/11/2009

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Assis 22/4/2014, 11:22

    Obrigado
    Avelino Sampaio

    Era mesmo isso


    .................................................................................
    *** Só sei que nada sei ***
    Walter
    Walter
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 316
    Registrado : 17/04/2011

    [Resolvido]Não repetir item em formulário contínuo Empty Re: [Resolvido]Não repetir item em formulário contínuo

    Mensagem  Walter 22/4/2014, 22:29

    Perfeito, Avelino.
    Do jeito que eu queria. Muito obrigado.

    Um abraço,

    Walter
    avatar
    Carlos Cruz
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 59
    Registrado : 26/02/2014

    [Resolvido]Não repetir item em formulário contínuo Empty Por favor !

    Mensagem  Carlos Cruz 3/7/2018, 03:26

    Neste banco de dados postado o campo Exame existe em 2 tabelas. Destro do código postado, o campo Exame, como eu consigo saber de qual tabela pertence? Obrigado.
    avatar
    Carlos Cruz
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 59
    Registrado : 26/02/2014

    [Resolvido]Não repetir item em formulário contínuo Empty Dúvidas

    Mensagem  Carlos Cruz 3/7/2018, 03:56

    Private Sub Exame_GotFocus() 'CAMPO EXAME É DA TABELA tblExames
    Dim rs As DAO.Recordset
    Dim strLista$
    Dim strSql$

    On Error Resume Next
    Set rs = Me.RecordsetClone
    rs.MoveFirst
    Do While Not rs.EOF
    strLista = strLista & ",'" & rs!Exame & "'" 'CAMPO EXAME QUAL TABELA ?
    rs.MoveNext
    Loop
    rs.Close
    Set rs = Nothing
    If strLista = "" Then
    strSql = "SELECT Exame FROM tblExames ORDER BY exame;" 'CAMPO EXAME 2 VEZES DE QUAIS TABELAS ?
    Else
    strSql = "SELECT Exame FROM tblExames WHERE exame not IN(" & Mid(strLista, 2) & ") ORDER BY exame;" 'CAMPO EXAME 3 VEZES DE QUAIS TABELAS ?
    End If
    Me!Exame.RowSource = strSql 'CAMPO EXAME QUAL TABELA ?
    End Sub

      Data/hora atual: 1/3/2021, 15:35