Ir para conteúdo
  • 0

Análise Gestão de Estoque


Pedro Abreu
Ir para solução Solucionado por Bruno Abdalla de Souza ,

Pergunta

  • Alunos

Pessoal, 

Por favor, um auxilio!

Estou criando um modelo para gestão de estoque no qual tenho que retirar um relatório do estoque diariamente, este relatório me informa a posição do estoque naquela data. Portanto, o modelo é incrementa, ou seja, todo dia tenho que retirar o relatório no sistema e inserir no modelo. Diante disso, preciso criar, tipo um extrato de movimentação (uma medida que me proporcione a seguinte visão), por exemplo: hoje seria dia 03 então, tenho que comparar essa base com a base do dia 02 e saber quais foram os produtos que entraram, ou seja, as entradas - produtos que não estavam na base no dia 02 mas estão no dia 03, os produtos que  permaneceram, ou seja - produtos que estavam na base no dia 02 e que permaneceram no dia 03, logo como  estoque e os produtos que que saíram, ou seja, estavam na base no dia 02 mas não estão no dia 03.

 

Conto com o empenho e colaboração de todos, muito obrigado!

Link para o comentário
Compartilhar em outros sites

20 respostass a esta questão

Posts Recomendados

  • 0
  • Alunos
  • Solução

Para registrar a última medida realizada

Situacao Estoque = 
   VAR vData = 
       MAX(dCalendario[Data])
   VAR vDataMax = 
       CALCULATE(
           MAX(fVeiculosGeral[Data]),
           ALL(fVeiculosGeral)
       )
   VAR vProduto = 
       MAX(fVeiculosGeral[Placa])
   VAR vQtdeAntes = 
       COUNTROWS(
           FILTER(
               ALLSELECTED(fVeiculosGeral),
               fVeiculosGeral[Data] < vData &&
               fVeiculosGeral[Placa] = vProduto
           )
       )
   VAR vQtdeDepois = 
       COUNTROWS(
           FILTER(
               ALLSELECTED(fVeiculosGeral),
               fVeiculosGeral[Data] > vData &&
               fVeiculosGeral[Placa] = vProduto
           )
       )
RETURN
    IF(
        ISBLANK(vProduto),
        BLANK(),
        IF(
            ISBLANK(vQtdeAntes),
            "Entrada Estoque",
            IF(
                ISBLANK(vQtdeDepois) && vData < vDataMax,
                "Alugado",
                "Estoque"
            )
        )
    )

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

A fórmula no Excel veio com erro #REF. Poderia mandar o arquivo corrigido, por favor?

 

