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
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