Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Adriano Machado

Relatório Estoque

Recommended Posts

Boa tarde prezados,

 

Preciso gerar um relatório para extrair somente o último saldo por produto em determinada data. Acontece que tem diversos saldos na mesma data. Seria um relatório de estoques. Fiz a seguinte consulta:

 

select  
idprd
,convert(varchar(10),DATAMOVIMENTO,103)
,SALDOFILIAL
,CUSTOMEDFILIAL
,totalfilial
from TRELSLD AS A
where IDPRD=83 

 

Retorno:

ID          Data       Quantidade                              Custo Médio                            Total

83          21/02/2017 8487.0000                               0.1383                                  1173.9731
83          21/02/2017 8486.0000                               0.1383                                  1173.8348
83          21/02/2017 8485.0000                               0.1383                                  1173.6965
83          21/02/2017 8484.0000                               0.1383                                  1173.5582

 

Preciso que retorne apenas a última linha por produto (ID):

 

ID          Data            Quantidade                               Custo Médio                            Total

83          21/02/2017 8484.0000                               0.1383                                  1173.5582

 

Tentei com TOP e MAX, mas não consegui! 

 

Agradeço se alguém puder ajudar.

 

Adriano.

Compartilhar este post


Link para o post
Compartilhar em outros sites

No campo "data" é gravado a data  e hora ?

 

Se sim tente


 

select *
from saldos s1
where s1.data = (select max(s2.data)
                 from saldo s2
                 where s2.id = s1.id)

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem alguma chave sequencial ou campo que "desempate" ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

faz uma sql do tipo

 

select *

from tabela 1 , tabela t2

where t2.sequencial = t1.sequencial-1

 

com tudo em uma linha fica fácil calcular diferenças.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa Tarde, pelo que entendi a coluna "Sequencial" é o campo chave e crescente. se for isso mesmo é só usar o MAX(SEQUENCIAL) que trará somente o ultimo.

 

