EXEMPLO_1212310
Database
Tables
(current)
Columns
Constraints
Relationships
Orphan Tables
Anomalies
Routines
SPC_GETCOLIGADABYCONTA
Parameters
Name
Type
Mode
@CG
char
IN
@CONTA
varchar
IN
@COLIGADA
smallint
IN
@RESULTADO
smallint
INOUT
Definition
/* RM Sistemas RM Saldus Tradução da função "GetColigadaByConta" da SDFuncComp.pas para Stored Procedure MSSQL */ CREATE PROCEDURE SPC_GETCOLIGADABYCONTA @CG CHAR, @CONTA VARCHAR(40), @COLIGADA SMALLINT, @RESULTADO SMALLINT OUTPUT AS BEGIN DECLARE @COLIGADATMP SMALLINT, @ACESSAGLOBAIS BIT, @ACHEI BIT, @APONTADORC CURSOR, @APONTADORG CURSOR SET @RESULTADO = @COLIGADA SET @ACHEI = 0 SET @APONTADORC = CURSOR FOR SELECT CODCOLIGADA FROM CCONTA WHERE CODCONTA = @CONTA ORDER BY CODCOLIGADA SET @APONTADORG = CURSOR FOR SELECT CODCOLIGADA FROM CGERENCIA WHERE CODCONTA = @CONTA ORDER BY CODCOLIGADA EXEC SPC_ACESSAGLOBAIS @COLIGADA,@ACESSAGLOBAIS OUTPUT IF @ACESSAGLOBAIS = 1 BEGIN IF @CG = 'C' BEGIN OPEN @APONTADORC FETCH NEXT FROM @APONTADORC INTO @COLIGADATMP WHILE (@@FETCH_STATUS = 0) AND (@ACHEI = 0) BEGIN IF (@COLIGADATMP = 0) OR (@COLIGADATMP = @COLIGADA) BEGIN SET @ACHEI = 1 SET @RESULTADO = @COLIGADATMP END FETCH NEXT FROM @APONTADORC INTO @COLIGADATMP END CLOSE @APONTADORC END ELSE BEGIN OPEN @APONTADORG FETCH NEXT FROM @APONTADORG INTO @COLIGADATMP WHILE (@@FETCH_STATUS = 0) AND (@ACHEI = 0) BEGIN IF (@COLIGADATMP = 0) OR (@COLIGADATMP = @COLIGADA) BEGIN SET @ACHEI = 1 SET @RESULTADO = @COLIGADATMP END FETCH NEXT FROM @APONTADORG INTO @COLIGADATMP END CLOSE @APONTADORG END END DEALLOCATE @APONTADORC DEALLOCATE @APONTADORG END