Converter procedimento de Interbase para MYSQL
Meus Amigos,
Como posso converter o procedimento abaixo em interbase para MYSQL?Podem me ajudar?
Agradeço a ajuda!
CREATE PROCEDURE SP_SALDOANT
(
CONTACOR INTEGER,
DATALIMITE TIMESTAMP,
TIPO CHAR(1) CHARACTER SET ISO8859_1
)
RETURNS
(
SALDO NUMERIC(9, 2)
)
AS
BEGIN EXIT; END ^
ALTER PROCEDURE SP_SALDOANT
(
CONTACOR INTEGER,
DATALIMITE TIMESTAMP,
TIPO CHAR(1) CHARACTER SET ISO8859_1
)
RETURNS
(
SALDO NUMERIC(9, 2)
)
AS
declare variable DEBITOS Numeric(9,2);
declare variable CREDITOS Numeric(9,2);
begin
SALDO = 0;
DEBITOS = 0;
CREDITOS = 0;
/* SALDO REAL, SOMANDO TUDO INDEPENDENTE DE COMPENSADO OU NAO */
if (TIPO = ´R´) then
begin
/* ACUMULAR DEBITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´D´) AND (CCORRENTE = :CONTACOR)
INTO :DEBITOS;
/* ACUMULAR CREDITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´C´) AND (CCORRENTE = :CONTACOR)
INTO :CREDITOS;
end
/* SOMENTE EM VALORES JA COMPENSADOS */
if (TIPO = ´F´) then
begin
/* ACUMULAR DEBITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´D´) AND (CCORRENTE = :CONTACOR) AND (COMPENSADO IS NOT NULL)
INTO :DEBITOS;
/* ACUMULAR CREDITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´C´) AND (CCORRENTE = :CONTACOR) AND (COMPENSADO IS NOT NULL)
INTO :CREDITOS;
end
if (CREDITOS IS NULL) then
CREDITOS = 0;
if (DEBITOS IS NULL) then
DEBITOS = 0;
SALDO = (CREDITOS-DEBITOS);
SUSPEND;
Como posso converter o procedimento abaixo em interbase para MYSQL?Podem me ajudar?
Agradeço a ajuda!
CREATE PROCEDURE SP_SALDOANT
(
CONTACOR INTEGER,
DATALIMITE TIMESTAMP,
TIPO CHAR(1) CHARACTER SET ISO8859_1
)
RETURNS
(
SALDO NUMERIC(9, 2)
)
AS
BEGIN EXIT; END ^
ALTER PROCEDURE SP_SALDOANT
(
CONTACOR INTEGER,
DATALIMITE TIMESTAMP,
TIPO CHAR(1) CHARACTER SET ISO8859_1
)
RETURNS
(
SALDO NUMERIC(9, 2)
)
AS
declare variable DEBITOS Numeric(9,2);
declare variable CREDITOS Numeric(9,2);
begin
SALDO = 0;
DEBITOS = 0;
CREDITOS = 0;
/* SALDO REAL, SOMANDO TUDO INDEPENDENTE DE COMPENSADO OU NAO */
if (TIPO = ´R´) then
begin
/* ACUMULAR DEBITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´D´) AND (CCORRENTE = :CONTACOR)
INTO :DEBITOS;
/* ACUMULAR CREDITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´C´) AND (CCORRENTE = :CONTACOR)
INTO :CREDITOS;
end
/* SOMENTE EM VALORES JA COMPENSADOS */
if (TIPO = ´F´) then
begin
/* ACUMULAR DEBITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´D´) AND (CCORRENTE = :CONTACOR) AND (COMPENSADO IS NOT NULL)
INTO :DEBITOS;
/* ACUMULAR CREDITOS */
SELECT SUM(VALOR) FROM MOVIMENTACAO
WHERE (DATA < :DATALIMITE) AND (DOUC = ´C´) AND (CCORRENTE = :CONTACOR) AND (COMPENSADO IS NOT NULL)
INTO :CREDITOS;
end
if (CREDITOS IS NULL) then
CREDITOS = 0;
if (DEBITOS IS NULL) then
DEBITOS = 0;
SALDO = (CREDITOS-DEBITOS);
SUSPEND;
Thaita
Curtidas 0