miércoles, 15 de noviembre de 2023

GTT (8) - BD MUNICIPIO (8). Vehículos

 1. Vehiculos

CREATE OR REPLACE VIEW XIMO_SCHM.EDU_VW_VEHI AS

SELECT OTIV.* ,

CASE

-- WHEN OTIV.ID_TIVE='AU' THEN OTIV.NUM_PLAZAS_MAX_OTIV

WHEN OTIV.ID_TIVE='AU' THEN OTIV.NUM_PLAZAS_OTIV

WHEN OTIV.ID_TIVE='CA' THEN OTIV.CARGA_UTIL_OTIV

WHEN OTIV.ID_TIVE='RE' THEN OTIV.CARGA_UTIL_OTIV

WHEN OTIV.ID_TIVE='SE' THEN OTIV.CARGA_UTIL_OTIV

WHEN OTIV.ID_TIVE='CI' THEN OTIV.CILINDRADA_OTIV

WHEN OTIV.ID_TIVE='MO' THEN OTIV.CILINDRADA_OTIV

WHEN OTIV.ID_TIVE='TR' THEN OTIV.POTENCIA_FISCAL_OTIV

WHEN OTIV.ID_TIVE='TU' THEN OTIV.POTENCIA_FISCAL_OTIV

ELSE -1000

END AS CANTIDAD,

CASE

WHEN OTIV.PORCENTAJE_BENEF_FISCAL_OTIV IS NULL THEN 0

WHEN OTIV.PORCENTAJE_BENEF_FISCAL_OTIV>0 THEN OTIV.PORCENTAJE_BENEF_FISCAL_OTIV

ELSE 0

END AS PORC_BONI_EDU,

CASE

WHEN OTIV.ID_TBIV IS NULL THEN 'NO BONIFICAT '

WHEN OTIV.ID_TBIV ='AY' THEN 'BONIFICAT-AJUNTAMENT'

WHEN OTIV.ID_TBIV ='CR' THEN 'BONIFICAT-CREU ROJA'

WHEN OTIV.ID_TBIV ='VA' THEN 'BONIFICAT-AGRÍCOLA'

WHEN OTIV.ID_TBIV ='VH' THEN 'BONIFICAT-HISTÒRIC'

WHEN OTIV.ID_TBIV ='VM' THEN 'BONIFICAT-DISCAPACITAT'

WHEN OTIV.ID_TBIV ='VO' THEN 'BONIFICAT-VEHICLE OFICIAL'

ELSE 'NO BONIFICAT'

END AS TIPO_BONIFICACION,

SIOT.SITUACION , TOIV.TIPO_OPERACION_TOIV, ORIG.ORIGEN , TIMA.DESC_TIMA ,

CLVE.DESC_CLVE , SCVE.DESC_SCVE , TIVE.DESC_TIVE ,DAEI.DESCRIPCION_DAEI ,

BISB.DESCRIPCION_BISB

FROM OPS$GTTORA.OTIV_OBJETO_TRIBUTARIO_IVTM OTIV

-- Tablas de codigo - Descripción

LEFT JOIN OPS$GTTORA.SIOT_SITUACION_OT_IVTM SIOT ON SIOT.ID_SIOT=OTIV.ID_SIOT

LEFT JOIN OPS$GTTORA.TOIV_TIPO_OPERACION_IVTM TOIV ON TOIV.COD_TOIV=OTIV.COD_TOIV

LEFT JOIN OPS$GTTORA.ORIG_ORIGENES_IVTM ORIG ON ORIG.ID_ORIG = OTIV.ID_ORIG

LEFT JOIN OPS$GTTORA.TIMA_TIPO_MATRICULAS_IVTM TIMA ON TIMA.ID_TIMA= OTIV.ID_TIMA

LEFT JOIN OPS$GTTORA.CLVE_CLASE_VEHICULO_IVTM CLVE ON CLVE.ID_CLVE= OTIV.ID_CLVE

LEFT JOIN OPS$GTTORA.SCVE_SUBCLASE_VEHICULO_IVTM SCVE ON SCVE.ID_SCVE = OTIV.ID_SCVE

LEFT JOIN OPS$GTTORA.TIVE_TIPO_VEHICULO_IVTM TIVE ON TIVE.ID_TIVE = OTIV.ID_TIVE

LEFT JOIN OPS$GTTORA.DAEI_DATO_ECONOMICO_IVTM DAEI ON DAEI.COD_DAEI =TIVE.COD_DAEI --viene de TIVE_TIPO_VEHICULO_IVTM

LEFT JOIN OPS$GTTORA.BISB_SUBTIPO_BIEN BISB ON BISB.COD_BISB =TIVE.COD_BISB --viene de TIVE_TIPO_VEHICULO_IVTM

WHERE OTIV.REG_ACTIVO='S' --AND OTIV.ID_SIOT <>'B'

