LOOP EM STOREPROCEDURE
BOA TARDE
Como ficaria uma procedure para copiar os registros excluidos para uma nova tabela.
tipo eu passar como parametro o numero do PDV e o nome de quem está excluindo.
e na procedure fazer um select pelo numero do PDV e adiconar em uma outra tabela todos os registros
execute Procedure ExcluirVEnda(PDV,UsuarioLogado)
Como ficaria uma procedure para copiar os registros excluidos para uma nova tabela.
tipo eu passar como parametro o numero do PDV e o nome de quem está excluindo.
e na procedure fazer um select pelo numero do PDV e adiconar em uma outra tabela todos os registros
execute Procedure ExcluirVEnda(PDV,UsuarioLogado)
acho q isso pode te ajudar
ou um inicio
http://www.superasp.com.br/paginas_exibir_detalhes.asp?dep=0,0&id=62
abç
ou um inicio
http://www.superasp.com.br/paginas_exibir_detalhes.asp?dep=0,0&id=62
abç
Pq não usa uma Trigger?
aqui no exemplo tenho uma stored com loop,
nela eu precorro uma tabela e chamo outra stord para tratar os dados.
voce tbm pode fazer como o Marcos falou, chamar por um trigger.
nela eu precorro uma tabela e chamo outra stord para tratar os dados.
voce tbm pode fazer como o Marcos falou, chamar por um trigger.
Resolvi como segue abaixo, testado e funcionando.
CREATE PROCEDURE SP_TBLITENSEXCLU(
pPDV D_PDV,
pDATAEXCLU D_DATA,
pHORAEXCLU D_HORA,
pAUTOR D_OPERADOR
)
AS
DECLARE VARIABLE pID CAMPOID;
DECLARE VARIABLE pCODIGOPRO D_CODIGOPRODUTO;
DECLARE VARIABLE pUNIDADE D_UNIDADE;
DECLARE VARIABLE pQTDE D_QUANT;
DECLARE VARIABLE pVALOR D_VALOR;
DECLARE VARIABLE pQTDEDEVO D_QUANT;
DECLARE VARIABLE pTOTAL D_VALOR;
BEGIN
for SELECT CODIGOPRO,UNIDADE,QTDE,
VALOR,QTDEDEVO,TOTAL from TBLITENS WHERE PDV = :pPDV
into :pCODIGOPRO ,:pUNIDADE ,:pQTDE ,
:pVALOR ,:pQTDEDEVO ,:pTOTAL
DO
BEGIN INSERT INTO TBLITENSEXCLU
(PDV,CODIGOPRO,UNIDADE,QTDE,
VALOR,QTDEDEVO,TOTAL,DATAEXCLU,
HORAEXCLU,AUTOR)
values(:pPDV ,:pCODIGOPRO ,:pUNIDADE ,:pQTDE ,
:pVALOR ,:pQTDEDEVO ,:pTOTAL,
:pDATAEXCLU,:pHORAEXCLU,
:pAUTOR);
END
END
CREATE PROCEDURE SP_TBLITENSEXCLU(
pPDV D_PDV,
pDATAEXCLU D_DATA,
pHORAEXCLU D_HORA,
pAUTOR D_OPERADOR
)
AS
DECLARE VARIABLE pID CAMPOID;
DECLARE VARIABLE pCODIGOPRO D_CODIGOPRODUTO;
DECLARE VARIABLE pUNIDADE D_UNIDADE;
DECLARE VARIABLE pQTDE D_QUANT;
DECLARE VARIABLE pVALOR D_VALOR;
DECLARE VARIABLE pQTDEDEVO D_QUANT;
DECLARE VARIABLE pTOTAL D_VALOR;
BEGIN
for SELECT CODIGOPRO,UNIDADE,QTDE,
VALOR,QTDEDEVO,TOTAL from TBLITENS WHERE PDV = :pPDV
into :pCODIGOPRO ,:pUNIDADE ,:pQTDE ,
:pVALOR ,:pQTDEDEVO ,:pTOTAL
DO
BEGIN INSERT INTO TBLITENSEXCLU
(PDV,CODIGOPRO,UNIDADE,QTDE,
VALOR,QTDEDEVO,TOTAL,DATAEXCLU,
HORAEXCLU,AUTOR)
values(:pPDV ,:pCODIGOPRO ,:pUNIDADE ,:pQTDE ,
:pVALOR ,:pQTDEDEVO ,:pTOTAL,
:pDATAEXCLU,:pHORAEXCLU,
:pAUTOR);
END
END
O interessante seria uma triggers, porem não sei como passar o autor da exclusão.
CREATE PROCEDURE SP_TBLITENSEXCLU(
pPDV D_PDV,
pDATAEXCLU D_DATA,
pHORAEXCLU D_HORA,
pAUTOR D_OPERADOR -- iso aqui não fica na tabela e sim em uma string public
CREATE PROCEDURE SP_TBLITENSEXCLU(
pPDV D_PDV,
pDATAEXCLU D_DATA,
pHORAEXCLU D_HORA,
pAUTOR D_OPERADOR -- iso aqui não fica na tabela e sim em uma string public
Tópico encerrado , respostas não são mais permitidas