LOOP NÃO GRAVA TODOS
                    Olá pessoal!
Após a auto-soma das quantidades dos itens, eu preciso gravar o resultado na tabela estoque. O loop quantifica os Ãtens direitinho, porém ao passar pela sub de gravação na tabela, dá pau. Na verdade grava apenas o primeiro item encontrado na tabela estoque. Segue o código para análise. Se alguém puder me dar uma luz, agradeço.
Option Explicit
Dim sItem As String
Dim st As Integer
Private Sub AJUSTAR_Click()
[ô]
Conectar
Set rsAUX.ActiveConnection = dbFab
rsAUX.Open [Ô]Select saida_aux.ns, saida_aux.item, sum(qtde) as total from saida_aux GROUP by saida_aux.ns, saida_aux.item[Ô]
rsAUX.Filter = [Ô]ns= [ô][Ô] & cboNS.Text & [Ô][ô][Ô]
Do Until rsAUX.EOF
    
sItem = rsAUX.Fields([Ô]item[Ô])
st = rsAUX.Fields([Ô]total[Ô]).Value
GRAVAR_SAIDA_ITENS
    
rsAUX.MoveNext
Loop
End Sub
Sub GRAVAR_SAIDA_ITENS()
[ô]
Conectar
Set rsITEM.ActiveConnection = dbFab
rsITEM.Open [Ô]select * from estoque[Ô], dbFab, adOpenStatic, adLockOptimistic
rsITEM.Filter = [Ô]item=[ô][Ô] & sItem & [Ô][ô][Ô]
rsITEM.Fields([Ô]saida[Ô]) = st
rsITEM.Update
End Sub
            Após a auto-soma das quantidades dos itens, eu preciso gravar o resultado na tabela estoque. O loop quantifica os Ãtens direitinho, porém ao passar pela sub de gravação na tabela, dá pau. Na verdade grava apenas o primeiro item encontrado na tabela estoque. Segue o código para análise. Se alguém puder me dar uma luz, agradeço.
Option Explicit
Dim sItem As String
Dim st As Integer
Private Sub AJUSTAR_Click()
[ô]
Conectar
Set rsAUX.ActiveConnection = dbFab
rsAUX.Open [Ô]Select saida_aux.ns, saida_aux.item, sum(qtde) as total from saida_aux GROUP by saida_aux.ns, saida_aux.item[Ô]
rsAUX.Filter = [Ô]ns= [ô][Ô] & cboNS.Text & [Ô][ô][Ô]
Do Until rsAUX.EOF
sItem = rsAUX.Fields([Ô]item[Ô])
st = rsAUX.Fields([Ô]total[Ô]).Value
GRAVAR_SAIDA_ITENS
rsAUX.MoveNext
Loop
End Sub
Sub GRAVAR_SAIDA_ITENS()
[ô]
Conectar
Set rsITEM.ActiveConnection = dbFab
rsITEM.Open [Ô]select * from estoque[Ô], dbFab, adOpenStatic, adLockOptimistic
rsITEM.Filter = [Ô]item=[ô][Ô] & sItem & [Ô][ô][Ô]
rsITEM.Fields([Ô]saida[Ô]) = st
rsITEM.Update
End Sub
                    Por que nao fazer de um jeito mais facil ?
Faça um update direto e pronto, nao precisa ficar abrindo recordset para coisas desse tipo, voce nao vai navegar nos registros, somente atualizar, entao...
                
             update estoque set saida = [Ô] & st & [Ô] where item = [ô][Ô] & sItem & [Ô][ô][Ô]Faça um update direto e pronto, nao precisa ficar abrindo recordset para coisas desse tipo, voce nao vai navegar nos registros, somente atualizar, entao...
                    Obrigado ! 
Vou tentar desta forma!
                
            Vou tentar desta forma!
                    acho que esta faltando  você pedir para editar e depois salvar os dados. se for um novo registro coloca rsAUX.addnew e depois o update
Option Explicit
Dim sItem As String
Dim st As Integer
Private Sub AJUSTAR_Click()
[ô]
Conectar
Set rsAUX.ActiveConnection = dbFab
rsAUX.Open [Ô]Select saida_aux.ns, saida_aux.item, sum(qtde) as total from saida_aux GROUP by saida_aux.ns, saida_aux.item[Ô]
rsAUX.Filter = [Ô]ns= [ô][Ô] & cboNS.Text & [Ô][ô][Ô]
Do Until rsAUX.EOF
    
[txt-color=#e80000]rsAUX.edit[/txt-color]
sItem = rsAUX.Fields([Ô]item[Ô])
st = rsAUX.Fields([Ô]total[Ô]).Value
GRAVAR_SAIDA_ITENS
    
[txt-color=#e80000]rsAUX.update[/txt-color]
rsAUX.MoveNext
Loop
End Sub
Sub GRAVAR_SAIDA_ITENS()
[ô]
Conectar
Set rsITEM.ActiveConnection = dbFab
rsITEM.Open [Ô]select * from estoque[Ô], dbFab, adOpenStatic, adLockOptimistic
rsITEM.Filter = [Ô]item=[ô][Ô] & sItem & [Ô][ô][Ô]
rsITEM.Fields([Ô]saida[Ô]) = st
rsITEM.Update
End Sub
                
            Option Explicit
Dim sItem As String
Dim st As Integer
Private Sub AJUSTAR_Click()
[ô]
Conectar
Set rsAUX.ActiveConnection = dbFab
rsAUX.Open [Ô]Select saida_aux.ns, saida_aux.item, sum(qtde) as total from saida_aux GROUP by saida_aux.ns, saida_aux.item[Ô]
rsAUX.Filter = [Ô]ns= [ô][Ô] & cboNS.Text & [Ô][ô][Ô]
Do Until rsAUX.EOF
[txt-color=#e80000]rsAUX.edit[/txt-color]
sItem = rsAUX.Fields([Ô]item[Ô])
st = rsAUX.Fields([Ô]total[Ô]).Value
GRAVAR_SAIDA_ITENS
[txt-color=#e80000]rsAUX.update[/txt-color]
rsAUX.MoveNext
Loop
End Sub
Sub GRAVAR_SAIDA_ITENS()
[ô]
Conectar
Set rsITEM.ActiveConnection = dbFab
rsITEM.Open [Ô]select * from estoque[Ô], dbFab, adOpenStatic, adLockOptimistic
rsITEM.Filter = [Ô]item=[ô][Ô] & sItem & [Ô][ô][Ô]
rsITEM.Fields([Ô]saida[Ô]) = st
rsITEM.Update
End Sub
                    Tenho a leve impressão que  [txt-color=#e80000]Ado[/txt-color] não tem [txt-color=#e80000]Edit.[/txt-color]
                
            
                    Obrigado a todos.
                
            
                        Tópico encerrado , respostas não são mais permitidas
                    
                


