dbo.Contravenciones_clasificacion

Description

Properties

Name Value
ANSI Nulls ON

True

Quoted Identifier ON

True

Encrypted

False

Execute As
Assembly

SQL Script

Copy
SET QUOTED_IDENTIFIER, ANSI_NULLS ON
GO
CREATE OR ALTER PROCEDURE dbo.Contravenciones_clasificacion
AS
BEGIN
 SET NOCOUNT ON;

/*
select * from contravenciones_data where codigo_motivo_acta > 0 order by codigo_motivo_acta



select distinct codigo_motivo_acta,motivo_acta from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Carga y descarga%'
order by codigo_motivo_acta



PARAMETRO DE INFRACCIONES


ROJO -- 1 muy grave - 5 graves - 15 medias - 40 Leves
AMARILLO -- 1 grave - 8 medias - 20 leves
VERDE -- EL RESTO




N° INFRACCIÓN COMETIDA FALTA 1 muy grave - 5 graves - 15 medias - 40 Leves
1 Carga y descarga fuera de hora/lugar prohibido LEVE
2 Carriles o vías prohíbidas (tránsito rápido,diferenciado,metrobus) MEDIA 1 grave - 8 medias - 20 leves 
3 Circular por Zona/Carril o c/peso/poten./tamaño Prohibido MEDIA
4 Conducir utilizando Celular / Auriculares / Reproductor de video MEDIA resto
5 Conductor redactando/enviando mensaje de texto MEDIA
6 Estac. lugar asc/desc pasajeros (Particular/Moto) LEVE
7 Estac. lugar prohib./forma indebida/antirreglamentaria LEVE
8 Estac. lugar reservado(rampa/discap/paradas/garage/otros LEVE
9 Estac. lugar sin ticket/hora vencida LEVE
10 Estacionamiento en areas peatonales LEVE
11 Exceso Velocidad hasta 10Km/h de la Máxima permitida para el tipo de arteria LEVE
12 Exceso Velocidad hasta 20Km/h de la Máxima permitida en vías rápidas LEVE
13 Exceso Velocidad más 20Km de la Máxima permitida para el tipo de arteria LEVE
14 Exceso Velocidad más de 40Km/h de la Máxima permitida en vías rápidas GRAVE
15 Forzar barrera/evadir pago peaje autopista LEVE
16 Girar a izquierda/derecha en lugar prohibido LEVE
17 No Cumplir Normas/requisitos Vehículos de Transporte sin habilitación LEVE
18 No respetar Senda Peatonal/Paso Peaton LEVE
19 No uso cinturon de seguridad MEDIA
20 Placas dominio. Falta/antirreglamentarias/mal estado LEVE
21 Prohibición circular según DIA/HORA/CARACTERISTICA vehíc LEVE
22 Uso indebido de luces LEVE
23 Violar Luz Roja GRAVE
24 Conducir en estado de ebriedad MUY GRAVE



*/


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Carga y descarga%')


update contravenciones_data set clasificacion = 5 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Carriles o vías prohíbidas%')

update contravenciones_data set clasificacion = 5 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Circular por Zona%')


update contravenciones_data set clasificacion = 5 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%utilizando Celular%')

update contravenciones_data set clasificacion = 5 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Conductor redactando%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%lugar asc/desc%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%lugar prohib.%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%lugar reservado%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%lugar sin ticket%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Estacionamiento en areas peatonales%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad más de 10%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad más de 20%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso de Velocidad mas de 20%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad más 20%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso de velocidad de hasta 20%')


update contravenciones_data set clasificacion = 9 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad más de 140%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso de velocidad de hasta 40%')

update contravenciones_data set clasificacion = 6 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso de velocidad en mas de 40%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad hasta 20%')

update contravenciones_data set clasificacion = 5 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Por no respetar los límites reglamentarios%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad hasta 10%')

update contravenciones_data set clasificacion = 8 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Exceso Velocidad más de 40%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Forzar barrera%')

update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Girar a izquierda%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Cumplir Normas%')


update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Senda Peatonal%'
)


update contravenciones_data set clasificacion = 5 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%cinturon de seguridad%'
)
update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%Placas dominio%'
)
update contravenciones_data set clasificacion = 2 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%circular%'
)
update contravenciones_data set clasificacion = 10 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%ebriedad%'
)
update contravenciones_data set clasificacion = 8 where id_data in (
select id_data from contravenciones_data where codigo_motivo_acta > 0 
and motivo_acta like '%roja%'
)

DECLARE @estadoMuyGrave INT ,@estadoGrave INT ,@estadoMedio INT ,@estadoLeve INT
declare @IDContra int

DECLARE Contravencionesidx Cursor
FOR

select id_contravencion from contravenciones

open Contravencionesidx

Fetch NEXT FROM Contravencionesidx INTO @IDContra
While (@@FETCH_STATUS <> -1)
BEGIN

 SELECT 
  @estadoLeve = (select count(*) as cantLeve from contravenciones_data where id_contravencion = @IDContra and clasificacion in (0,1,2,3,4)),
  @estadoMedio = (select count(*) as cantMedio from contravenciones_data where id_contravencion = @IDContra and clasificacion in (5,6,7)),
  @estadoGrave = (select count(*) as cantGrave from contravenciones_data where id_contravencion = @IDContra and clasificacion in (8,9)),
  @estadoMuyGrave = (select count(*) as cantMuyGrave from contravenciones_data where id_contravencion = @IDContra and clasificacion in (10))


 SELECT @estadoLeve as estadoLeve,@estadoMedio as estadoMedio,@estadoGrave as estadoGrave,@estadoMuyGrave as estadoMuyGrave

/*
PARAMETRO DE INFRACCIONES

ROJO -- 1 muy grave - 5 graves - 15 medias - 40 Leves
AMARILLO -- 1 grave - 8 medias - 20 leves
VERDE -- EL RESTO

*/


if (@estadoMuyGrave > 0 or @estadoGrave > 4 or @estadoMedio > 14 or @estadoLeve > 39)
 BEGIN
  UPDATE contravenciones SET CLASIFICACION = 'R' WHERE id_contravencion = @IDContra
 END
ELSE IF  ((@estadoGrave > 0 AND @estadoGrave < 5) or (@estadoMedio > 7 AND @estadoMedio < 15) or (@estadoLeve > 19 AND @estadoLeve < 40))
 BEGIN
  UPDATE contravenciones SET CLASIFICACION = 'A' WHERE id_contravencion = @IDContra
 END
ELSE 
 BEGIN
  UPDATE contravenciones SET CLASIFICACION = 'V' WHERE id_contravencion = @IDContra
 END


Fetch NEXT FROM Contravencionesidx INTO @IDContra
END

CLOSE Contravencionesidx
DEALLOCATE Contravencionesidx




/*
select distinct motivo_acta from contravenciones_data where clasificacion is null and acta is not null

SELECT * FROM CONTRAVENCIONES WHERE id_contravencion = 5865

*/


END

GO

Used By

No items found