diff --git a/src/db/migration/V20240502_1619__AL-3857.sql b/src/db/migration/V20240502_1619__AL-3857.sql index 317774add..7963d8a06 100644 --- a/src/db/migration/V20240502_1619__AL-3857.sql +++ b/src/db/migration/V20240502_1619__AL-3857.sql @@ -4,7 +4,7 @@ declare begin execute immediate 'CREATE TABLE ALIAS_CLASSE_SERVICO ( - "ALIASCLASSE_ID" NUMBER(7,0) NOT NULL ENABLE, + "ALIASCLASSE_ID" NUMBER(7,0) PRIMARY KEY, "CLASSE_ID" NUMBER(7,0), "ALIAS_ID" NUMBER(7,0), "ORGAOCONCEDENTE_ID" NUMBER(7,0), diff --git a/src/db/migration/V20240515_1031__AL-4355.sql b/src/db/migration/V20240515_1031__AL-4355.sql new file mode 100644 index 000000000..2ea499b6d --- /dev/null +++ b/src/db/migration/V20240515_1031__AL-4355.sql @@ -0,0 +1,15 @@ +declare + object_exists exception; + except_01451 exception; + except_01442 exception; + + pragma exception_init (object_exists , -01430); + pragma exception_init (except_01451 , -01451); + pragma exception_init (except_01442 , -01442); +begin + execute immediate 'ALTER TABLE CAJA_TARJETA MODIFY (TX_ID VARCHAR2(60))'; + exception + when object_exists then null; + when except_01451 then null; + when except_01442 then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240610_1611__AL-4275.sql b/src/db/migration/V20240610_1611__AL-4275.sql new file mode 100644 index 000000000..1ee5f8392 --- /dev/null +++ b/src/db/migration/V20240610_1611__AL-4275.sql @@ -0,0 +1,33 @@ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE TABLE CLIENTE_CORPORATIVO ( + "CLIENTECORPORATIVO_ID" NUMBER(7,0) PRIMARY KEY, + "EMPRESA_ID" NUMBER(7,0) NOT NULL ENABLE, + "IDENTIFICACAO" NUMBER(9,0), + "NOMCLIENTECORP" VARCHAR2(255) NULL, + "DATA_CRIACAO" DATE , + "LOGRADOURO" VARCHAR2(255) NULL, + "NUMERO" VARCHAR2(6) NULL, + "BAIRRO" VARCHAR2(255) NULL, + "COMPLEMENTO" VARCHAR2(100) NULL, + "CEP" VARCHAR2(20) NULL, + "TELEFONE" VARCHAR2(20) NULL, + "EMAIL" VARCHAR2(150) NULL, + "CIUDAD_ID" NUMBER(7,0), + "USUARIO_ID" NUMBER(7,0), + "ACTIVO" NUMBER(1,0), + "FECMODIF" DATE , + FOREIGN KEY (EMPRESA_ID) REFERENCES EMPRESA(EMPRESA_ID) + )'; + exception when object_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE SEQUENCE "CLIENTE_CORPORATIVO_SEQ" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE'; + exception when object_exists then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240612_1500__AL-4275.sql b/src/db/migration/V20240612_1500__AL-4275.sql new file mode 100644 index 000000000..e5727c8c1 --- /dev/null +++ b/src/db/migration/V20240612_1500__AL-4275.sql @@ -0,0 +1,17 @@ +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate + 'INSERT INTO funcion_sistema (FUNCIONSISTEMA_ID,SISTEMA_ID,NOMBFUNCION,DESCRUTA,ACTIVO,FECMODIF,USUARIO_ID) + VALUES + (funcion_sistema_seq.NEXTVAL, 1, ''ADM > CONFIGURAÇÃO COMERCIAL >> NEGOCIOS CORPORATIVOS >> CLIENTE CORPORATIVO'', + ''COM.RJCONSULTORES.ADMINISTRACION.GUI.CONFIGURACIONECCOMERCIALES.MENU.CLIENTECORPORATIVO'', 1, SYSDATE, 1)'; + + exception + when dup_val_on_index then null; + when except_02291 then null; +end; diff --git a/src/db/migration/V20240617_0945__AL-4269.sql b/src/db/migration/V20240617_0945__AL-4269.sql new file mode 100644 index 000000000..d2e974190 --- /dev/null +++ b/src/db/migration/V20240617_0945__AL-4269.sql @@ -0,0 +1,15 @@ +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate 'Insert into CONSTANTE (CONSTANTE_ID,NOMBCONSTANTE,DESCCONSTANTE,INDTIPOCONSTANTE, + VALORCONSTANTE,INDMANTENIMIENTOUSUARIO,ACTIVO,FECMODIF,USUARIO_ID) + values (CONSTANTE_SEQ.NEXTVAL,''ATIVAR_ADM_RECUPERACAOSENHA'',''ATIVAR_ADM_RECUPERACAOSENHA'', + null,''false'',null,''1'',sysdate,''1'')'; + exception + when dup_val_on_index then null; + when except_02291 then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240618_1450__AL-4276.sql b/src/db/migration/V20240618_1450__AL-4276.sql new file mode 100644 index 000000000..dcd83d7a6 --- /dev/null +++ b/src/db/migration/V20240618_1450__AL-4276.sql @@ -0,0 +1,17 @@ +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate + 'INSERT INTO funcion_sistema (FUNCIONSISTEMA_ID,SISTEMA_ID,NOMBFUNCION,DESCRUTA,ACTIVO,FECMODIF,USUARIO_ID) + VALUES + (funcion_sistema_seq.NEXTVAL, 1, ''ADM > CONFIGURAÇÃO COMERCIAL >> NEGOCIOS CORPORATIVOS >> GRUPO DE CONTRATO'', + ''COM.RJCONSULTORES.ADMINISTRACION.GUI.CONFIGURACIONECCOMERCIALES.MENU.GRUPOCONTRATO'', 1, SYSDATE, 1)'; + + exception + when dup_val_on_index then null; + when except_02291 then null; +end; diff --git a/src/db/migration/V20240618_1511__AL-4276.sql b/src/db/migration/V20240618_1511__AL-4276.sql new file mode 100644 index 000000000..38c5a0d8a --- /dev/null +++ b/src/db/migration/V20240618_1511__AL-4276.sql @@ -0,0 +1,21 @@ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE TABLE GRUPO_CONTRATO ( + "GRUPOCONTRATO_ID" NUMBER(7,0) PRIMARY KEY, + "NOMEGRUPOCONTRATO" VARCHAR2(255) NULL, + "USUARIO_ID" NUMBER(7,0), + "ACTIVO" NUMBER(1,0), + "FECMODIF" DATE + )'; + exception when object_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE SEQUENCE "GRUPO_CONTRATO_SEQ" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE'; + exception when object_exists then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240624_1137__AL-4276.sql b/src/db/migration/V20240624_1137__AL-4276.sql new file mode 100644 index 000000000..ab097405e --- /dev/null +++ b/src/db/migration/V20240624_1137__AL-4276.sql @@ -0,0 +1,31 @@ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE TABLE EXCECAO_GRUPO_CONTRATO ( + "EXCECAOGRUPOCONTRATO_ID" NUMBER(7,0) PRIMARY KEY, + "GRUPOCONTRATO_ID" NUMBER(7,0), + "DATA_INICIAL" DATE, + "DATA_FINAL" DATE, + "ORIGEN_ID" NUMBER(7,0), + "DESTINO_ID" NUMBER(7,0), + "CLASESERVICIO_ID" NUMBER(7,0), + "TARIFA" NUMBER(10, 2), + "USUARIO_ID" NUMBER(7,0), + "ACTIVO" NUMBER(1,0), + "FECMODIF" DATE, + CONSTRAINT "fk_grupo_contrato_excecao" FOREIGN KEY ("GRUPOCONTRATO_ID") REFERENCES "GRUPO_CONTRATO"("GRUPOCONTRATO_ID"), + CONSTRAINT "fk_parada_origen_excecao" FOREIGN KEY ("ORIGEN_ID") REFERENCES "PARADA"("PARADA_ID"), + CONSTRAINT "fk_parada_destino_excecao" FOREIGN KEY ("DESTINO_ID") REFERENCES "PARADA"("PARADA_ID"), + CONSTRAINT "fk_clase_servicio_excecao" FOREIGN KEY ("CLASESERVICIO_ID") REFERENCES "CLASE_SERVICIO"("CLASESERVICIO_ID") + )'; + exception when object_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE SEQUENCE "EXCECAO_GRUPO_CONTRATO_SEQ" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE'; + exception when object_exists then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240626_0944__AL-4133.sql b/src/db/migration/V20240626_0944__AL-4133.sql new file mode 100644 index 000000000..76a778afd --- /dev/null +++ b/src/db/migration/V20240626_0944__AL-4133.sql @@ -0,0 +1,15 @@ +declare + object_exists exception; + except_01451 exception; + except_01442 exception; + + pragma exception_init (object_exists , -01430); + pragma exception_init (except_01451 , -01451); + pragma exception_init (except_01442 , -01442); +begin + execute immediate 'ALTER TABLE empresa ADD INDBILHETEDEVPIXDINHEIRO NUMBER(1,0)'; + exception + when object_exists then null; + when except_01451 then null; + when except_01442 then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240626_1002__AL-4276.sql b/src/db/migration/V20240626_1002__AL-4276.sql new file mode 100644 index 000000000..41e8a52ef --- /dev/null +++ b/src/db/migration/V20240626_1002__AL-4276.sql @@ -0,0 +1,17 @@ +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate + 'INSERT INTO funcion_sistema (FUNCIONSISTEMA_ID,SISTEMA_ID,NOMBFUNCION,DESCRUTA,ACTIVO,FECMODIF,USUARIO_ID) + VALUES + (funcion_sistema_seq.NEXTVAL, 1, ''ADM > CONFIGURAÇÃO COMERCIAL >> NEGOCIOS CORPORATIVOS >> CONTRATO'', + ''COM.RJCONSULTORES.ADMINISTRACION.GUI.CONFIGURACIONECCOMERCIALES.MENU.CONTRATO'', 1, SYSDATE, 1)'; + + exception + when dup_val_on_index then null; + when except_02291 then null; +end; diff --git a/src/db/migration/V20240626_1647__AL-4468.sql b/src/db/migration/V20240626_1647__AL-4468.sql new file mode 100644 index 000000000..0f69f4a76 --- /dev/null +++ b/src/db/migration/V20240626_1647__AL-4468.sql @@ -0,0 +1,15 @@ +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate 'Insert into CONSTANTE (CONSTANTE_ID,NOMBCONSTANTE,DESCCONSTANTE,INDTIPOCONSTANTE, + VALORCONSTANTE,INDMANTENIMIENTOUSUARIO,ACTIVO,FECMODIF,USUARIO_ID) + values (CONSTANTE_SEQ.NEXTVAL,''DESATIVAR_OBR_CAM_EMPRESA_IMPOSTO'',''DESATIVAR_OBR_CAM_EMPRESA_IMPOSTO'', + null,''false'',null,''1'',sysdate,''1'')'; + exception + when dup_val_on_index then null; + when except_02291 then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240627_0810__AL-4204.sql b/src/db/migration/V20240627_0810__AL-4204.sql new file mode 100644 index 000000000..72ffeb9e0 --- /dev/null +++ b/src/db/migration/V20240627_0810__AL-4204.sql @@ -0,0 +1,15 @@ +declare + object_exists exception; + except_01451 exception; + except_01442 exception; + + pragma exception_init (object_exists , -01430); + pragma exception_init (except_01451 , -01451); + pragma exception_init (except_01442 , -01442); +begin + execute immediate 'ALTER TABLE CATEGORIA_DESCUENTO ADD TIPOIDENTIFICACIONDOC1 NUMBER(5,0)'; + exception + when object_exists then null; + when except_01451 then null; + when except_01442 then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240627_1007__AL-4543.sql b/src/db/migration/V20240627_1007__AL-4543.sql new file mode 100644 index 000000000..318e239b0 --- /dev/null +++ b/src/db/migration/V20240627_1007__AL-4543.sql @@ -0,0 +1,30 @@ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE TABLE TARIFA_GRUPO_CONTRATO ( + "TARIFAGRUPOCONTRATO_ID" NUMBER(7,0) PRIMARY KEY, + "GRUPOCONTRATO_ID" NUMBER(7,0), + "ORIGEN_ID" NUMBER(7,0), + "DESTINO_ID" NUMBER(7,0), + "CLASESERVICIO_ID" NUMBER(7,0), + "TARIFA" NUMBER(10, 2), + "USUARIO_ID" NUMBER(7,0), + "INDCOBERTURA" NUMBER(1,0), + "ACTIVO" NUMBER(1,0), + "FECMODIF" DATE, + CONSTRAINT "fk_grupo_contrato" FOREIGN KEY ("GRUPOCONTRATO_ID") REFERENCES "GRUPO_CONTRATO"("GRUPOCONTRATO_ID"), + CONSTRAINT "fk_parada_origen" FOREIGN KEY ("ORIGEN_ID") REFERENCES "PARADA"("PARADA_ID"), + CONSTRAINT "fk_parada_destino" FOREIGN KEY ("DESTINO_ID") REFERENCES "PARADA"("PARADA_ID"), + CONSTRAINT "fk_clase_servicio" FOREIGN KEY ("CLASESERVICIO_ID") REFERENCES "CLASE_SERVICIO"("CLASESERVICIO_ID") + )'; + exception when object_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE SEQUENCE "TARIFA_GRUPO_CONTRATO_SEQ" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE'; + exception when object_exists then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240627_1922__AL-4280.sql b/src/db/migration/V20240627_1922__AL-4280.sql new file mode 100644 index 000000000..9120c7601 --- /dev/null +++ b/src/db/migration/V20240627_1922__AL-4280.sql @@ -0,0 +1,117 @@ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate + 'CREATE SEQUENCE ASISTVIAJE_EMPRESA_SEQ MINVALUE 1 MAXVALUE 9999999 INCREMENT BY 1 START WITH 1 NOCACHE ORDER CYCLE'; + exception when object_exists then null; +end; +/ +declare + table_exists exception; + pragma exception_init (table_exists , -00955); +begin + execute immediate + 'CREATE TABLE ASISTVIAJE_EMPRESA ( + ASISTVIAJEEMPRESA_ID NUMBER(7,0) NOT NULL ENABLE, + EMPRESA_ID NUMBER(7,0), + TARIFA NUMBER(10,2), + ACTIVO NUMBER(1,0), + FECMODIF DATE, + USUARIO_ID NUMBER(7,0), + PRIMARY KEY (ASISTVIAJEEMPRESA_ID), + FOREIGN KEY (EMPRESA_ID) + REFERENCES EMPRESA (EMPRESA_ID) ENABLE + ) '; + + exception when table_exists then null; +end; +/ +declare + column_exists exception; + pragma exception_init (column_exists , -01430); +begin + execute immediate 'ALTER TABLE PTOVTA_SEGURO ADD INDVENDASISTVIAJE NUMBER (1,0)'; + exception when column_exists then null; +end; +/ +declare + column_exists exception; + pragma exception_init (column_exists , -01430); +begin + execute immediate 'ALTER TABLE PTOVTA_SEGURO ADD INDESTANASISTVIAJE NUMBER (1,0)'; + exception when column_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate + 'CREATE TABLE IMPRESION_LAYOUT_CONFIG ( + IMPRESIONLAYOUTCONFIG_ID NUMBER(7, 0) NOT NULL , + DESCRICAO VARCHAR2(100 BYTE), + TEXTO CLOB , + LINGUAGEM NUMBER(5,0), + ACTIVO NUMBER(1,0) , + FECMODIF DATE, + USUARIO_ID NUMBER(7,0) + )'; + exception when object_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate + 'CREATE SEQUENCE IMPRESION_LAYOUT_CONFIG_SEQ MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE'; + exception when object_exists then null; +end; +/ + + +declare + column_exists exception; + pragma exception_init (column_exists , -01430); +begin + execute immediate 'ALTER TABLE TIPO_EVENTO_EXTRA ADD (IMPRESIONLAYOUTCONFIG_ID NUMBER(7) )'; + exception when column_exists then null; +end; +/ + + + +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate + 'insert into FUNCION_SISTEMA (FUNCIONSISTEMA_ID,SISTEMA_ID,NOMBFUNCION,DESCRUTA,ACTIVO,FECMODIF,USUARIO_ID) + values + (FUNCION_SISTEMA_SEQ.NEXTVAL,''1'',''ADM > CATALOGOS > LAYOUT COMPROVANTE'',''COM.RJCONSULTORES.ADMINISTRACION.GUI.CATALOGOS.IMPRESIONLAYOUTCONFIG'',''1'',SYSDATE,''1'')'; + + exception + when dup_val_on_index then null; + when except_02291 then null; +end; +/ +declare + dup_val_on_index exception; + except_02291 exception; + + pragma exception_init (dup_val_on_index , -00001); + pragma exception_init (except_02291 , -02291); +begin + execute immediate + 'insert into FUNCION_SISTEMA (FUNCIONSISTEMA_ID,SISTEMA_ID,NOMBFUNCION,DESCRUTA,ACTIVO,FECMODIF,USUARIO_ID) + values + (FUNCION_SISTEMA_SEQ.NEXTVAL,''1'',''ADM > ADM DE PRECO > ASSISTENTE VIAJE'',''COM.RJCONSULTORES.ADMINISTRACION.GUI.TARIFAS.MENU.ASISTENCIADEVIAGEMEMPRESA'',''1'',SYSDATE,''1'')'; + + exception + when dup_val_on_index then null; + when except_02291 then null; +end; diff --git a/src/db/migration/V20240628_1722__AL-4276.sql b/src/db/migration/V20240628_1722__AL-4276.sql new file mode 100644 index 000000000..e80a471b6 --- /dev/null +++ b/src/db/migration/V20240628_1722__AL-4276.sql @@ -0,0 +1,46 @@ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE TABLE CONTRATO_CORPORATIVO ( + "CONTRATO_ID" NUMBER(7) PRIMARY KEY, + "CLIENTECORPORATIVO_ID" NUMBER(7), + "GRUPOCONTRATO_ID" NUMBER(7), + "NUMCONTRATO" VARCHAR2(15), + "DATA_INICIAL" DATE, + "DATA_FINAL" DATE, + "VALOR_CONTRATO" NUMBER(15, 2), + "PERCENTUAL_BONUS" NUMBER(5, 2), + "USUARIOREP_ID" NUMBER(7), + "TIPO_CALCULO" NUMBER(7), + "TIPO_TARIFA" NUMBER(7), + "TIPO_CONTRATO" NUMBER(7), + "PUNTOVENTA_ID" NUMBER(7), + "OBSERVACAO" VARCHAR2(255), + "DIVISAO" VARCHAR2(255), + "STATUS_CONTRATO" NUMBER(7), + "DESCONTO_FATURA" NUMBER(10, 2), + "IND_BILHETES_ABERTOS" NUMBER(1), + "IND_BILHETES_CONFIRMADOS" NUMBER(1), + "IND_RESERVA_BILHETE" NUMBER(1), + "IND_MANIPULA_BONUS" NUMBER(1), + "IND_EXIGE_EXCEDENTE" NUMBER(1), + "USUARIO_ID" NUMBER(7,0), + "ACTIVO" NUMBER(1,0), + "FECMODIF" DATE , + CONSTRAINT "fk_contrato_punto_venta" FOREIGN KEY ("PUNTOVENTA_ID") REFERENCES PUNTO_VENTA("PUNTOVENTA_ID"), + CONSTRAINT "fk_contrato_cliente_corporativo" FOREIGN KEY ("CLIENTECORPORATIVO_ID") REFERENCES CLIENTE_CORPORATIVO("CLIENTECORPORATIVO_ID"), + CONSTRAINT "fk_contrato_grupo_contrato" FOREIGN KEY ("GRUPOCONTRATO_ID") REFERENCES GRUPO_CONTRATO("GRUPOCONTRATO_ID"), + CONSTRAINT "fk_contrato_usuario" FOREIGN KEY ("USUARIO_ID") REFERENCES USUARIO("USUARIO_ID"), + CONSTRAINT "fk_contrato_representante" FOREIGN KEY ("USUARIOREP_ID") REFERENCES USUARIO("USUARIO_ID") + )'; + exception when object_exists then null; +end; +/ +declare + object_exists exception; + pragma exception_init (object_exists , -00955); +begin + execute immediate 'CREATE SEQUENCE "CONTRATO_CORPORATIVO_SEQ" MINVALUE 1 MAXVALUE 9999999999999999999999999999 INCREMENT BY 1 START WITH 1 CACHE 20 NOORDER NOCYCLE'; + exception when object_exists then null; +end; \ No newline at end of file diff --git a/src/db/migration/V20240629_0944__AL-4348.sql b/src/db/migration/V20240629_0944__AL-4348.sql new file mode 100644 index 000000000..3efd4c04e --- /dev/null +++ b/src/db/migration/V20240629_0944__AL-4348.sql @@ -0,0 +1,15 @@ +declare + object_exists exception; + except_01451 exception; + except_01442 exception; + + pragma exception_init (object_exists , -01430); + pragma exception_init (except_01451 , -01451); + pragma exception_init (except_01442 , -01442); +begin + execute immediate 'ALTER TABLE empresa ADD INDCALCGRATUISOBREDESCTOTAIS NUMBER(1,0)'; + exception + when object_exists then null; + when except_01451 then null; + when except_01442 then null; +end; \ No newline at end of file