111 lines
4.1 KiB
Transact-SQL
111 lines
4.1 KiB
Transact-SQL
-- Preparado para revisión. La instalación requiere autorización independiente.
|
|
-- La configuración se conserva por etapa y nombre de capa del archivo original.
|
|
IF OBJECT_ID(N'dbo.FraccionamientosEtapasGISCapas', N'U') IS NULL
|
|
BEGIN
|
|
CREATE TABLE dbo.FraccionamientosEtapasGISCapas
|
|
(
|
|
CveFraccionamientoEtapa int NOT NULL,
|
|
NombreCapa nvarchar(250) COLLATE Modern_Spanish_CS_AS NOT NULL,
|
|
TipoCapa nvarchar(20) COLLATE Modern_Spanish_CS_AS NOT NULL,
|
|
Color nvarchar(7) COLLATE Modern_Spanish_CS_AS NOT NULL,
|
|
EsVisible bit NOT NULL,
|
|
CveUsuarioModifica int NOT NULL,
|
|
FechaModificacion datetime2 NOT NULL,
|
|
CONSTRAINT PK_FraccionamientosEtapasGISCapas
|
|
PRIMARY KEY (CveFraccionamientoEtapa, NombreCapa),
|
|
CONSTRAINT FK_FraccionamientosEtapasGISCapas_Etapa
|
|
FOREIGN KEY (CveFraccionamientoEtapa)
|
|
REFERENCES dbo.FraccionamientosEtapas (CveFraccionamientoEtapa),
|
|
CONSTRAINT CK_FraccionamientosEtapasGISCapas_Tipo
|
|
CHECK (TipoCapa IN (N'Agua', N'Drenaje', N'Lotificacion', N'Pozos', N'Otros')),
|
|
CONSTRAINT CK_FraccionamientosEtapasGISCapas_Color
|
|
CHECK (LEN(Color) = 7 AND Color COLLATE Latin1_General_BIN2
|
|
LIKE N'#[0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f][0-9A-Fa-f]')
|
|
);
|
|
END;
|
|
GO
|
|
|
|
CREATE OR ALTER PROCEDURE dbo.PA_Fraccionamientos_EtapaGISCapasList
|
|
@CveFraccionamientoEtapa int,
|
|
@CveUsuarioEjecuta int,
|
|
@ErrorMostrar varchar(max) OUTPUT,
|
|
@ErrorTipo int OUTPUT,
|
|
@Return bit OUTPUT
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
SELECT @ErrorMostrar = NULL, @ErrorTipo = 0, @Return = 0;
|
|
BEGIN TRY
|
|
SELECT NombreCapa, TipoCapa, Color, EsVisible
|
|
FROM dbo.FraccionamientosEtapasGISCapas
|
|
WHERE CveFraccionamientoEtapa = @CveFraccionamientoEtapa;
|
|
|
|
SET @Return = 1;
|
|
END TRY
|
|
BEGIN CATCH
|
|
SELECT
|
|
@ErrorMostrar = 'No fue posible consultar la configuración de capas GIS.',
|
|
@ErrorTipo = 1,
|
|
@Return = 0;
|
|
DECLARE @ErrorTecnico nvarchar(2048) = CONCAT(
|
|
'Número: ', ERROR_NUMBER(), '; Procedimiento: ', ERROR_PROCEDURE(),
|
|
'; Línea: ', ERROR_LINE(), '; Detalle: ', ERROR_MESSAGE());
|
|
RAISERROR(N'%s', 10, 1, @ErrorTecnico);
|
|
END CATCH;
|
|
END;
|
|
GO
|
|
|
|
CREATE OR ALTER PROCEDURE dbo.PA_Fraccionamientos_EtapaGISCapasSave
|
|
@CveFraccionamientoEtapa int,
|
|
@NombreCapa nvarchar(250),
|
|
@TipoCapa nvarchar(20),
|
|
@Color nvarchar(7),
|
|
@EsVisible bit,
|
|
@CveUsuarioEjecuta int,
|
|
@ErrorMostrar varchar(max) OUTPUT,
|
|
@ErrorTipo int OUTPUT,
|
|
@Return bit OUTPUT
|
|
AS
|
|
BEGIN
|
|
SET NOCOUNT ON;
|
|
SELECT @ErrorMostrar = NULL, @ErrorTipo = 0, @Return = 0;
|
|
BEGIN TRY
|
|
-- El servicio mantiene la transacción ambiental para proteger este upsert.
|
|
UPDATE dbo.FraccionamientosEtapasGISCapas WITH (UPDLOCK, HOLDLOCK)
|
|
SET TipoCapa = @TipoCapa,
|
|
Color = @Color,
|
|
EsVisible = @EsVisible,
|
|
CveUsuarioModifica = @CveUsuarioEjecuta,
|
|
FechaModificacion = SYSDATETIME()
|
|
WHERE CveFraccionamientoEtapa = @CveFraccionamientoEtapa
|
|
AND NombreCapa = @NombreCapa;
|
|
|
|
IF @@ROWCOUNT = 0
|
|
BEGIN
|
|
INSERT INTO dbo.FraccionamientosEtapasGISCapas
|
|
(
|
|
CveFraccionamientoEtapa, NombreCapa, TipoCapa, Color,
|
|
EsVisible, CveUsuarioModifica, FechaModificacion
|
|
)
|
|
VALUES
|
|
(
|
|
@CveFraccionamientoEtapa, @NombreCapa, @TipoCapa, @Color,
|
|
@EsVisible, @CveUsuarioEjecuta, SYSDATETIME()
|
|
);
|
|
END;
|
|
|
|
SET @Return = 1;
|
|
END TRY
|
|
BEGIN CATCH
|
|
SELECT
|
|
@ErrorMostrar = 'No fue posible guardar la configuración de la capa GIS.',
|
|
@ErrorTipo = 1,
|
|
@Return = 0;
|
|
DECLARE @ErrorTecnico nvarchar(2048) = CONCAT(
|
|
'Número: ', ERROR_NUMBER(), '; Procedimiento: ', ERROR_PROCEDURE(),
|
|
'; Línea: ', ERROR_LINE(), '; Detalle: ', ERROR_MESSAGE());
|
|
RAISERROR(N'%s', 10, 1, @ErrorTecnico);
|
|
END CATCH;
|
|
END;
|
|
GO
|