Pesquisar na Comunidade
Mostrando resultados para as tags ''estoque''.
Encontrado 4 registros
-
Olá pessoal, Sou novato aqui no fórum. Estou tentando fazer a trigger abaixo, mas está dando erro no primeiro SET, como posso corrigir? CREATE DEFINER = CURRENT_USER TRIGGER `F001_ESTOQUE_ALTERAR` AFTER INSERT ON `F001_ESTOQUE` FOR EACH ROW BEGIN SET NEW.SALDOANTERIOR = (CASE WHEN NEW.ID = (SELECT MIN(X.ID) FROM F001_ESTOQUE X WHERE X.IDPRODUTO = NEW.IDPRODUTO LIMIT 1) THEN IFNULL(NEW.SALDOANTERIOR, 0) ELSE IFNULL((((SELECT IFNULL(X.SALDOANTERIOR, 0) FROM F001_ESTOQUE X WHERE X.IDPRODUTO = NEW.IDPRODUTO AND X.ID < NEW.ID ) + IFNULL(NEW.ENTRADA, 0)) - IFNULL(NEW.SAIDA, 0)), 0)); SET NEW.SALDOATUAL = ((CASE WHEN NEW.SALDOANTERIOR IS NULL THEN 0 ELSE NEW.SALDOANTERIOR END) + (CASE WHEN NEW.ENTRADA IS NULL THEN 0 ELSE NEW.ENTRADCASE WHEN A.ID = (SELECT MIN(X.ID) FROM F001_ESTOQUE X WHERE X.IDPRODUTO = A.IDPRODUTO LIMIT 1) THEN IFNULL(A.SALDOANTERIOR, 0) ELSE IFNULL((((SELECT IFNULL(X.SALDOANTERIOR, 0) FROM F001_ESTOQUE X WHERE X.IDPRODUTO = A.IDPRODUTO AND X.ID < A.ID ) + IFNULL(A.ENTRADA, 0)) - IFNULL(A.SAIDA, 0)), 0))A END)) - (CASE WHEN NEW.SAIDA IS NULL THEN 0 ELSE NEW.SAIDA END); SET NEW.VALORSALDOATUAL = ((CASE WHEN NEW.VALORANTERIOR IS NULL THEN 0 ELSE NEW.VALORANTERIOR END) + (CASE WHEN NEW.VALORENTRADA IS NULL THEN 0 ELSE NEW.VALORENTRADA END)) - (CASE WHEN NEW.VALORSAIDA IS NULL THEN 0 ELSE NEW.VALORSAIDA END); IF(NEW.IDPRODUTO = 0) THEN SET NEW.IDPRODUTO = NULL; END IF; IF(NEW.IDDETALHEPEDIDO = 0) THEN SET NEW.IDDETALHEPEDIDO = NULL; END IF; IF(NEW.IDUSUARIOALTERA = 0) THEN SET NEW.IDUSUARIOALTERA = NULL; END IF; UPDATE E005_PRODUTOS SET E005_PRODUTOS.QUANTESTOQUE = NEW.SALDOATUAL WHERE E005_PRODUTOS.ID = NEW.ID; END; Grato, Ilano
-
Calcular Saldo de Estoque por movimentações
uma questão postou Leudyston Dantas Lógica de Programação
Olá amigos, estou com um dúvida de como faço para acumular o saldo do estoque por ano, já que no meu script não consigo pegar o saldo de dezembro para continuar no em janeiro do ano seguinte. Abaixo mando um print do resultado da consulta e o código. PS. Se tiver como melhorar a performace desse código, também será uma ótima dica. select t.ano ,t.mes ,i.grupo , sum(f.mov_estoque) , (select sum(fm.mov_estoque) from mov.fmovimentos fm left join mov.dtempo t1 on t1.idtempo = fm.iddata_movimento left join mov.ditens i1 on i1.iditem = fm.iditem left join mov.dlojas l1 on l1.idloja = fm.idloja where t1.ano <= t.ano and t1.mes <= t.mes and i1.grupo = i.grupo AND l1.idloja in (1) and i1.grupo like '202%' ) as saldo from mov.fmovimentos f left join mov.ditens i on i.iditem = f.iditem left join mov.dtempo t on t.idtempo = f.iddata_movimento left join mov.dlojas l on l.idloja = f.idloja where i.grupo LIKE '202%' and l.idloja in (1) and t.ano in (2000,2001) GROUP BY t.mes, t.ano,i.grupo order by t.ano,t.mes -
galera tenho um algoritmo para cadastra produtos, e vender para os clientes,mostrar no final cada produto atualizado,mas está dando erro desde já agradeço segue o programa #include <stdio.h> #include <stdlib.h> int main() { int Vet_Vendas_Cliente[10]; int Vet_Vendas_Produto[10]; int Vet_Vendas_Estoque[10]; int V_Qtde_Vendida[3]; int Vet_Clientes_Cod[3]; int Vet_Clientes_Nome[3]; int Vet_Produtos_Cod[3]; int Vet_Produtos_Nome[3]; int Vet_Produtos_Estoque[3]; int I, x, Cod_Cliente, Cod_Produto, Produto_Qtde, N, Y; char Cliente_OK, Produto_OK, Produto_Nome; //Primeiro insere os produtos e quantidades for (I=1;I<4;I++) { printf (" Digite o codigo do Produto... " + I); scanf ("%d",&Vet_Produtos_Cod[I -1]); printf (" Digite o Nome do Produto.. " + I); scanf ("%s",& Vet_Produtos_Nome[I -1]); printf (" Digite a Quantidade do Produto... " + I); scanf ("%d",&Vet_Produtos_Estoque[I -1]); } //Agora insiro os clientes for (I=1;I<4;I++) { printf (" Digite o codigo do Cliente... " + I); scanf ("%d",& Vet_Clientes_Cod[I -1]); printf (" Digite o Nome do Produto.. " + I); scanf ("%s",& Vet_Clientes_Nome[I -1]); printf (" Digite quantos produtos deseja..."); scanf ("%d",&V_Qtde_Vendida[I -1]); } //Calcula o valor do estoque de cada produto for (x=1;x<4;x++) { if (Cod_Produto = Vet_Produtos_Cod[ x - 1] ) (Vet_Produtos_Estoque[ x -1] = Vet_Produtos_Estoque[ x - 1 ] - V_Qtde_Vendida[I-1]); } //Mostra o codigo, nome e quantidade do produto em tela Cod_Produto=0; Produto_Nome=0; Produto_Qtde=0; for (I=1;I<4;I++) { (Cod_Produto = Vet_Produtos_Cod[ I - 1 ] ); (Produto_Nome = Vet_Produtos_Nome[ I - 1]); (Produto_Qtde =V_Qtde_Vendida[I-1]); printf (" Codigo do Produto %.2d\n",+ Cod_Produto); printf (" Nome do produto \n", + Produto_Nome); printf (" Qtde do Produto %.2d\n", + Produto_Qtde); } system("pause"); }
-
Boa tarde, Amigos. Estou há muito tempo tentando descobrir algo sobre a ferramenta que integra os veiculos de um determinado site, aos portais de anuncios, tais como: Webmotors, Icarros, Olx, Etc. Não encontro nada na Internet que me direcione.