WITH READ ONLY;


2. Tarifas de Vehículos

Se ha hecho una tabla a mano 

CREATE TABLE XIMO_SCHM.EDU_VEHI_TARIFAS (

ID_TIVE NVARCHAR2(2),

DESC_TIVE NVARCHAR2(100), --

UNIDADES NVARCHAR2(100), --NOM UNITATS

DESDE NUMBER(12,2), --UNITATS DES DE

IMPT_MIN NUMBER(10,0), --CENTIMS

IMPT_INC NUMBER(10,0)

) TABLESPACE XIMO_SCHM_TABLESPACE;

COMMENT ON TABLE XIMO_SCHM.EDU_VEHI_TARIFAS IS 'TABLA COPIADA A MANO DE TARIFAS MÍNIMAS E INCREMENTADAS' ;

COMMENT ON COLUMN XIMO_SCHM.EDU_VEHI_TARIFAS.ID_TIVE IS 'ID DEL TIPO DE VEHICULO';

COMMENT ON COLUMN XIMO_SCHM.EDU_VEHI_TARIFAS.DESC_TIVE IS 'DESCRIPCION DEL TIPO DE VEHICULO';

COMMENT ON COLUMN XIMO_SCHM.EDU_VEHI_TARIFAS.UNIDADES IS 'NOMBRE DE LAS UNIDADES A TARIFAR';

COMMENT ON COLUMN XIMO_SCHM.EDU_VEHI_TARIFAS.DESDE IS 'TRAMO DESDE';

COMMENT ON COLUMN XIMO_SCHM.EDU_VEHI_TARIFAS.IMPT_MIN IS 'IMPORTE MÍNIMO';

COMMENT ON COLUMN XIMO_SCHM.EDU_VEHI_TARIFAS.IMPT_INC IS 'IMPORTE INCREMENTADO';


Y se han capturado estas tarifas en formato CSV

ID_TIVE;DESC_TIVE;UNIDADES;DESDE;IMPT_MIN;IMPT_INC AU;AUTOBUS;PLAZAS;0;8330;13328 AU;AUTOBUS;PLAZAS;21;11864;18982 AU;AUTOBUS;PLAZAS;51;14830;23728 CA;CAMION;KG-CARGA;0;4228;6765 CA;CAMION;KG-CARGA;1000;8330;13328 CA;CAMION;KG-CARGA;2999;11864;18982 CA;CAMION;KG-CARGA;9999;14830;23728 CI;CICLOMOTOR;CC;0;442;884 MO;MOTOCICLETA;CC;0;442;884 MO;MOTOCICLETA;CC;125;757;1514 MO;MOTOCICLETA;CC;250;1515;3030 MO;MOTOCICLETA;CC;500;3029;6058 MO;MOTOCICLETA;CC;1000;6058;12116 RE;REMOLQUE;KG-CARGA;0;0;0 RE;REMOLQUE;KG-CARGA;751;1767;2827 RE;REMOLQUE;KG-CARGA;1000;2777;4443 RE;REMOLQUE;KG-CARGA;2999;8330;13328 SR;SEMIRREMOLQUE;KG-CARGA;0;0;0 SR;SEMIRREMOLQUE;KG-CARGA;751;1767;2827 SR;SEMIRREMOLQUE;KG-CARGA;1000;2777;4443 SR;SEMIRREMOLQUE;KG-CARGA;2999;8330;13328 TR;TRACTOR;CV;0;1767;2827 TR;TRACTOR;CV;16;2777;4443 TR;TRACTOR;CV;25;8330;13328 TU;TURISMO;CV;0;1262;2480 TU;TURISMO;CV;8;3408;6697 TU;TURISMO;CV;12;7194;14137 TU;TURISMO;CV;16;8961;17922 TU;TURISMO;CV;20;11200;22400


3. Calculo de importes DE LOS VEHÍCULOS

SELECT VEHI.*, EDU.*,EDU.IMPORT*VEHI.PORC_BONI_EDU/100 AS BONIFICACION, EDU.IMPORT*(100-VEHI.PORC_BONI_EDU)/100 AS NETO

FROM XIMO_SCHM.EDU_VW_VEHI VEHI

JOIN XIMO_SCHM.EDU_VEHI_TARIFAS EDU ON EDU.ID_TIVE =VEHI.ID_TIVE AND EDU.DESDE <=VEHI.CANTIDAD

AND NOT EXISTS (

SELECT *

FROM XIMO_SCHM.EDU_VEHI_TARIFAS EDU1

WHERE EDU1.ID_TIVE=VEHI.ID_TIVE

AND EDU1.DESDE <=VEHI.CANTIDAD

AND EDU1.DESDE > EDU.DESDE

)

WHERE VEHI.ID_SIOT <>'B' ; --NO BAJAS





No hay comentarios :

Publicar un comentario