MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


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.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


2 participantes

    [Resolvido]Impedir a Exclusão

    Connekta Informatica
    Connekta Informatica
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1082
    Registrado : 01/07/2011

    [Resolvido]Impedir a Exclusão Empty [Resolvido]Impedir a Exclusão

    Mensagem  Connekta Informatica 10/8/2014, 02:18

    Tenha a tabela tblClientes onde estão todos os clientes cadastrados no sistema e tenha a tabela tblReceitas onde estão cadastradas todas as contas à receber e recebidas.

    Na tabela de receitas tenho os campos CodigoCliente e Quitado(os campos que quero utilizar)

    No formulário frmListaClientes tenho um botão excluir e uma caixa de listagem lstClientes.

    Ao clicar do botão excluir quero que ele verifique na tabela de Receitas se há clientes lançado (pelo CodigoCliente) e verifique se há contas em Aberto. Se tiver contas em aberto(ou seja não Quitada) impedir a exclusão desse cliente.

    Veja o Código que estou tentando fazer isso:


    Dim varItem As Variant
    If IsNull(Me.lstClientes) Then
    MsgBox " Nenhum Cliente Selecionado Para Eliminar!", vbCritical, " Aviso "
    Exit Sub
    End If
    If (Not IsNull(DLookup("[CodigoCliente]", "tblReceitas", "[CodigoCliente] ='" & Me!txtCodigoCliente & "' and [Quitado]='" & Não & "'"))) Then

    MsgBox "O Cliente " & Me.lstClientes.Column(2) & Chr(10) + "Não pode ser excluido, pois há contas em Aberto.", vbQuestion, " Aviso "
    Exit Sub
    End If

    For Each varItem In Me.lstClientes.ItemsSelected
    If MsgBox("Eliminar Ciente ? " & Me.lstClientes.Column(2), vbYesNo + vbQuestion, "Aviso") = vbYes Then
    CurrentDb.Execute "DELETE * FROM tblClientes WHERE Codigo =" & Me.txtCodigoCliente & ""
    MsgBox "Cliente Anulado com Sucesso!", vbOKOnly + vbInformation, "Aviso"
    Else
    Me.lstClientes.Selected(varItem) = False
    Exit Sub
    End If

    Next varItem
    Me.lstClientes.Requery




    Alguém pode me ajudar?


    .................................................................................




    Untitled Document





    Connekta Informática Apoia:


    Chapada dos Veadeiros - Alto Paraíso de Goiás
    Venha conhecer as belezas naturais desta cidade.


    Clique Aqui


    Lembrete: Desfrutar e Preservar é um direito de Todos.




    formiga10x
    formiga10x
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 818
    Registrado : 11/09/2013

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  formiga10x 10/8/2014, 06:30

    Código:
    If DCount("Pago", "tblReceitas ", "CodigoCliente =" & Me!lstClientes.Column(0) & " AND Pago='Não'") >= 1 Then
                
    MsgBox "'" & Me!lstClientes.Column(1) & "' Não Pode Ser Excluido, Pois, Existe Débitos Relacionado à Este Cliente!", vbExclamation, "Exclusão não permitida"
                
    Exit Sub
                        
     End If


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes
    Connekta Informatica
    Connekta Informatica
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1082
    Registrado : 01/07/2011

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  Connekta Informatica 10/8/2014, 20:26

    Será que você pode me ajudar em outra coisa.

    Tenho o formulário que lista todos os clientes cadastro, como meu sistema é para várias empresas coloquei um criterio para filtrar pela empresa logada, ai esta tudo certo, mais adicionei outro criterio para pesquisar pelo nome do cliente, mas esta com erro.

    Então são dois criterios em uma consulta.

    Veja o código:

    Código:


    Dim SQLCliente As Variant
    SQLCliente = "SELECT Codigo,DataCadastro,Nome,Pessoa,Doc1,Doc2,Endereco,Bairro,CEP,Cidade, " & _
    "UF,Telefone,Celular,Email,LocalFoto,CodiegoEmpresa,NomeEmpresa " & _
    "FROM tblClientes WHERE Nome=ALike Form!frmListaClientes!txtBusca & " * " AND NomeEmpresa=[Formulários]![frmListaClientes]![txtNomeEmpresa];"
    Me.lstClientes.RowSource = SQLCliente



    .................................................................................




    Untitled Document





    Connekta Informática Apoia:


    Chapada dos Veadeiros - Alto Paraíso de Goiás
    Venha conhecer as belezas naturais desta cidade.


    Clique Aqui


    Lembrete: Desfrutar e Preservar é um direito de Todos.




    formiga10x
    formiga10x
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 818
    Registrado : 11/09/2013

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  formiga10x 11/8/2014, 05:58

    Não entendi o por que deste "ALike e o sinal de =... Se for para fazer a busca por caixa de texto no evento ao alterar coloque:
    nome do campo que deseja buscar caso seja mais de um utilize campo1 & campo Like '*" & suatxt.text & "*'" And o outro critério


    Código:
    Me.lstClientes.RowSource = "SELECT Codigo,DataCadastro,Nome,Pessoa,Doc1,Doc2,Endereco,Bairro,CEP,Cidade, " & _
    "UF,Telefone,Celular,Email,LocalFoto,CodiegoEmpresa,NomeEmpresa " & _
    "FROM tblClientes WHERE Nome Like  '*" & txtBusca.Text & "*' AND NomeEmpresa=[Formulários]![frmListaClientes]![txtNomeEmpresa]"


    Veja abaixo um exemplo:

    Código:
    Me.lstBusca.RowSource = "Select CodServico,DataPrevisao,Usuario,TipoEquipamento,Departamento,Empresa,Status From " & _
    "tblServico Where Usuario Like '*" & Me.txtbuscar.Text & "*' and tblServico.Empresa = cboEmpresa and tblServico.Status = 'ATIVO'"


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes
    Connekta Informatica
    Connekta Informatica
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1082
    Registrado : 01/07/2011

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  Connekta Informatica 11/8/2014, 17:19

    Esta com um erro, veja o banco de dados.


    .................................................................................




    Untitled Document





    Connekta Informática Apoia:


    Chapada dos Veadeiros - Alto Paraíso de Goiás
    Venha conhecer as belezas naturais desta cidade.


    Clique Aqui


    Lembrete: Desfrutar e Preservar é um direito de Todos.




    formiga10x
    formiga10x
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 818
    Registrado : 11/09/2013

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  formiga10x 11/8/2014, 17:58

    Não seria

    Código:
    Private Sub Form_Open(Cancel As Integer)
    Me.lstClientes.RowSource = "SELECT * " & _
    "FROM tblClientes "
    Me.lstClientes.Requery
    End Sub
    Pois, até então o evento está no abrir do form ou seja não tem valor algum na txtbuscar para servir de filtro.
    O filtro pode ser adicionado no evento ao alterar da txtbuscar que é o certo porém ao carregar caso queira pode ser adicionado uns filtros baseado na tabela em questão.

    Só diga o que quer que seja filtrado ao abrir o form e se deseja que eu coloque o filtro no campo txtbuscar.

    Veja um exemplo no seu bd mesmo filtrando por Nome

    Código:
    Private Sub txtBusca_Change()
    Me.lstClientes.RowSource = "Select * From tblClientes Where Nome Like '*" & Me.txtBusca.Text & "*'"
    Me.lstClientes.Requery
    End Sub


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes
    Connekta Informatica
    Connekta Informatica
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1082
    Registrado : 01/07/2011

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  Connekta Informatica 11/8/2014, 19:44

    É porque eu preciso que ao abrir ele abra somente com os clientes de um Empresa logada.

    E ao pesquisar da caixa de texto pesquise somente o clientes desta empresa.

    Exemplo:
    Na tabela tenho:
    Cliente 1 - Empresa 1
    Cliente 2 - Empresa 2
    Cliente 3 - Empresa 3
    ....

    Abro o sistema seleciono a Empresa 1, ao abrir do formListaClientes deverá somente aparecer:

    Cliente 1 - Empresa 1

    Se selecionar Empresa 2:

    Cliente 2 - Empresa 2


    Por isso preciso que ao abrir filtre pela nome da empresa que foi selecionada. E ao pesquisar filtre pelo nome da empresa selecionada e o nome do cliente que foi digitado na caixa de texto.


    .................................................................................




    Untitled Document





    Connekta Informática Apoia:


    Chapada dos Veadeiros - Alto Paraíso de Goiás
    Venha conhecer as belezas naturais desta cidade.


    Clique Aqui


    Lembrete: Desfrutar e Preservar é um direito de Todos.




    formiga10x
    formiga10x
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 818
    Registrado : 11/09/2013

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  formiga10x 11/8/2014, 20:42

    Ok está pronto e funcionando. Porém tive de fazer um form para selecionar o nome da empresa e um botão para abrir o formLista pois, você não enviou o formulário que fazia referência ao nome da empresa. Mas está tudo ok só adaptar ao seu projeto agora.

    Veja que o formLista ao abrir filtra a lista pelo nome da empresa e na txtbuscar faz a filtragem apenas pelos nome baseado na empresa logada.
    Anexos
    [Resolvido]Impedir a Exclusão AttachmentSCFEV_v1_be - Editado.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (362 Kb) Baixado 46 vez(es)


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes
    Connekta Informatica
    Connekta Informatica
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1082
    Registrado : 01/07/2011

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  Connekta Informatica 11/8/2014, 21:59

    Ok, muito obrigado.


    .................................................................................




    Untitled Document





    Connekta Informática Apoia:


    Chapada dos Veadeiros - Alto Paraíso de Goiás
    Venha conhecer as belezas naturais desta cidade.


    Clique Aqui


    Lembrete: Desfrutar e Preservar é um direito de Todos.




    formiga10x
    formiga10x
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 818
    Registrado : 11/09/2013

    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  formiga10x 11/8/2014, 22:01

    O Fórum agradece o Retorno.
    Sucesso.


    .................................................................................
    Abraço
    Formiga10x

    Sempre que possível poste o bd ou parte dele, com uma explicação bem clara e objetiva do que quer.
    “Um homem não está acabado quando enfrenta a derrota. Ele está acabado quando desiste - Richard Nixon”
    Formiga10x

    "Lembro do exato momento em que me dei conta que boa parte de minha vida foi dedicada a localizar erros em meus próprios programas."
    - Maurice Vicent Wilkes

    Conteúdo patrocinado


    [Resolvido]Impedir a Exclusão Empty Re: [Resolvido]Impedir a Exclusão

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 18:28