OSS ... Osu Shinobu ... Persistir sob Pressão

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por 4Unknow
      Fala galerinha beleza, bom vamos lá.
      Eu tenho um site que o conteúdo dele é tudo em uma página só, o menu, quando escolho uma opção ele leva em uma determinada parte do site referente ao menu clicado. Até aqui ok.
      Porém eu instalei um botão para voltar para o topo quando rola o site para baixo, e como sou leigo em Java, notei que parece que tá tendo conflito com o ScrollTop, pois o botão que coloquei para voltar para o topo também tem o scrolltop. Gostaria de fazer funcionar o menu e o botão juntos, pois quando desativo o .js do botão o menu  funciona normal, quando ativo o botão novamente ele para de funcionar.

      Vou deixar o código de ambos aqui.

      .JS do Menu (scroll.min.js)

       
      (function(e){"use strict";var t="ScrollIt",n="1.0.3";var r={upKey:38,downKey:40,easing:"linear",scrollTime:600,activeClass:"active",onPageChange:null,topOffset:0};e.scrollIt=function(t){var n=e.extend(r,t),i=0,s=e("[data-scroll-index]:last").attr("data-scroll-index");var o=function(t){if(t<0||t>s)return;var r=e("[data-scroll-index="+t+"]").offset().top+n.topOffset+1;e("html,body").animate({scrollTop:r,easing:n.easing},n.scrollTime)};var u=function(t){var n=e(t.target).closest("[data-scroll-nav]").attr("data-scroll-nav")||e(t.target).closest("[data-scroll-goto]").attr("data-scroll-goto");o(parseInt(n))};var a=function(t){var r=t.which;if(e("html,body").is(":animated")&&(r==n.upKey||r==n.downKey)){return false}if(r==n.upKey&&i>0){o(parseInt(i)-1);return false}else if(r==n.downKey&&i<s){o(parseInt(i)+1);return false}return true};var f=function(t){if(n.onPageChange&&t&&i!=t)n.onPageChange(t);i=t;e("[data-scroll-nav]").removeClass(n.activeClass);e("[data-scroll-nav="+t+"]").addClass(n.activeClass)};var l=function(){var t=e(window).scrollTop();var r=e("[data-scroll-index]").filter(function(r,i){return t>=e(i).offset().top+n.topOffset&&t<e(i).offset().top+n.topOffset+e(i).outerHeight()});var i=r.first().attr("data-scroll-index");f(i)};e(window).on("scroll",l).scroll();e(window).on("keydown",a);e("body").on("click","[data-scroll-nav], [data-scroll-goto]",function(e){e.preventDefault();u(e)})}})(jQuery)  
      .JS do Botão Back to top (backtotop.js)

       
      jQuery(window).scroll(function(){ if(jQuery(window).scrollTop()<50){ jQuery('#rocketmeluncur').slideUp(500); }else{ jQuery('#rocketmeluncur').slideDown(500); } var ftrocketmeluncur = jQuery("#ft")[0] ? jQuery("#ft")[0] : jQuery(document.body)[0]; var scrolltoprocketmeluncur = $('rocketmeluncur'); var viewPortHeightrocketmeluncur = parseInt(document.documentElement.clientHeight); var scrollHeightrocketmeluncur = parseInt(document.body.getBoundingClientRect().top); var basewrocketmeluncur = parseInt(ftrocketmeluncur.clientWidth); var swrocketmeluncur = scrolltoprocketmeluncur.clientWidth; if (basewrocketmeluncur < 1000) { var leftrocketmeluncur = parseInt(fetchOffset(ftrocketmeluncur)['left']); leftrocketmeluncur = leftrocketmeluncur < swrocketmeluncur ? leftrocketmeluncur * 2 - swrocketmeluncur : leftrocketmeluncur; scrolltoprocketmeluncur.style.left = ( basewrocketmeluncur + leftrocketmeluncur ) + 'px'; } else { scrolltoprocketmeluncur.style.left = 'auto'; scrolltoprocketmeluncur.style.right = '10px'; } }) jQuery('#rocketmeluncur').click(function(){ jQuery("html, body").animate({ scrollTop: '0px',display:'none'},{ duration: 600, easing: 'linear' }); var self = this; this.className += ' '+"launchrocket"; setTimeout(function(){ self.className = 'showrocket'; },800) });

      Ficaria inteiramente grato se alguém pudesse me ajudar nessa.
      Um forte abraço a toda comunidade.


       
    • Por bruno_mlo
      Pessoal to com um site aqui com erro, isso ta atrapalhando outros scripts... Tem o seguinte erro no debug do firefox: $(...).offset(...) is undefined... alguem pode me ajudar????????? vou mandar o trecho do código q da erro
       
      $(document).ready(function(){
      $(window).scroll(function() {
      clearTimeout($.data(this, 'scrollTimer2'));
      $.data(this, 'scrollTimer2', setTimeout(function() {
      var eTop2 = $('section.servicos .banner.personalizado .release').offset().top; //get the offset top of the element
      if(eTop2 - ($(window).scrollTop()+$(window).height()) < 0) {
      $('section.servicos .banner.personalizado .release').addClass("animated bounceIn visibility");
       
      }
      }, 0));
      });
      });
    • Por Alessandro Bodão
      Boa tarde pessoal. Eu estou fazendo um site com o cabeçalho fixo, que ocupa tola a tela inicialmente, e quero que o resto da página fique a baixo e suba por cima do cabeçalho fixo, mas não sei como deixar o resto da página exatamente em baixo da tela, com o margin-top so fica certo na resolução do meu monitor, e com o bottom não funciona. Gostaria que me ajudassem. Obrigado.
    • Por Alessandro Bodão
      Coloquei uma imagem em sima de uma div com a mesma cor dela pra criar um efeito torto ao invés de reto no topo na div, mas sempre fica uma margin de uns 2 ou 3px entre a div e a imagem, ja tendei resolver de muitos jeitos no estilo das divs e da imagem no css, mas nada funciona.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.