Sandro AS Posted October 8, 2011 Report Share Posted October 8, 2011 Como posso atualziar o saldo do meu estoque usando instrução sql? Ou seja toda vez que for lançado um produto na tabela item deve ser subtraido na tabelaProdudo assim:PRO_ESTOQUE= PRO_ESTOQUE - ITE_QTDporém com instruções sql.tabelas, Produdo e ItemESTRUTURAS ITEM : "ITE_MOV" INTEGER NOT NULL,"ITE_PROD" INTEGER NOT NULL,"ITE_VALOR" NUMERIC(15, 2),"ITE_QTD" INTEGER NOT NULL,"ITE_USUARIO" INTEGER NOT NULL,"ITE_CADASTRO" TIMESTAMP NOT NULL,PRIMARY KEY ("ITE_MOV", "ITE_PROD")ESTRUTURA PRODUTO: "PRO_CODIGO" INTEGER NOT NULL,"PRO_DESCRICAO" VARCHAR(50) NOT NULL,"PRO_FORNEC" INTEGER,"PRO_FAB" INTEGER,"PRO_ESTOQUE" INTEGER,"PRO_MINIMO" INTEGER,"PRO_MAXIMO" INTEGER,"PRO_TIPO" VARCHAR(40),"PRO_TIPOCAD" VARCHAR(20),"PRO_CUSTO" DECIMAL(7, 2),"PRO_VENDA" DECIMAL(7, 2),"PRO_DATCAD" TIMESTAMP,"PRO_ATIVO" VARCHAR(3),"PRO_OBS" BLOB SUB_TYPE TEXT SEGMENT SIZE 80,"PRO_UM" VARCHAR(10),"PRO_ALTERACAO" TIMESTAMP,"PRO_CHAVE" VARCHAR(15),PRIMARY KEY ("PRO_CODIGO") Quote Link to comment Share on other sites More sharing options...
0 flavioavilela Posted October 14, 2011 Report Share Posted October 14, 2011 (edited) se entendi o que precisa, você pode dar um update na tabela de produtos, setando o campo Estoque := Estoque + ou - Valor_Desejado.coloca esse código dentro de uma query.exemplo:query.close; query.clear; query.add('update Produto set Estoque = :Estoque where Pro_Codigo = :Codigo'); Parameters.ParamByName('Estoque').AsFloat:= Estoque_Atual + ou - Quantidade; Parameters.ParamByName('Codigo').AsInteger:= CODIGO DO PRODUTO DESEJADO; query.execSQL; Edited October 14, 2011 by flavioavilela Quote Link to comment Share on other sites More sharing options...
Question
Sandro AS
Como posso atualziar o saldo do meu estoque usando instrução sql? Ou seja toda vez que for lançado um produto na tabela item deve ser subtraido na tabela
Produdo assim:
PRO_ESTOQUE= PRO_ESTOQUE - ITE_QTD
porém com instruções sql.
tabelas, Produdo e Item
ESTRUTURAS ITEM : "ITE_MOV" INTEGER NOT NULL,
"ITE_PROD" INTEGER NOT NULL,
"ITE_VALOR" NUMERIC(15, 2),
"ITE_QTD" INTEGER NOT NULL,
"ITE_USUARIO" INTEGER NOT NULL,
"ITE_CADASTRO" TIMESTAMP NOT NULL,
PRIMARY KEY ("ITE_MOV", "ITE_PROD")
ESTRUTURA PRODUTO: "PRO_CODIGO" INTEGER NOT NULL,
"PRO_DESCRICAO" VARCHAR(50) NOT NULL,
"PRO_FORNEC" INTEGER,
"PRO_FAB" INTEGER,
"PRO_ESTOQUE" INTEGER,
"PRO_MINIMO" INTEGER,
"PRO_MAXIMO" INTEGER,
"PRO_TIPO" VARCHAR(40),
"PRO_TIPOCAD" VARCHAR(20),
"PRO_CUSTO" DECIMAL(7, 2),
"PRO_VENDA" DECIMAL(7, 2),
"PRO_DATCAD" TIMESTAMP,
"PRO_ATIVO" VARCHAR(3),
"PRO_OBS" BLOB SUB_TYPE TEXT SEGMENT SIZE 80,
"PRO_UM" VARCHAR(10),
"PRO_ALTERACAO" TIMESTAMP,
"PRO_CHAVE" VARCHAR(15),
PRIMARY KEY ("PRO_CODIGO")
Link to comment
Share on other sites
1 answer to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.