MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Consulta lenta

    Compartilhe
    avatar
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 963
    Registrado : 08/02/2011

    [Resolvido]Consulta lenta

    Mensagem  cafpr em 5/9/2017, 13:52

    Bom dia colegas.

    a consulta é para somar todas as entradas, saidas e encontrar o valor do financeiro do estoque e o CMP(custo medio ponderado)

    Ela executa mas a partir de 50 registros de entrada e saida ela fica lenta.

    A origem são 3 tabelas, tblConsumo(QuantCons - SubTotalC, ), tblEntrada(QuantEntrada - SubTotalE), tblSaida(QuantSaida-SubTotalS, QuantAlterada - SubTotalAlt e QuantRetorno- SubTotalRet).

    1 Consulta:

    SELECT tbl_produto.IdProd, tbl_produto.DescProd, IIf(IsNull([IdProd]),0,DSum("[QuantEntrada]","tbl_EntradaDetalhe","[IdProd]=" & [IdProd])) AS QEntrada, IIf(IsNull([IdProd]),0,DSum("[QuantRetorno]","tbl_SaidaDetalhe","[IdProd]=" & [IdProd])) AS QRetorno, Nz([QEntrada])+Nz([QRetorno]) AS EntradasQ, IIf(IsNull([IdProd]),0,DSum("[SubTotalE]","tbl_EntradaDetalhe","[IdProd]=" & [IdProd])) AS [R$Entrada], IIf(IsNull([IdProd]),0,DSum("[SubTotalRet]","tbl_SaidaDetalhe","[IdProd]=" & [IdProd])) AS [R$Retorno], Nz([R$Entrada])+Nz([R$Retorno]) AS [EntradasR$], IIf(IsNull([IdProd]),0,DSum("[QuantSaida]","tbl_SaidaDetalhe","[IdProd]=" & [IdProd])) AS QSaida, IIf(IsNull([IdProd]),0,DSum("[QuantCons]","tbl_ConsumoDetalhe","[IdProd]=" & [IdProd])) AS QConsumo, IIf(IsNull([IdProd]),0,DSum("[QuantAlterada]","tbl_SaidaDetalhe","[IdProd]=" & [IdProd])) AS QAlterada, Nz([QSaida])+Nz([QConsumo])+Nz([QAlterada]) AS SaidasQ, IIf(IsNull([IdProd]),0,DSum("[subtotalS]","tbl_SaidaDetalhe","[IdProd]=" & [IdProd])) AS [R$Saida], IIf(IsNull([IdProd]),0,DSum("[subtotalC]","tbl_ConsumoDetalhe","[IdProd]=" & [IdProd])) AS [R$Consumo], IIf(IsNull([IdProd]),0,DSum("[subtotalAlt]","tbl_SaidaDetalhe","[IdProd]=" & [IdProd])) AS [R$Alterada], Nz([R$Saida])+Nz([R$Consumo])+Nz([QAlterada]) AS [SaidasR$], tbl_produto.Unid
    FROM tbl_produto
    GROUP BY tbl_produto.IdProd, tbl_produto.DescProd, tbl_produto.Unid
    ORDER BY tbl_produto.DescProd;


    2 consulta para encontrar o CMP


    SELECT cs_EstoqueFinanceiroSintetico.IdProd, cs_EstoqueFinanceiroSintetico.DescProd, [EntradasQ]-[SaidasQ] AS Estoque, [EntradasR$]-[SaidasR$] AS ValorEstoque, [ValorEstoque]/[estoque] AS CMP, cs_EstoqueFinanceiroSintetico.[EntradasR$], cs_EstoqueFinanceiroSintetico.[SaidasR$], cs_EstoqueFinanceiroSintetico.EntradasQ, cs_EstoqueFinanceiroSintetico.SaidasQ, cs_EstoqueFinanceiroSintetico.Unid
    FROM cs_EstoqueFinanceiroSintetico
    GROUP BY cs_EstoqueFinanceiroSintetico.IdProd, cs_EstoqueFinanceiroSintetico.DescProd, cs_EstoqueFinanceiroSintetico.[EntradasR$], cs_EstoqueFinanceiroSintetico.[SaidasR$], cs_EstoqueFinanceiroSintetico.EntradasQ, cs_EstoqueFinanceiroSintetico.SaidasQ, cs_EstoqueFinanceiroSintetico.Unid;





    avatar
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 963
    Registrado : 08/02/2011

    Re: [Resolvido]Consulta lenta

    Mensagem  cafpr em 6/9/2017, 17:47

    alguem pode me ajudar
    avatar
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 963
    Registrado : 08/02/2011

    Re: [Resolvido]Consulta lenta

    Mensagem  cafpr em 6/9/2017, 22:10

    up
    avatar
    cafpr
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 963
    Registrado : 08/02/2011

    Re: [Resolvido]Consulta lenta

    Mensagem  cafpr em 7/9/2017, 17:22

    Bom refiz as consultas onde os cálculos foram separados em mais consultas e assim a "performace" do form EstoqueFinanceiro ficou satisfatório.

      Data/hora atual: 16/11/2018, 10:15