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

    Loop dentro de outro

    marcelo3092
    marcelo3092
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 294
    Registrado : 19/08/2010

    Loop dentro de outro Empty Loop dentro de outro

    Mensagem  marcelo3092 2/9/2018, 23:25

    Boa noite galera gostaria de pedir a ajuda de vcs referente a um loop que estou tentando fazer mais ta dificil.
    O que eu pretende seria o primeiro loop ele verifica em uma consulta um determinado produto e sua quantidade até ai blz consigo ele até aparece a mensagem do jeito que eu quero informando se o produto estoque com estoque menor. Agora o segundo e de acordo com o primeiro exemplo se ele verificar que o produto esta com estoque ele adiciona o produto se não tiver ele aparece a mensagem e somente adiciona o produto que estiver.
    um é este que funcinona perfeitamente
    Código:

    Dim rs10
    Dim rs11
    Dim rs12

    Dim rst As Recordset
    Set rst = Me!Frm_Produto_Detalhe.Form.RecordsetClone
    rst.MoveFirst

    Do While Not rst.EOF
    rs10 = DLookup("[Estoque]", "Mat_Estoque", "[Cód_Matéria] =" & rst!Cód_Matéria)
    rs11 = DLookup("[Descrição]", "Matéria", "[Cód_Matéria] =" & rst!Cód_Matéria)
    If rst.Fields("Quantidade") * Me.N_Pares > rs10 Then
    'MsgBox "A Quantidade Requerida Não Existe no Estoque" & rs11, vbCritical, NomeAplicativo()

    MsgBox "A Quantidade Requerida Não Existe no Estoque." & vbCr & "" & vbCr & _   '[b][color=#ff3300] Aqui no caso nem precisaria da mensagem agora[/color] [/b]
                 "Material: " & rs11 & vbCr & _
                "Quantidade no Estoque: " & rs10, vbCritical, NomeAplicativo()
               
                Else
     
                       
    End If
    rst.MoveNext

    Loop

    Set rs10 = Nothing
    Set rs11 = Nothing

    rst.Close

    Set rst = Nothing




    Agora o outro seria para inclusão se o produto estiver no estoque


    Código:
    Dim dbOrc As Database, rs2, rs3 As DAO.Recordset
    Set dbOrc = CurrentDb

    'Aqui abro a tabela onde estão os produtos do orçamento
    Set rs2 = dbOrc.OpenRecordset("SELECT * FROM Produto_Detalhe WHERE Cód_Produto=" & Me.Combinação48)
    'Aqui abro a tabela que vai receber os produtos do orçamento
    Set rs3 = dbOrc.OpenRecordset("Matéria_Saida_Detalhe", dbOpenDynaset)
    'Aqui os campos que vão receber os dados dos produtos do orçamento

    While (Not rs2.EOF)    ' Aqui eu tentei colocar esta condição mais sem sucesso If rst.Fields("Quantidade") * Me.N_Pares > rs10 Then
    With rs3
    .AddNew
    ![Cód_Saida] = DMax("Cód_Saida", "Matéria_Saida")
    ![Cód_Matéria] = rs2![Cód_Matéria]
    ![Valor_Registrado] = rs2![Valor_Registrado]
    ![Qtd_Par] = rs2![Quantidade]
    .Update
    rs2.MoveNext
    End With
    Wend


    'Aqui fecho as tabelas abertas
    rs2.Close
    Set rs2 = Nothing
    rs3.Close
    Set rs3 = Nothing
    Set dbOrc = Nothing

    Alguém poderia ajudar  como posso unir as duas funções.
    Como falei uma verifica o produto consultado e pega a quantidade de estoque de uma consulta e compara. Tendo estoque ele adiciona a lista na tabela.
    desde já agradeço a ajuda.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7922
    Registrado : 15/03/2013

    Loop dentro de outro Empty Re: Loop dentro de outro

    Mensagem  Alvaro Teixeira 4/9/2018, 12:27

    Olá Marcelo Antonio,

    Quanto a um loop dentro de outro, veja no topico abaixo na mensagem nº 10 o código que fiz para colega:
    https://www.maximoaccess.com/t34095-resolvidoselecionar-os-n-maiores-valores-em-um-relatorio

    Quanto ao erro, veja se Onde tem:
    While (Not rs2.EOF)

    Não será:
    Do While Not rs2.EOF

    Abraço
    bigfill
    bigfill
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 477
    Registrado : 27/03/2015

    Loop dentro de outro Empty Re: Loop dentro de outro

    Mensagem  bigfill 4/9/2018, 12:54

    Bom dia!

    marcelo3092, Tem um exemplo meu que utiliza um loop dentro do outro, da uma olhada se te ajuda.

    https://www.maximoaccess.com/t32142-mapeamento-de-estoque

    Conteúdo patrocinado


    Loop dentro de outro Empty Re: Loop dentro de outro

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 20/5/2024, 21:37