=SE(SE(SE(ÉERROS(PROCV(A2;#REF!;1;0));"Entrada Estoque";"Estoque")="Entrada Estoque";"Entrada Estoque";SE(SE(ÉERROS(PROCV(A2;A3:$A$6255;1;0));"Alugado";"Estoque")="Alugado";"Alugado";"Estoque"))="Entrada Estoque";"Entrada Estoque";SE(B2=HOJE();"Estoque";SE(SE(ÉERROS(PROCV(A2;#REF!;1;0));"Entrada Estoque";"Estoque")="Entrada Estoque";"Entrada Estoque";SE(SE(ÉERROS(PROCV(A2;A3:$A$6255;1;0));"Alugado";"Estoque")="Alugado";"Alugado";"Estoque"))))

 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Veja se é isso o que deseja.

Situacao Estoque = 
    VAR vData = 
        MAX(dCalendario[Date])
    VAR vProduto = 
        MAX(fDados[Produto])
    VAR vQtdeAntes = 
        COUNTROWS(
            FILTER(
                ALL(fDados),
                fDados[COMPETÊNCIA_] < vData && 
                fDados[Produto] = vProduto
            )
        )
    VAR vQtdeDepois = 
        COUNTROWS(
            FILTER(
                ALL(fDados),
                fDados[COMPETÊNCIA_] > vData && 
                fDados[Produto] = vProduto
            )
        )
RETURN
    IF(
        ISBLANK(vProduto),
        BLANK(),
        IF(
            ISBLANK(vQtdeAntes),
            "Entrada Estoque",
            IF(
                ISBLANK(vQtdeDepois),
                "Alugado",
                "Estoque"
            )
        )
    )

 

AnaliseGestaoEstoque.pbix

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Estima Bruno, 

A princípio gostaria de lhe agradecer pelo seu empenho e dedicação, muito obrigado!

Analisando o PBIX, seria essa a solução, porém, precisamos fazer um pequeno ajustes. Inseri um segmentador de datas e observei que na última data, ou seja, no dia atual, lembrando que todo dia eu vou alimentar a base, portanto, a máxima data será o dia atual! O valor que deveria ser estoque está retornando o valor como alugado, ou seja, saída, entretanto, deveria retornar estoque. Caso contrário, não consigo demonstrar a posição atual do estoque.

Obs.: Se você filtrar pelo segmentador das placas, sempre que a placa passou em diversas datas, na última data ela fica como alugado, ou seja, saída, talvez porque não tenha mais datas posteriores para analisar, creio que o ajuste esteja nessa parte.

Vou anexar esse novo PBIX para você analisar. 

Muito obrigado, estou aguardando sua análise.
 

TFA .'.AnaliseGestaoEstoque.pbix

 

image.thumb.png.35e91612c4a5ac3ae092e5ce49a3e3d3.png

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

@Bruno Abdalla de Souza

A lógica é sempre avaliar a data atual, considerando o contexto atual!

Logo, só saberei se o veículo saiu do estoque no próximo dia ou dia seguinte! Portanto, caso seja a data atual, sim, será estoque, mas, terei, também as entradas, portanto, no dia atual eu terei estoque e entrada, na análise do dia seguinte eu conseguirei ver as saídas do dia atual que já não será mais dia atual porque terei outra data. 

Em síntese: hoje dia 08 é a data atual, nesta posição eu conseguirei avaliar as saídas do dia 07 porque estes ativos não estão, não foram identificados na posição do dia 08, mas, tenho que considerar as entradas, ou seja, ativos que não estavam no dia 07 mas estão agora no dia 08. 

Primeira avaliação "Entrada Estoque": Hoje sendo 08 tenho que avaliar o dia anterior, dia 05, logo, se o ativo não estava no dia 05 e está no dia 08 ele é entrada, ou seja, "Entrada Estoque";
Segunda avaliação "Estoque": Hoje sendo 08 tenho que avaliar o dia anterior, dia 05, logo, se o ativo estava no dia 05, anterior, e permaneceu no dia 08 ele será "Estoque";
Terceira avaliação "Alugado": Hoje sendo 08 tenho que avaliar o dia anterior, dia 05, e se o ativo estava no dia 05 e não está mais no dia 08 é saída, ou seja, "Alugado".

A sua medida, pelo que observei, está quase completa, precisa apenas fazer um ajuste na data atual para entender a avaliação correta do estoque, pois, me parece que está comparando o alugado considerando a data posterior a atual, como não há data, está entendendo tudo como saída. 

Link para o comentário
Compartilhar em outros sites

  • 0
  • Alunos

Veja agora

Situacao Estoque = 
    VAR vData = 
        MAX(dCalendario[Date])
    VAR vDataMax = 
        MAXX(
            ALL(dCalendario[Date]),
            [Date]
        )
    VAR vProduto = 
        MAX(fDados[Produto])
    VAR vQtdeAntes = 
        COUNTROWS(
            FILTER(
                ALL(fDados),
                fDados[COMPETÊNCIA_] < vData && 
                fDados[Produto] = vProduto
            )
        )
    VAR vQtdeDepois = 
        COUNTROWS(
            FILTER(
                ALL(fDados),
                fDados[COMPETÊNCIA_] > vData && 
                fDados[Produto] = vProduto
            )
        )
RETURN
    IF(
        ISBLANK(vProduto),
        BLANK(),
        IF(
            ISBLANK(vQtdeAntes),
            "Entrada Estoque",
            IF(
                ISBLANK(vQtdeDepois) && vData < vDataMax,
                "Alugado",
                "Estoque"
            )
        )
    )

 

AnaliseGestaoEstoque.pbix

Link para o comentário
Compartilhar em outros sites

Faça login para comentar

Você vai ser capaz de deixar um comentário após fazer o login



Entrar Agora
×
×
  • Criar Novo...