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


3 participantes

    [Resolvido]Saida de produtos de estoque

    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Saida de produtos de estoque Empty Saida de produtos de estoque

    Mensagem  Gilberto Rocha 22/2/2010, 14:45

    Olá, bom dia, tenho um probleminha, no form de saida de produtos, as vezes quando estou dando uma saida as vezes da um erro:

    Update ou CancelUpdate sem addnew ou Edit

    Meu código:

    Private Sub Atualizar_Saida_AfterUpdate()
    'Testa se é verdadeiro o valor do controle Atualizar_Saida.
    If Atualizar_Saida = True Then
    'Se for verdadeiro, pergunta ao usuário se ele deseja atualizar a quantidade do produto no estoque.
    If MsgBox("Deseja atualizar a quantidade deste produto no estoque?", vbYesNo, "Aviso") = vbYes Then
    'Se o usuário não entrar com um valor ou se o valor for o (zero), o Sistema emite uma mensagem.
    If IsNull(Me.Qtde_Compra) Or Me.Qtde_Compra = 0 Then
    MsgBox "Informe a quantidade de vendida no estoque!", vbCritical + vbOKOnly, "Atenção!"
    Me.Qtde_Compra.SetFocus
    Exit Sub
    End If
    'Declara nova variável (cnn) de conexão pelo sistema ADO
    Dim cnn As New ADODB.Connection
    'Declara variável rs1 para os registros
    Dim rs1 As ADODB.Recordset
    'Abre a conexão com o banco
    Set cnn = CurrentProject.Connection
    'Abre a conexão com o registro
    Set rs1 = New ADODB.Recordset
    rs1.CursorType = adOpenKeyset
    rs1.LockType = adLockOptimistic
    'Abre a Tabela_Produtos
    rs1.Open "Tabela_Produtos", cnn, , , adCmdTable
    'Procura e compara código do produto entre as tabelas Produtos e a tabela de itens.
    rs1.Find "Id_Produto=" & Me.Id_Produto_Item, 0, adSearchForward, 1
    If Not rs1.EOF Then
    'Diminui a quantidade de itens que saiu naquele momento ao estoque. (Compra)
    rs1("Estoque") = rs1("Estoque") - Me.Qtde_Compra
    'Verifica se o estoque é menor do que 0 (zero)
    If rs1("Estoque") < 0 Then
    'Se for, emite mensagem ao usuário
    MsgBox "Quantidade não disponível. Saldo atual em estoque de " & rs1("Estoque") + Me.Qtde_Compra & " produtos", vbCritical, "Atenção!"
    Exit Sub
    Else
    'Verifica se o estoque atual é menor do que o estoque mímino
    If rs1("Estoque") < rs1("Estoque_Minimo") Then
    ' Se for, emite mensagem avisando ao usuário que deve pedir deste produto ao fornecedor
    MsgBox "Estoque atual abaixo do estoque mínimo. Pedir no mínimo " & rs1("Estoque_Minimo") - rs1("Estoque") & " produtos(s)", vbExclamation, "Atenção!"
    'Atualiza a tabela de estoques
    rs1.Update
    Exit Sub
    Else
    rs1.Update
    'Emite uma mensagem informando a quantidade atual no estoque.
    MsgBox "Quantidade atual disponível de " & rs1("Estoque") & " produtos", vbExclamation, "Atenção!"
    End If
    End If
    End If
    'Fecha os registros
    rs1.Close
    'Fecha a conexão
    cnn.Close
    'Fecha a conexão com o banco
    Set cnn = Nothing
    'Fecha a conexão com o registro
    Set rs1 = Nothing
    Else
    End If
    End If
    End Sub
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Saida de produtos de estoque Empty Re: [Resolvido]Saida de produtos de estoque

    Mensagem  JPaulo 22/2/2010, 15:03

    Esse código tem falhas.

    Teste assim;

    Private Sub Atualizar_Saida_AfterUpdate()
    On Error Resume Next
    'Testa se é verdadeiro o valor do controle Atualizar_Saida.
    If Atualizar_Saida = True Then
    'Se for verdadeiro, pergunta ao usuário se ele deseja atualizar a quantidade do produto no estoque.
    If MsgBox("Deseja atualizar a quantidade deste produto no estoque?", vbYesNo, "Aviso") = vbYes Then
    'Se o usuário não entrar com um valor ou se o valor for o (zero), o Sistema emite uma mensagem.
    If IsNull(Me.Qtde_Compra) Or Me.Qtde_Compra = 0 Then
    MsgBox "Informe a quantidade de vendida no estoque!", vbCritical + vbOKOnly, "Atenção!"
    Me.Qtde_Compra.SetFocus
    Exit Sub
    End If
    'Declara nova variável (cnn) de conexão pelo sistema ADO
    Dim cnn As New ADODB.Connection
    'Declara variável rs1 para os registros
    Dim rs1 As ADODB.Recordset
    'Abre a conexão com o banco
    Set cnn = CurrentProject.Connection
    'Abre a conexão com o registro
    Set rs1 = New ADODB.Recordset
    rs1.CursorType = adOpenKeyset
    rs1.LockType = adLockOptimistic
    'Abre a Tabela_Produtos
    rs1.Open "Tabela_Produtos", cnn, , , adCmdTable
    'Procura e compara código do produto entre as tabelas Produtos e a tabela de itens.
    rs1.Find "Id_Produto=" & Me.Id_Produto_Item, 0, adSearchForward, 1
    If Not rs1.EOF Then
    'Diminui a quantidade de itens que saiu naquele momento ao estoque. (Compra)
    rs1("Estoque") = rs1("Estoque") - Me.Qtde_Compra
    'Verifica se o estoque é menor do que 0 (zero)
    If rs1("Estoque") < 0 Then
    'Se for, emite mensagem ao usuário
    MsgBox "Quantidade não disponível. Saldo atual em estoque de " & rs1("Estoque") + Me.Qtde_Compra & " produtos", vbCritical, "Atenção!"
    Cancel = True
    Else
    'Verifica se o estoque atual é menor do que o estoque mímino
    If rs1("Estoque") < rs1("Estoque_Minimo") Then
    ' Se for, emite mensagem avisando ao usuário que deve pedir deste produto ao fornecedor
    MsgBox "Estoque atual abaixo do estoque mínimo. Pedir no mínimo " & rs1("Estoque_Minimo") - rs1("Estoque") & " produtos(s)", vbExclamation, "Atenção!"
    'Atualiza a tabela de estoques
    Cancel = True
    Else
    rs1.Update
    'Emite uma mensagem informando a quantidade atual no estoque.
    MsgBox "Quantidade atual disponível de " & rs1("Estoque") & " produtos", vbExclamation, "Atenção!"
    End If
    End If
    End If
    'Fecha a conexão com o banco
    Set cnn = Nothing
    'Fecha a conexão com o registro
    Set rs1 = Nothing
    Else
    End If
    End If
    End Sub


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Saida de produtos de estoque Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Saida de produtos de estoque Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Saida de produtos de estoque Folder_announce_new Instruções SQL como utilizar...
    Gilberto Rocha
    Gilberto Rocha
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1027
    Registrado : 21/01/2010

    [Resolvido]Saida de produtos de estoque Empty Re: [Resolvido]Saida de produtos de estoque

    Mensagem  Gilberto Rocha 22/2/2010, 18:51

    Grande JPaulo, acho que deu certo, estou testando aqui, por enquanto blz, brigadão amigo!!!
    Razz
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Saida de produtos de estoque Empty Re: [Resolvido]Saida de produtos de estoque

    Mensagem  criquio 26/12/2010, 15:51

    Pelo que tempo que faz sem resposta, imagino que posso dar o tópico por Resolvido, não?


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.


    Conteúdo patrocinado


    [Resolvido]Saida de produtos de estoque Empty Re: [Resolvido]Saida de produtos de estoque

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 19:24