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]Variáveis Dim com problemas

    avatar
    braine
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 80
    Registrado : 16/01/2014

    [Resolvido]Variáveis Dim com problemas Empty [Resolvido]Variáveis Dim com problemas

    Mensagem  braine 28/7/2017, 13:31

    Estou usando as Variaveis Dim dentro do Loop. E quando usa o Loop os valores do Dim parece que acumulam.
    O código e para desfazer as alterações de lançamentos efetuados. Pega o Total de itens digamos "4", cada nota da nota recebeu um numero 1,2,3 e 4. Cada Loop pega pega o total de itens - 1. Até chegar o Total Itens = 0.

    Se tiver um unico Item efetua o calculo corretamente. 100 unidades, desfaz as 100 unidades. Se tiver digamos 2 ou mais tira 3 vezes o valor.

    Se puderem ajudar agradeço

    Codigo abaixo:



    Do Until Me!TotalItens = 0

    Dim ent As Integer
    Dim aen As Integer
    Dim val As Integer
    Dim Itens As Byte

    DoCmd.Requery

    ent = Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue.Value
    aen = Forms!fornotafiscal!ConsAcertoEmpenho.Form!Aentregar.Value
    val = Forms!fornotafiscal!ConsAcertoEmpenho.Form!valorentregue.Value

    'Atualiza os campos "Entregue", "AEntregar" e "ValorEntregue"
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue = Null 'limpa o campo Entregue
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue = ent - Forms!fornotafiscal!ConsItenExclusao!entregue 'Atualiza o valor Entregue

    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Aentregar = Null 'limpa o campo Aentregar
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Aentregar = aen + Forms!fornotafiscal!ConsItenExclusao!entregue 'Atualiza o valor Aentregar

    Forms!fornotafiscal!ConsAcertoEmpenho.Form!valorentregue = Null 'limpa o campo Valor Entregue
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!valorentregue = Forms!fornotafiscal!ConsAcertoEmpenho!entregue * Forms!fornotafiscal!ConsItenExclusao!PrecoUnitario 'Atualiza o Valor Entregue

    DoCmd.Requery

    'Atualiza o Status da mercadoria
    Select Case Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue.Value
    Case Is = 0
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Status.Value = "Não Entregue"

    Case Is = Forms!fornotafiscal!ConsAcertoEmpenho.Form!Quantidade.Value
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Status.Value = "Entregue"

    Case Is < Forms!fornotafiscal!ConsAcertoEmpenho.Form!Quantidade.Value
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Status.Value = "Parcial"
    DoCmd.Requery

    Itens = Forms!fornotafiscal!TotalItens - 1
    Forms!fornotafiscal!TotalItens = Null
    Forms!fornotafiscal!TotalItens = Itens

    End Select


    Loop
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Variáveis Dim com problemas Empty Re: [Resolvido]Variáveis Dim com problemas

    Mensagem  Alexandre Neves 28/7/2017, 22:55

    Boa noite,
    E funciona com a criação das variáveis dentro do ciclo?
    Coloque a criação das variáveis fora do ciclo


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    braine
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 80
    Registrado : 16/01/2014

    [Resolvido]Variáveis Dim com problemas Empty Re: [Resolvido]Variáveis Dim com problemas

    Mensagem  braine 31/7/2017, 12:02

    Obrigado!!! Esta funcionando que uma maravilha, tirei a as variaves de dentro do loop, e também tirei um Requery.



    Dim entr As Integer
    Dim aen As Integer
    Dim val As Integer
    Dim Itens As Byte

    Do Until Me!TotalItens = 0

    DoCmd.Requery

    entr = Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue.Value - Forms!fornotafiscal!ConsItenExclusao.Form!entregue.Value
    aen = Forms!fornotafiscal!ConsAcertoEmpenho.Form!Aentregar.Value
    val = Forms!fornotafiscal!ConsAcertoEmpenho.Form!valorentregue.Value

    'Atualiza os campos "Entregue", "AEntregar" e "ValorEntregue"
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue = Null 'limpa o campo Entregue
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue = entr ' - Forms!fornotafiscal!ConsItenExclusao!entregue 'Atualiza o valor Entregue

    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Aentregar = Null 'limpa o campo Aentregar
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Aentregar = aen + Forms!fornotafiscal!ConsItenExclusao!entregue 'Atualiza o valor Aentregar

    Forms!fornotafiscal!ConsAcertoEmpenho.Form!valorentregue = Null 'limpa o campo Valor Entregue
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!valorentregue = Forms!fornotafiscal!ConsAcertoEmpenho!entregue * Forms!fornotafiscal!ConsItenExclusao!PrecoUnitario 'Atualiza o Valor Entregue

    'Atualiza o Status da mercadoria
    Select Case Forms!fornotafiscal!ConsAcertoEmpenho.Form!entregue.Value
    Case Is = 0
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Status.Value = "Não Entregue"

    Case Is = Forms!fornotafiscal!ConsAcertoEmpenho.Form!Quantidade.Value
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Status.Value = "Entregue"

    Case Is < Forms!fornotafiscal!ConsAcertoEmpenho.Form!Quantidade.Value
    Forms!fornotafiscal!ConsAcertoEmpenho.Form!Status.Value = "Parcial"

    End Select

    Itens = Forms!fornotafiscal!TotalItens - 1
    Forms!fornotafiscal!TotalItens = Null
    Forms!fornotafiscal!TotalItens = Itens

    DoCmd.Requery
    Loop

    End Sub

    Conteúdo patrocinado


    [Resolvido]Variáveis Dim com problemas Empty Re: [Resolvido]Variáveis Dim com problemas

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 20/5/2024, 13:50