Fórum migrar minhas stored procedures #26833
26/02/2008
0
Iniciei os trabalhos com Postgre ontem e já estou tendo uma dificuldade imensa, logo de cara.
Preciso migrar minhas stored procedures mas não consigo. Vou postar aqui um exemplo e as demais estão em www.flysoftware.com.br/scripts.rar
Gostaria de ajuda, mesmo que fosse remunerada, para fazer esse trabalho pois como disse no assunto desse post, estou com urgência nisso.
Obrigado e abaixo segue uma das SP´s. A lógica dela é pegar o maior número de um registro, acrescentar 1 e grava na mesma tabela, retornando também o número ao usuário.
SET TERM ^ ;
CREATE PROCEDURE P_MAX_NOSSO_NUMERO (
CONTRATO INTEGER,
PARCELA VARCHAR(15),
E_CEDENTE VARCHAR(30))
RETURNS (
NUMERO NUMERIC(18, 0))
AS
DECLARE VARIABLE AUXILIAR NUMERIC(18, 0);
BEGIN
FOR
SELECT
MAX(NUMERO)
FROM
NOSSO_NUMERO
WHERE
CEDENTE =:E_CEDENTE
INTO :AUXILIAR
DO
BEGIN
NUMERO = AUXILIAR + 1;
INSERT INTO NOSSO_NUMERO(CONTRATO, PARCELA, NUMERO, CEDENTE)
VALUES(:CONTRATO, :PARCELA, :AUXILIAR + 1, :E_CEDENTE);
SUSPEND;
END
END
^
SET TERM ; ^
Preciso migrar minhas stored procedures mas não consigo. Vou postar aqui um exemplo e as demais estão em www.flysoftware.com.br/scripts.rar
Gostaria de ajuda, mesmo que fosse remunerada, para fazer esse trabalho pois como disse no assunto desse post, estou com urgência nisso.
Obrigado e abaixo segue uma das SP´s. A lógica dela é pegar o maior número de um registro, acrescentar 1 e grava na mesma tabela, retornando também o número ao usuário.
SET TERM ^ ;
CREATE PROCEDURE P_MAX_NOSSO_NUMERO (
CONTRATO INTEGER,
PARCELA VARCHAR(15),
E_CEDENTE VARCHAR(30))
RETURNS (
NUMERO NUMERIC(18, 0))
AS
DECLARE VARIABLE AUXILIAR NUMERIC(18, 0);
BEGIN
FOR
SELECT
MAX(NUMERO)
FROM
NOSSO_NUMERO
WHERE
CEDENTE =:E_CEDENTE
INTO :AUXILIAR
DO
BEGIN
NUMERO = AUXILIAR + 1;
INSERT INTO NOSSO_NUMERO(CONTRATO, PARCELA, NUMERO, CEDENTE)
VALUES(:CONTRATO, :PARCELA, :AUXILIAR + 1, :E_CEDENTE);
SUSPEND;
END
END
^
SET TERM ; ^
Brunodelphi
Curtir tópico
+ 0
Responder
Clique aqui para fazer login e interagir na Comunidade :)