Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Instrucao SQL - Saldo Anterior + Movimentos
Message
From
03/04/2002 17:06:26
 
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
00639850
Message ID:
00640623
Views:
15
This message has been marked as a message which has helped to the initial question of the thread.
Não tenho bem a certeza de ter compreendido a questão (os saldos referem-se ao valor ou à quantidade? saídas são quantidades/valores negativos?...). Assumindo que os saldos se referem à quantidade dos produtos e que a saída é representada por valores negativos, então posso sugerir
ldAlfa = {^2002-04-01}
ldOmega = {^2002-04-30}

SELECT pro.codigo, pro.descricao, SUM(IIF(ped.data < ldAlfa,itm.quantidade,0)) AS saldo_anterior, ;
  SUM(IIF(BETWEEN(ped.data,ldAlfa,ldOmega) AND itm.quantidade > 0,itm.quantidade,0)) AS entradas, ;
  SUM(IIF(BETWEEN(ped.data,ldAlfa,ldOmega) AND itm.quantidade < 0,ABS(itm.quantidade),0)) AS saidas, ;
  SUM(itm.quantidade) AS saldo_actual ;
 FROM pedidos_itens itm ;
  INNER JOIN pedidos ped ON ped.codigo = itm.cod_pedido ;
  INNER JOIN produtos pro ON pro.codigo = itm.cod_produto ;
 WHERE ped.data <= ldOmega ;
 GROUP BY pro.codigo ;
 INTO CURSOR curRelatorio
----------------------------------
António Tavares Lopes
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform