Ir para conteúdo
Seja Membro VIP - Remova Banners de Propagandas, Tenha Liberado Qualquer Download, Além de Acessos em Áreas Exclusivas!! ×
Quer acesso a todas as Áreas do Fórum, até aquelas só para membros VIPs? Também quer poder baixar qualquer ARQUIVO? ×

Como Disponibilizo Uma Procedure No Relatório Rm


Posts Recomendados


  • Tópicos Que Criei:  1
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  1
  • Conteúdo/Dia:  0.00
  • Reputação:   0
  • Pontos/Conquistas:  15
  • Conteúdo Resolvido:  0
  • Dias Ganho:  0
  • Status:  Offline

Boa tarde,

Criei uma procedure mas não consigo que ela seja executada pelo relatório.

Ela tem 3 campos que uso como filtro. Ja estão no relatório como parametros.

E UM DELETE E UM INSERT.

Somente isso, alguem pode me ajudar?

CREATE OR REPLACE PROCEDURE SP_DPCPLOGCALCULO

AS

ESPELHO#1     NUMBER(5);

ESPELHO#2     VARCHAR(4);

ESPELHO#3     NUMBER(2);

ESPELHO#4     NUMBER(2);

P_CODCOLIGADA NUMBER(5);

P_ANOCOMP     VARCHAR(4);

P_MESCOMP     NUMBER(2);

P_NROPERIODO NUMBER(2);

BEGIN

--         P_CODCOLIGADA :=ESPELHO#1;

--         P_ANOCOMP     :=ESPELHO#2;

--         P_MESCOMP     :=ESPELHO#3;

--         P_NROPERIODO :=ESPELHO#4;

/*Inicio da limpeza do Conteudo da Tabela */

DELETE FROM ZDPCPLOGFUNCIONARIO

WHERE ZDPCPLOGFUNCIONARIO.EXECID IN (SELECT PFPERFF.EXECID FROM PFPERFF

                                     WHERE PFPERFF.CODCOLIGADA =P_CODCOLIGADA AND

                                     PFPERFF.ANOCOMP     =P_ANOCOMP     AND

                                     PFPERFF.MESCOMP     =P_MESCOMP     AND

                                     PFPERFF.NROPERIODO =P_NROPERIODO );

                                     COMMIT;

/*Fim da limpeza do Conteudo da Tabela */

/*Inicio do INSERT da tabela produção para a tabela customizada */

INSERT INTO ZDPCPLOGFUNCIONARIO

SELECT

PLOGFUNCIONARIO.EXECID,

PLOGFUNCIONARIO.CHAPA,

PLOGFUNCIONARIO.STATUS,

TO_LOB(PLOGFUNCIONARIO.MENSAGEMERRO),

PLOGFUNCIONARIO.RECCREATEDBY,

PLOGFUNCIONARIO.RECCREATEDON,

PLOGFUNCIONARIO.RECMODIFIEDBY,

PLOGFUNCIONARIO.RECMODIFIEDON

FROM PLOGFUNCIONARIO

INNER JOIN PFPERFF ON PFPERFF.EXECID = PLOGFUNCIONARIO.EXECID

WHERE PFPERFF.CODCOLIGADA=P_CODCOLIGADA

AND PFPERFF.ANOCOMP=P_ANOCOMP AND

PFPERFF.MESCOMP=P_MESCOMP AND

PFPERFF.NROPERIODO=P_NROPERIODO;

COMMIT;

END;

Link para comentar
Compartilhar em outros sites


  • Tópicos Que Criei:  6
  • Tópicos/Dia:  0.00
  • Meu Conteúdo:  290
  • Conteúdo/Dia:  0.06
  • Reputação:   17
  • Pontos/Conquistas:  1.523
  • Conteúdo Resolvido:  0
  • Dias Ganho:  12
  • Status:  Offline

Qual é a ideia? através do relatório alterar/excluir dados do banco?

é um pouco perigoso com relação a segurança, mas se for isso não será assim!

vc cria esta proc no seu banco:

create FUNCTION Z__DPCPLOGCALCULO(@P_CODCOLIGADA NUMERIC(5),@P_ANOCOMP VARCHAR(4),@P_MESCOMP NUMERIC(2), @P_NROPERIODO NUMERIC(2))
RETURNS @Tlb TABLE(MSG VARCHAR(100))
AS
begin
DELETE FROM ZDPCPLOGFUNCIONARIO
WHERE ZDPCPLOGFUNCIONARIO.EXECID IN (SELECT PFPERFF.EXECID FROM PFPERFF
								 WHERE PFPERFF.CODCOLIGADA =@P_CODCOLIGADA AND
								 PFPERFF.ANOCOMP	 =@P_ANOCOMP	 AND
								 PFPERFF.MESCOMP	 =@P_MESCOMP	 AND
								 PFPERFF.NROPERIODO =@P_NROPERIODO )
INSERT INTO ZDPCPLOGFUNCIONARIO
SELECT PLOGFUNCIONARIO.EXECID,PLOGFUNCIONARIO.CHAPA,PLOGFUNCIONARIO.STATUS,TO_LOB(PLOGFUNCIONARIO.MENSAGEMERRO),PLOGFUNCIONARIO.RECCREATEDBY,PLOGFUNCIONARIO.RECCREATEDON,PLOGFUNCIONARIO.RECMODIFIEDBY,PLOGFUNCIONARIO.RECMODIFIEDON
FROM PLOGFUNCIONARIO
INNER JOIN PFPERFF ON PFPERFF.EXECID = PLOGFUNCIONARIO.EXECID
WHERE PFPERFF.CODCOLIGADA=P_CODCOLIGADA
AND PFPERFF.ANOCOMP=@P_ANOCOMP AND
PFPERFF.MESCOMP=@P_MESCOMP AND
PFPERFF.NROPERIODO=@P_NROPERIODO
RETURN
end

e cadastra uma consulta SQL

select * from Z__DPCPLOGCALCULO(ESPELHO#1, ESPELHO#2, ESPELHO#3, ESPELHO#4)

e coloca a consulta em seu relatório ou pode até apenas executá-la

Editado por João Rodrigo
Link para comentar
Compartilhar em outros sites

Participe da conversa

Você pode postar agora, e se registrar mais tarde. Se você tiver uma conta, faça o login agora para postar com sua conta.

Visitante
Responder esse tópico

×   Você colou conteúdo com formatação.   Remover formatação

  Only 75 emoji are allowed.

×   Seu link foi automaticamente inserido no corpo do post.   Exibir como um link

×   Seu conteúdo anterior foi restaurado.   Limpar conteúdo do editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Criar Novo...

Informação Importante

Usando este site, você concorda com nossos Termos de Uso e nossa Política de Privacidade.