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


4 participantes

    [Resolvido]Sobre o sistema de automação comercial

    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]Sobre o sistema de automação comercial Empty Sobre o sistema de automação comercial

    Mensagem  Connekta Informatica 3/7/2011, 17:52

    Boa Tarde,

    Há meses estou estudando o sistema de automação comercial de Diego Lean.

    Mais hoje eu reparei que no formulário caixavenda.

    1 Eu coloco a data, e selecione o produto, mas quando eu digito a quantidade aparece o seguinte erro "erro de sintaxe de instrução Update". Isso acontece quando eu digito no campo quantidade 0,345.

    2 E outra coisa que esta acontecendo ele não diminui no estoque quando eu digito este valor dessa forma(0,000).
    Atenção: Formula do estoque é: =DPesquisa("[Estoque]";"[produtos]";"[ID] = " & [detalhevenda subformulário].[Formulário]![CodProduto])

    Na minha opinião o erro 1 acontece devido ao erro 2. Mais não sei o que esta acontecendo.


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




    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.




    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  vieirasoft 3/7/2011, 18:00

    Vamos alertar o Colega Leam, OK.
    LEAM
    LEAM
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 696
    Registrado : 02/04/2011

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  LEAM 3/7/2011, 19:19

    Amigo o meu fpooi adpatado para numeros
    tipo 123 10 20

    não para

    0.00

    Então vou ver aqui!!!

    se está a fazer


    .................................................................................
    Uma vida sem desafios não vale a pena ser vivida.
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  vieirasoft 3/7/2011, 19:21

    Trata disso então.
    LEAM
    LEAM
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 696
    Registrado : 02/04/2011

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  LEAM 3/7/2011, 19:25

    Amigo no meu sistema não será possivel executar essas
    ações na quant (0.325)

    estão teria
    que modificar as estrutura do vba
    para adpatar a esses valores (0,325)

    O vba foi desemvolvido por o grande Jungli


    .................................................................................
    Uma vida sem desafios não vale a pena ser vivida.
    LEAM
    LEAM
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 696
    Registrado : 02/04/2011

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  LEAM 3/7/2011, 19:27


    Private Sub Quant_AfterUpdate()
    '=====================================================
    'FAVOR NÃO RETIRE OS CRÉDITOS
    'por Glicério Júnior (Jungli) ... jungli@ibest.com.br em 8.6.2011
    'Modificado por: XXXXXXXX em DD/MM/YYYY
    '=====================================================
    On Error GoTo Err_Quant_AfterUpdate
    Dim qtd, qtd2 As Double
    Dim sql1 As String
    qtd = DLookup("[Estoque]", "[produtos]", "[ID] = " & Me.CodProduto.Column(0))
    If qtd <= 0 Or qtd <= Me.Quant Then
    MsgBox "O estoque está zerado" & vbCrLf & _
    "ou número em estoque menor do" & vbCrLf & _
    "que a quantidade informada.", _
    vbCritical, "ESTOQUE INSUFICIENTE"
    Me.Undo
    Me.CodProduto.SetFocus
    Me.CodProduto.Dropdown
    ElseIf qtd > 0 Or qtd <= Me.Quant Then

    If MsgBox("Você tem certeza que deseja atualizar o estoque??", vbQuestion + vbYesNo, "Pergunta") = vbYes Then
    qtd2 = (qtd - Quant)
    sql1 = "UPDATE produtos SET produtos.Estoque = " & qtd2 & _
    " WHERE (((produtos.ID)=" & Me.CodProduto.Column(0) & "));"
    CurrentDb.Execute sql1
    Else
    Me.Undo
    Me.CodProduto.SetFocus
    Me.CodProduto.Dropdown
    End If
    End If
    Exit_Quant_AfterUpdate:
    Exit Sub
    Err_Quant_AfterUpdate:
    MsgBox err.Description, vbCritical, "Erro Indeterminado"
    Resume Exit_Quant_AfterUpdate
    End Sub


    .................................................................................
    Uma vida sem desafios não vale a pena ser vivida.
    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]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Connekta Informatica 3/7/2011, 19:57

    Faz dias que eu quebro a cabeça e não consigo resolver este problema ai resolvi pedir ajuda aqui no fórum.


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




    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.




    LEAM
    LEAM
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 696
    Registrado : 02/04/2011

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  LEAM 3/7/2011, 20:09

    vou falar com o criador do codigo
    em breve soluconara esté problema

    aguarde amigo ok!!!


    .................................................................................
    Uma vida sem desafios não vale a pena ser vivida.
    avatar
    Convidado
    Convidado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Convidado 3/7/2011, 20:14

    Se me permitem um pitaco..

    Passei uma vista de olhos no código confeccionado pelo amigo jungli e a meu ver esta perfeito..


    O código trata apenas de fornecer as instruções para a operação matemática..

    Vejamos:

    *** Analise de fragmentos do código***

    'Nesta linha ele Aplica a quantidade do estoque em uma variável
    'Ela pega o registro condizente com o registro ativo na CaixaTexto CodProduto
    'Então aqui teremos a quantidade em estoque na tabela para determinado produto

    qtd = DLookup("[Estoque]", "[produtos]", "[ID] = " & Me.CodProduto.Column(0))
    If qtd <= 0 Or qtd <= Me.Quant Then 'Aqui aplica uma condição para checar se o estoque esta a 0
    MsgBox "O estoque está zerado" & vbCrLf & _
    "ou número em estoque menor do" & vbCrLf & _
    "que a quantidade informada.", _
    vbCritical, "ESTOQUE INSUFICIENTE"
    Me.Undo
    Me.CodProduto.SetFocus
    Me.CodProduto.Dropdown
    ElseIf qtd > 0 Or qtd <= Me.Quant Then 'Aqui se é positívo
    If MsgBox("Você tem certeza que deseja atualizar o estoque??", vbQuestion + vbYesNo, "Pergunta") = vbYes Then
    'Nesta linha está a operação matemática pegando o valor da Variável qtd - a quantidade digitada na CaixaTexto Quant
    qtd2 = (qtd - Quant)
    'Aqui simplesmente faz apenas o UPDATE na tabela, apicando o valor da segunda variável que é o resultado da operação matemática acima aplicando a mesma no regisro condizente com a CaixaTexto CodProduto
    sql1 = "UPDATE produtos SET produtos.Estoque = " & qtd2 & _
    " WHERE (((produtos.ID)=" & Me.CodProduto.Column(0) & "));"


    No meu parecer está tudo normal e não é problema do código...

    Isso me parece configuração do formato do Campo ou na tabela ou no form

    pois se o campo na tabela está em formato numeral inteiro, ele não entendera a operação matemática para subtrair isso de um número decimal...


    Creio então a solução deste, que não é um problema do sistema.. e sim uma adaptação para outra situação, passa por esta questão de formato de campos e caixa texto


    Saudações
    avatar
    Convidado
    Convidado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Convidado 3/7/2011, 20:19

    a Instução UPDATE faz apenas o lançamento de um novo valor em registro já existente..

    Como ela não consegue levar o valor decimal para o campo na tabela...

    Dá erro..pois a tabela não esta aceitando... Problema de formatação de campo e casas decimais..

    Saudações
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  vieirasoft 3/7/2011, 20:28

    Sem dúvida, bem visto. Convém saber como está formatado o campo. Se padrão, se duplo, etc.
    LEAM
    LEAM
    Super Avançado
    Super Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 696
    Registrado : 02/04/2011

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  LEAM 3/7/2011, 20:45

    sim harysonh o código está certo
    mas adpatado para o da diego costruções

    Que uso numeros
    quant 1
    quant 10

    deste tipo ai o código Funciona

    O do nosso amigo e outra forma

    assim 0,002

    por isso não dar certo!!!


    .................................................................................
    Uma vida sem desafios não vale a pena ser vivida.
    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]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Connekta Informatica 3/7/2011, 21:01

    Eu não modifique nada na estrutura do Sistema do nosso amigo Leam.

    Ainda estou estudando o sistema realizado por ele.


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




    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.




    avatar
    Convidado
    Convidado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Convidado 3/7/2011, 22:41

    Sua Solução

    Realmente a instrução UPDATE neste caso estava a não aceitar numeros decimais...

    Então utilizei um recordset para fazer o update na tabela..
    Testei e funcionou.




    Private Sub Quant_AfterUpdate()
    '=====================================================
    'FAVOR NÃO RETIRE OS CRÉDITOS
    'por Glicério Júnior (Jungli) ... jungli@ibest.com.br em 8.6.2011
    'Modificado por: Harysohn Pina em 03/07/2011
    '=====================================================


    On Error GoTo Err_Quant_AfterUpdate
    Dim db As DAO.Database 'Variavel para o BD
    Dim ws As DAO.Workspace 'Variável para o Workspace
    Dim rs As DAO.Recordset 'Variável para o recordSet
    Dim StrSQLEstoque 'Variável para receber os dados da tabela
    Dim qtd, qtd2 As Double
    Dim sql1 As String
    qtd = DLookup("[Estoque]", "[produtos]", "[ID] = " & Me.CodProduto.Column(0))

    If qtd <= 0 Or qtd <= Me.Quant Then
    MsgBox "O estoque está zerado" & vbCrLf & _
    "ou número em estoque menor do" & vbCrLf & _
    "que a quantidade informada.", _
    vbCritical, "ESTOQUE INSUFICIENTE"
    Me.Undo
    Me.CodProduto.SetFocus
    Me.CodProduto.Dropdown
    ElseIf qtd > 0 And qtd > Me.Quant Then

    If MsgBox("Você tem certeza que deseja atualizar o estoque??", vbQuestion + vbYesNo, "Pergunta") = vbYes Then
    qtd2 = (qtd - Quant)
    'Seta o WorksPace e o BD para fazer a atualização da tabela, obseve que tem que modifica o nome do BD conforme o nome que vais usar, no caso está como Diego.mdb

    Set ws = DBEngine.Workspaces(0)
    Set db = ws.OpenDatabase(CurrentProject.Path & "\Diego.mdb", False, False, "MS Access;PWD=senha")

    'Aqui a variável faz a seleção de todos os campos da tabela selecionando o registro que coincide com a CixaTexto COdProduto
    StrSQLEstoque = "SELECT * FROM Produtos WHERE (((produtos.ID)=" & Me.CodProduto.Column(0) & "));"

    Set rs = db.OpenRecordset(StrSQLEstoque)


    rs.Edit ' Abre a edição do registro para tabela Produtos
    rs![Estoque] = qtd2
    rs.Update ' Atualiza o registro para tabela Produtos

    'Encerra o Banco db e o recordSet
    rs.Close
    db.Close
    Set rs = Nothing
    Set db = Nothing

    Else
    Me.Undo
    Me.CodProduto.SetFocus
    Me.CodProduto.Dropdown
    End If
    End If
    Exit_Quant_AfterUpdate:
    Exit Sub
    Err_Quant_AfterUpdate:
    MsgBox err.Description, vbCritical, "Erro Indeterminado"
    Resume Exit_Quant_AfterUpdate
    End Sub




    Saudações
    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]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Connekta Informatica 3/7/2011, 23:01

    Deu outro erro disse que o diretório do arquivo é invalida.

    Será que tenho que mudar este parte em vermelha?
    Set ws = DBEngine.Workspaces(0)
    Set db = ws.OpenDatabase(CurrentProject.Path & "\Diego.mdb", False, False, "MS Access;PWD=senha")


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




    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.




    avatar
    Convidado
    Convidado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Convidado 3/7/2011, 23:11

    voce disse que esta a estudar o Sistema do Leam a vários dias...

    Não leu a instrução em verde acima dessa linha??????

    Esta lhe faltando atenção!!!
    avatar
    Convidado
    Convidado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Convidado 3/7/2011, 23:15

    *** Uma dica...

    Evite nomes com espaços no nome do BD

    Mude o nome Diego.mdb para o nome que esta o bd ai...

    ou renomeie o BD

    Ex.. se renomear o seu BD para Teste.mdb

    Set db = ws.OpenDatabase(CurrentProject.Path & "\teste.mdb", False, False, "MS Access;PWD=senha")

    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]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Connekta Informatica 3/7/2011, 23:32

    Falo Harysohn, Obrigado.

    Obrigado a todos pela ajuda.

    Abraços.

    Tópico Concluído.


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




    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.




    Jungli
    Jungli
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 715
    Registrado : 07/05/2010

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Jungli 4/7/2011, 08:06




    Bom dia me desculpem por não participar deste tópico, não acessei o fórum no fim de semana!

    Muito Boa a solução Harysohn,

    Lembrando que terá que mudar o tipo de dados na estrutura da tabela detalhevenda, mude o campo Quant de Inteiro Longo para Duplo.

    E a baixo posto o código do botão Excluir que deverá ser mudado também!

    On Error GoTo Err_Excluir_Click
    '=====================================================
    'FAVOR NÃO RETIRE OS CRÉDITOS
    'por Glicério Júnior (Jungli) ... jungli@ibest.com.br em 8.6.2011
    'Revisão: Glicério Júnior (Jungli) ... jungli@ibest.com.br em 4.7.2011
    'Modificado por: XXXXXXXX em DD/MM/YYYY
    '=====================================================

    'Define as variáveis
    Dim qtd, qtd2 As Double
    Dim sql1 As String
    'Pega o valor do estoque atual do produto
    qtd = DLookup("[Estoque]", "[produtos]", "[ID] = " & Me.CodProduto.Column(0))
    'Exibe questionameto sobre a atualização da quantidade e atualiaza em caso de confirmação
    If MsgBox("Deseja excluir este ítem? Depois de excluir não será possível desfazer a ação !!!", vbQuestion + vbYesNo, "Pergunta") = vbYes Then

    'Recalcula o Estoque
    qtd2 = (qtd + Quant)

    Set ws = DBEngine.Workspaces(0)
    Set db = ws.OpenDatabase(CurrentProject.Path & "\Baixa e Estorna Merc_2000_LEAM.mdb", False, False, "MS Access;PWD=senha")

    'Aqui a variável faz a seleção de todos os campos da tabela selecionando o registro que coincide com a CixaTexto CodProduto
    sql1 = "SELECT * FROM Produtos WHERE (((produtos.ID)=" & Me.CodProduto.Column(0) & "));"

    Set rs = db.OpenRecordset(sql1)

    rs.Edit ' Abre a edição do registro para tabela Produtos
    rs![Estoque] = qtd2
    rs.Update ' Atualiza o registro para tabela Produtos

    'Encerra o Banco db e o recordSet
    rs.Close
    db.Close
    Set rs = Nothing
    Set db = Nothing

    'Apaga o registro
    DoCmd.RunCommand acCmdSelectRecord
    DoCmd.RunCommand acCmdDeleteRecord
    'Mensagem de confirmação
    MsgBox "Mercadoria excluída da lista!!!", vbInformation, "CONFIRMAÇÃO"
    Me.Requery
    Else
    Me.Undo
    Me.CodProduto.SetFocus
    'Me.CodProduto.Dropdown
    End If
    Me.Refresh
    Exit_Err_Excluir_Click:
    Exit Sub
    Err_Excluir_Click:
    Resume Exit_Err_Excluir_Click


    'O código modificado de acordo com a solução do Harysohn ... para melhor entendimento.




    .................................................................................
    "Somos o que repetidamente fazemos.
    A excelência, portanto, não é um feito,
    mas um hábito."

    Aristóteles
    avatar
    Convidado
    Convidado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Convidado 4/7/2011, 09:37

    Very Happy . Faltou o resolvido no tópico amigão...

    Saudações a todos..
    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]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Connekta Informatica 4/7/2011, 10:25

    Mais uma vez muito obrigado a todos.

    Tópico Concluído.


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




    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.




    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  vieirasoft 4/7/2011, 10:26

    É só clicar em Resolvido

    Conteúdo patrocinado


    [Resolvido]Sobre o sistema de automação comercial Empty Re: [Resolvido]Sobre o sistema de automação comercial

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 21/11/2024, 15:14