SET DEFINE OFF;

UPDATE SIUFS SET idCSRT = 1 WHERE uf = 'ES';

COMMIT;

-- SITIPOSCHAVEPIX
CREATE TABLE SITIPOSCHAVEPIX
  (
    tipoChavePix NUMERIC (3,0) DEFAULT 0 NOT NULL,
    descricao    VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo        NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes  VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SITIPOSCHAVEPIX ADD CONSTRAINT SITIPOSCHAVEPIX_PK1 PRIMARY KEY (tipoChavePix);
CREATE INDEX SITIPOSCHAVEPIX_K2 ON SITIPOSCHAVEPIX (descricao);

INSERT INTO SITIPOSCHAVEPIX (tipoChavePix, descricao, ativo, observacoes) values (0, 'SELECIONE', 1, ' ');
INSERT INTO SITIPOSCHAVEPIX (tipoChavePix, descricao, ativo, observacoes) values (1, 'CPF/CNPJ', 1, ' ');
INSERT INTO SITIPOSCHAVEPIX (tipoChavePix, descricao, ativo, observacoes) values (2, 'Celular', 1, ' ');
INSERT INTO SITIPOSCHAVEPIX (tipoChavePix, descricao, ativo, observacoes) values (3, 'E-mail', 1, ' ');
INSERT INTO SITIPOSCHAVEPIX (tipoChavePix, descricao, ativo, observacoes) values (4, 'Chave aleatória', 1, ' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SITIPOSCHAVEPIX', 'Tipos Chave PIX', 1, 73, 'SI', 'tipoChavePix', 'N', 3, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposChavePIX', 1, 1, ' '); 

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (848, 'Tipos Chave PIX', 1, 99000073, 'SI', 999999, 848, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposChavePIX', 0, 0, 0, 0, ' ');

COMMIT;

DELETE SITABELASSISTEMA WHERE  tabelaSistema = 'SISPCENTIDADES';

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISPCENTIDADES', 'Entidades SPC', 1, 74, 'SI', 'entidadeSPC', 'N', 3, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqEntidadesSPC', 1, 1, ' '); 
INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISPCENTIDADEXMODELOSCONS', 'Entidade X Modelos Consulta SPC', 1, 75, 'SI', 'entidadeXModeloConsultaSPC', 'N', 6, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqEntidadeXModelosConsultaSP', 1, 1, ' '); 
INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISPCMOTIVOSREGISTRO', 'Motivos Registro SPC', 1, 76, 'SI', 'motivoRegistroSPC', 'A', 1, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqMotivosRegistroSPC', 1, 1, ' '); 
INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISPCMOTIVOSEXCLUSAO', 'Motivos Exclusão SPC', 1, 77, 'SI', 'motivoExclusaoSPC', 'N', 3, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqMotivosExclusaoSPC', 1, 1, ' '); 
INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISPCTIPOSRETORNOS', 'Tipos Retorno SPC', 1, 78, 'SI', 'tipoRetornoSPC', 'A', 1, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposRetornoSPC', 1, 1, ' '); 

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (849, 'Entidades SPC', 1, 99000074, 'SI', 999999, 849, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqEntidadesSPC', 0, 0, 0, 0, ' ');
INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (850, 'Entidade X Modelos Consulta SPC', 1, 99000075, 'SI', 999999, 850, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqEntidadeXModelosConsultaSP', 0, 0, 0, 0, ' ');
INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (851, 'Motivos Registro SPC', 1, 99000076, 'SI', 999999, 851, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqMotivosRegistroSPC', 0, 0, 0, 0, ' ');
INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (852, 'Motivos Exclusão SPC', 1, 99000077, 'SI', 999999, 852, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqMotivosExclusaoSPC', 0, 0, 0, 0, ' ');
INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (853, 'Tipos Retorno SPC', 1, 99000078, 'SI', 999999, 853, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposRetornoSPC', 0, 0, 0, 0, ' ');

COMMIT;

-- SISTATUSPIX
CREATE TABLE SISTATUSPIX
  (
    statusPix   CHAR (1) DEFAULT ' ' NOT NULL,
    descricao   VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo       NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SISTATUSPIX ADD CONSTRAINT SISTATUSPIX_PK1 PRIMARY KEY (statusPix);
CREATE INDEX SISTATUSPIX_K2 ON SISTATUSPIX (descricao);

INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES (' ', 'SELECIONE', 1, ' ');
INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES ('A', 'Ativa', 1, ' ');
INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES ('C', 'Concluída', 1, ' ');
INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES ('D', 'Devolvida', 1, ' ');
INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES ('N', 'Não Realizada', 1, ' ');
INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES ('P', 'Removida pelo PSP', 1, ' ');
INSERT INTO SISTATUSPIX (statusPix, descricao, ativo, observacoes) VALUES ('R', 'Removida pelo usuário recebedor', 1, ' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISTATUSPIX', 'Status PIX', 1, 74, 'SI', 'statusPix', 'A', 1, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqStatusPIX', 1, 1, ' '); 

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (854, 'Status PIX', 1, 99000074, 'SI', 999999, 854, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqStatusPIX', 0, 0, 0, 0, ' ');

COMMIT;

CREATE TABLE PAWHATSAPPCONEXOES_2204 AS SELECT * FROM PAWHATSAPPCONEXOES;

DROP TABLE PAWHATSAPPCONEXOES;

-- PAWHATSAPPCONEXOES
CREATE TABLE PAWHATSAPPCONEXOES
  (
    id                   NUMERIC (14,0) DEFAULT 0 NOT NULL,
    estabelecimento      NUMERIC (4,0) DEFAULT 0 NOT NULL,
    wsWhatsapp           NUMERIC (3,0) DEFAULT 0 NOT NULL,
    ativo                NUMERIC (1,0) DEFAULT 0 NOT NULL,
    usuario              VARCHAR (256) DEFAULT ' ' NOT NULL,
    token                VARCHAR (256) DEFAULT ' ' NOT NULL,
    diretorioArquivos    VARCHAR (256) DEFAULT ' ' NOT NULL,
    prefixoUrlSubstituir VARCHAR (256) DEFAULT ' ' NOT NULL,
    observacoes          VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
CREATE UNIQUE INDEX PAWHATSAPPCONEXOES_PK1 ON PAWHATSAPPCONEXOES (id);
CREATE UNIQUE INDEX PAWHATSAPPCONEXOES_K2 ON PAWHATSAPPCONEXOES (estabelecimento);
ALTER TABLE PAWHATSAPPCONEXOES ADD CONSTRAINT PAWHATSAPPCONEXOES_FK1 FOREIGN KEY (estabelecimento) REFERENCES PAESTABELECIMENTOS (estabelecimento);
ALTER TABLE PAWHATSAPPCONEXOES ADD CONSTRAINT PAWHATSAPPCONEXOES_FK2 FOREIGN KEY (wsWhatsapp) REFERENCES SIWSWHATSAPP (wsWhatsapp);

INSERT INTO PAWHATSAPPCONEXOES (id, estabelecimento, wsWhatsapp, ativo, usuario, token, diretorioArquivos, prefixoUrlSubstituir, observacoes) VALUES (0, 0, 0, 1, ' ', ' ', ' ', ' ', ' ');
INSERT INTO PAWHATSAPPCONEXOES (id, estabelecimento, wsWhatsapp, ativo, usuario, token, diretorioArquivos, prefixoUrlSubstituir, observacoes) SELECT id, estabelecimento, wsWhatsapp, ativo, usuario, token, ' ', ' ', observacoes FROM PAWHATSAPPCONEXOES_2204 WHERE id > 0;

COMMIT;

CREATE TABLE PACARTFINANCXESTABELECIM_2204 AS SELECT * FROM PACARTFINANCXESTABELECIM;

DROP TABLE PACARTFINANCXESTABELECIM;

-- PACARTFINANCXESTABELECIM
CREATE TABLE PACARTFINANCXESTABELECIM
  (
    id                         NUMERIC (14,0) DEFAULT 0 NOT NULL,
    carteiraFinanceira         NUMERIC (4,0) DEFAULT 0 NOT NULL,
    estabelecimento            NUMERIC (4,0) DEFAULT 0 NOT NULL,
    ativo                      NUMERIC (1,0) DEFAULT 0 NOT NULL,
    contaBancariaCaixa         NUMERIC (4,0) DEFAULT 0 NOT NULL,
    meioPagamentoBaixa         NUMERIC (2,0) DEFAULT 0 NOT NULL,
    diasParaCompensacao        NUMERIC (6,0) DEFAULT 0 NOT NULL,
    compensacaoAutomatica      NUMERIC (1,0) DEFAULT 0 NOT NULL,
    convenio                   VARCHAR (12) DEFAULT ' ' NOT NULL,
    codigoTransmissao          VARCHAR (20) DEFAULT ' ' NOT NULL,
    carteira                   CHAR (4) DEFAULT '    ' NOT NULL,
    variacaoCarteira           VARCHAR (15) DEFAULT ' ' NOT NULL,
    especie                    CHAR (3) DEFAULT '   ' NOT NULL,
    moeda                      CHAR (3) DEFAULT '   ' NOT NULL,
    instrucaoA                 CHAR (3) DEFAULT '   ' NOT NULL,
    instrucaoB                 CHAR (3) DEFAULT '   ' NOT NULL,
    protestarApos              NUMERIC (6,0) DEFAULT 0 NOT NULL,
    identificacaoServico       CHAR (3) DEFAULT '   ' NOT NULL,
    comando                    CHAR (3) DEFAULT '   ' NOT NULL,
    aceite                     CHAR (3) DEFAULT '   ' NOT NULL,
    boletoTextoA               VARCHAR (256) DEFAULT ' ' NOT NULL,
    boletoTextoB               VARCHAR (256) DEFAULT ' ' NOT NULL,
    boletoTextoC               VARCHAR (256) DEFAULT ' ' NOT NULL,
    boletoTextoD               VARCHAR (256) DEFAULT ' ' NOT NULL,
    boletoTextoE               VARCHAR (256) DEFAULT ' ' NOT NULL,
    carteiraFinanceiraProtesto NUMERIC (4,0) DEFAULT 0 NOT NULL,
    classificacaoPessoa        VARCHAR (3) DEFAULT ' ' NOT NULL,
    diretorioRemessa           VARCHAR (256) DEFAULT ' ' NOT NULL,
    basicAuthorization         VARCHAR (600) DEFAULT ' ' NOT NULL,
    applicationKey             VARCHAR (256) DEFAULT ' ' NOT NULL,
    tipoChavePix               NUMERIC (3,0) DEFAULT 0 NOT NULL,
    chavePix                   VARCHAR (600) DEFAULT ' ' NOT NULL,
    segundosExpiracao          NUMERIC (14,0) DEFAULT 0 NOT NULL,
    observacoes                VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_PK1 PRIMARY KEY (id);
CREATE UNIQUE INDEX PACARTFINANCXESTABELECIM_K2 ON PACARTFINANCXESTABELECIM (carteiraFinanceira, estabelecimento);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK1 FOREIGN KEY (carteiraFinanceira) REFERENCES PACARTEIRASFINANCEIRAS (carteiraFinanceira);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK2 FOREIGN KEY (estabelecimento) REFERENCES PAESTABELECIMENTOS (estabelecimento);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK3 FOREIGN KEY (contaBancariaCaixa) REFERENCES PACONTASBANCARIASCAIXAS (contaBancariaCaixa);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK4 FOREIGN KEY (meioPagamentoBaixa) REFERENCES SIMEIOSPAGAMENTO (meioPagamento);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK5 FOREIGN KEY (carteiraFinanceiraProtesto) REFERENCES PACARTEIRASFINANCEIRAS (carteiraFinanceira);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK6 FOREIGN KEY (classificacaoPessoa) REFERENCES PACLASSIFICACOESPESSOA (classificacaoPessoa);
ALTER TABLE PACARTFINANCXESTABELECIM ADD CONSTRAINT PACARTFINANCXESTABELECIM_FK7 FOREIGN KEY (tipoChavePix) REFERENCES SITIPOSCHAVEPIX (tipoChavePix);

INSERT INTO PACARTFINANCXESTABELECIM (id, carteiraFinanceira, estabelecimento, ativo, contaBancariaCaixa, meioPagamentoBaixa, diasParaCompensacao, compensacaoAutomatica, convenio, codigoTransmissao, carteira, variacaoCarteira, especie, moeda, instrucaoA, instrucaoB, protestarApos, identificacaoServico, comando, aceite, boletoTextoA, boletoTextoB, boletoTextoC, boletoTextoD, boletoTextoE, carteiraFinanceiraProtesto, classificacaoPessoa, diretorioRemessa, basicAuthorization, applicationKey, tipoChavePix, chavePix, segundosExpiracao, observacoes) VALUES (0, 0, 0, 1, 0, 0, 0, 0, ' ', ' ', '    ', ' ', '   ', '   ', '   ', '   ', 0, '   ', '   ', '   ', ' ', ' ', ' ', ' ', ' ', 0, ' ', ' ', ' ', ' ', 0, ' ', 0, ' ');
INSERT INTO PACARTFINANCXESTABELECIM (id, carteiraFinanceira, estabelecimento, ativo, contaBancariaCaixa, meioPagamentoBaixa, diasParaCompensacao, compensacaoAutomatica, convenio, codigoTransmissao, carteira, variacaoCarteira, especie, moeda, instrucaoA, instrucaoB, protestarApos, identificacaoServico, comando, aceite, boletoTextoA, boletoTextoB, boletoTextoC, boletoTextoD, boletoTextoE, carteiraFinanceiraProtesto, classificacaoPessoa, diretorioRemessa, basicAuthorization, applicationKey, tipoChavePix, chavePix, segundosExpiracao, observacoes) SELECT id, carteiraFinanceira, estabelecimento, ativo, contaBancariaCaixa, meioPagamentoBaixa, diasParaCompensacao, compensacaoAutomatica, convenio, codigoTransmissao, carteira, variacaoCarteira, especie, moeda, instrucaoA, instrucaoB, protestarApos, identificacaoServico, comando, aceite, boletoTextoA, boletoTextoB, boletoTextoC, boletoTextoD, boletoTextoE, carteiraFinanceiraProtesto, classificacaoPessoa, diretorioRemessa, ' ', ' ', 0, ' ', 0, observacoes FROM PACARTFINANCXESTABELECIM_2204 WHERE id > 0;

COMMIT;

-- MOFINANCEIROXPIX
CREATE TABLE MOFINANCEIROXPIX
  (
    idFinanceiro         NUMERIC (14,0) DEFAULT 0 NOT NULL,
    banco                CHAR (3) DEFAULT '   ' NOT NULL,
    txIdPix              VARCHAR (35) DEFAULT ' ' NOT NULL,
    locationPix          VARCHAR (65) DEFAULT ' ' NOT NULL,
    chavePix             VARCHAR (600) DEFAULT ' ' NOT NULL,
    qrCode               VARCHAR (600) DEFAULT ' ' NOT NULL,
    dataCriacao          DATE,
    timezoneCriacao      VARCHAR (6) DEFAULT ' ' NOT NULL,
    segundosExpiracao    NUMERIC (14,0) DEFAULT 0 NOT NULL,
    nomeRazaoSocial      VARCHAR (60) DEFAULT ' ' NOT NULL,
    cnpjCpfIdEstrangeiro VARCHAR (20) DEFAULT ' ' NOT NULL,
    statusPix            CHAR (1) DEFAULT ' ' NOT NULL,
    numeroRevisao        NUMERIC (14,0) DEFAULT 0 NOT NULL,
    observacoes          VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE MOFINANCEIROXPIX ADD CONSTRAINT MOFINANCEIROXPIX_PK1 PRIMARY KEY (idFinanceiro);
ALTER TABLE MOFINANCEIROXPIX ADD CONSTRAINT MOFINANCEIROXPIX_FK1 FOREIGN KEY (idFinanceiro) REFERENCES MOFINANCEIROS (idFinanceiro);
ALTER TABLE MOFINANCEIROXPIX ADD CONSTRAINT MOFINANCEIROXPIX_FK2 FOREIGN KEY (banco) REFERENCES SIBANCOS (banco);
ALTER TABLE MOFINANCEIROXPIX ADD CONSTRAINT MOFINANCEIROXPIX_FK3 FOREIGN KEY (statusPix) REFERENCES SISTATUSPIX (statusPix);

INSERT INTO MOFINANCEIROXPIX (idFinanceiro, banco, txIdPix, locationPix, chavePix, qrCode, dataCriacao, timezoneCriacao, segundosExpiracao, nomeRazaoSocial, cnpjCpfIdEstrangeiro, statusPix, numeroRevisao, observacoes) VALUES (0, '   ', ' ', ' ', ' ', ' ', NULL, ' ', 0, ' ', ' ', ' ', 0, ' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('MOFINANCEIROXPIX', 'Financeiro X PIX', 1, 50451, 'MO', 'idFinanceiro', 'N', 14, ' ', 1, ' ', 0, 100002, ' ', ' ', 1, 1, ' '); 

COMMIT;

create or replace PROCEDURE ADD_MOFINANCEIROS_EXCLUICORREL (
  p_idFinanceiro                IN NUMBER)
IS
  CURSOR c_mot IS
    SELECT idMotivoBloqueioDocumento
    FROM MOMOTBLOQXFINANCEIROS
    WHERE idFinanceiro = p_idFinanceiro;
BEGIN
  FOR a IN c_mot
  LOOP
    ADD_MOMOTIVOSBLOQUEIOS_EXCLUI (a.idMotivoBloqueioDocumento);
  END LOOP;
  -- Desvincula Financeiro
  UPDATE MOARQUIVOSCONCILIACOES    a SET a.situacaoConciliacao = 'I' WHERE a.situacaoConciliacao = 'F' AND EXISTS (SELECT 1 FROM MOCONCILIACOESCARTOES b WHERE b.idArquivoConciliacao = a.idArquivoConciliacao AND b.idFinanceiro = p_idFinanceiro);
  UPDATE MOCONCILIACOESCARTOES       SET idFinanceiro = 0, idBaixaFinanceiro = 0 WHERE idFinanceiro = p_idFinanceiro;
  UPDATE MOSPCREGISTROS              SET idFinanceiro = 0 WHERE idFinanceiro = p_idFinanceiro;
  UPDATE MOPREVFINANCXFINANCEIRO     SET idFinanceiro = 0 WHERE idFinanceiro = p_idFinanceiro;
  UPDATE MOTRANSACOESTEF             SET idFinanceiro = 0 WHERE idFinanceiro = p_idFinanceiro;
  UPDATE MOORCAMENTOXPAGAMENTOS      SET idFinanceiroAdiantamento = 0 WHERE idFinanceiroAdiantamento = p_idFinanceiro;
  UPDATE MODOCUMENTOSTROCA           SET idFinanceiroAdiantamento = 0 WHERE idFinanceiroAdiantamento = p_idFinanceiro;
  -- Exclui correlatos
  DELETE MOPREDOCUMXRESGATEPONTOS  a WHERE EXISTS(SELECT 1 FROM MOPONTUACOES b WHERE b.idPontuacao = a.idPontuacao AND b.idFinanceiro = p_idFinanceiro);
  DELETE MODOCFISCALXRESGATEPONTOS a WHERE EXISTS(SELECT 1 FROM MOPONTUACOES b WHERE b.idPontuacao = a.idPontuacao AND b.idFinanceiro = p_idFinanceiro);
  DELETE MOPONTUACOES                WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXBOLETO         WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXCARTAO         WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXCARTPROPRIO    WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXCHEQUE         WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXPIX            WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXRATEIO         WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXCOMISSOES      WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXDOCUMENTOS     WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXARQUIVOS       WHERE idFinanceiro = p_idFinanceiro;
  DELETE MONEGDIVIDAXFINANCEIROS     WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOREPARCXFINANCEIROS        WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOHISTORICOCOBRANCA         WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOEVENTOS                   WHERE idFinanceiro = p_idFinanceiro;
  -- Exclui correlatos com outra perna correlata que já deve ter sido excluída anteriormente
  DELETE MOFINANCEIROXCORRELATO      WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOFINANCEIROXCORRELATO      WHERE idFinanceiroCorrelato = p_idFinanceiro;
  DELETE MOFINANCEIROXBAIXAS         WHERE idFinanceiro = p_idFinanceiro;
  DELETE MOBAIXAXNOVOFINANCEIRO      WHERE idNovoFinanceiro = p_idFinanceiro;
  -- Exclui financeiro principal
  DELETE MOFINANCEIROS               WHERE idFinanceiro = p_idFinanceiro;
END ADD_MOFINANCEIROS_EXCLUICORREL;

/

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (855, 'Atualiza Status PIX', 1, 10002009, 'MO', 100001, 855, '%SYS_DIR%Versoes\%SYS_VER%\Movimentos.ecf', 'AtualizaStatusPIX', 0, 0, 0, 0, ' ');

COMMIT;

ALTER TABLE MOCONCILIACOESCARTOES DROP CONSTRAINT MOCONCILIACOESCARTOES_FK5;

DROP TABLE SIMEIOSCAPTURACARTOES;

-- SIMEIOSCAPTURACARTOES
CREATE TABLE SIMEIOSCAPTURACARTOES
  (
    meioCapturaCartao VARCHAR (3) DEFAULT ' ' NOT NULL,
    descricao         VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo             NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes       VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SIMEIOSCAPTURACARTOES ADD CONSTRAINT SIMEIOSCAPTURACARTOES_PK1 PRIMARY KEY (meioCapturaCartao);
CREATE INDEX SIMEIOSCAPTURACARTOES_K2 ON SIMEIOSCAPTURACARTOES (descricao);

INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values (' ', 'SELECIONE', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('1', 'POS - Point of Sales', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('2', 'PDV - Ponto de Venda ou TEF', 1, 'Transferência Eletrônica de Fundos');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('3', 'E-Commerce - Comércio Eletrônico', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('4', 'EDI - Troca Eletrônica de Dados', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('5', 'ADP / BSP - Empresa Capturadora', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('6', 'Manual', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('7', 'URA / CVA', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('8', 'Mobile', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('9', 'Moedeiro eletrônico em rede', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('99', 'Outros', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('TEF', 'TEF', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('POS', 'POS', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('MAN', 'Manual', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('INT', 'Internet', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('IAT', 'IATA', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('MOB', 'Superget Mobile', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('PAG', 'Pagamento Recorrente', 1, ' ');
INSERT INTO SIMEIOSCAPTURACARTOES (meioCapturaCartao, descricao, ativo, observacoes) values ('SUP', 'Superget', 1, ' ');

COMMIT;

UPDATE SITABELASSISTEMA SET tipoCampoCodigo = 'A', numeroDigitosCodigo = 3 WHERE tabelaSistema = 'SIMEIOSCAPTURACARTOES';

COMMIT;

INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (301, 'Ajuste à crédito ou à débito', 1, 03, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (302, 'Aluguel de POS', 1, 05, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (303, 'Cancelamento', 1, 01, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (304, 'Chargeback', 1, 02, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (305, 'Recarga Telecom', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (306, 'Bilhetagem', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (307, 'Consulta Serasa', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (308, 'Aluguel de Verticais', 1, 05, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (309, 'Carga e Recarga Cartão Pré Pago', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (310, 'Manutenção de Cartão', 1, 04, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (311, 'Venda de Cartão', 1, 04, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (312, 'Cancelamento com motivo de Estorno', 1, 02, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (313, 'Recarga com Cartão', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (314, 'Plataforma Digital', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (315, 'GetData', 1, 99, ' ');
INSERT INTO SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao, descricao, ativo, idAjusteCartao, observacoes) values (316, 'Reversão de Chargeback', 1, 02, ' ');

COMMIT;

-- SIINDICTIPOSPAGAMENTOCART
CREATE TABLE SIINDICTIPOSPAGAMENTOCART
  (
    indicadorTipoPagamentoCartao  CHAR (2) DEFAULT '  ' NOT NULL,
    descricao                     VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo                         NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes                   VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SIINDICTIPOSPAGAMENTOCART ADD CONSTRAINT SIINDICTIPOSPAGAMENTOCART_PK1 PRIMARY KEY (indicadorTipoPagamentoCartao);
CREATE INDEX SIINDICTIPOSPAGAMENTOCART_K2 ON SIINDICTIPOSPAGAMENTOCART (descricao);

INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('  ', 'SELECIONE', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('AC', 'Antecipação de Crédito', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('CI', 'Cobrança Interna', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('CS', 'Cessão de crédito', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('PD', 'Pagamento Pendente', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('PF', 'Previsão de Pagamento Futuro', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('PG', 'Pagamento Normal', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('RA', 'Rejeição de Antecipação', 1, ' ');
INSERT INTO SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao, descricao, ativo, observacoes) values ('PR', 'Pagamento da Antecipação Rejeitada', 1, ' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SIINDICTIPOSPAGAMENTOCART', 'Indicadores Tipo Pagamento Cartão', 1, 716, 'SI', 'indicadorTipoPagamentoCartao', 'A', 2, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqIndicTipoPagamentoCartao', 1, 1, ' ');

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (856, 'Indicadores Tipo Pagamento Cartão', 1, 99000725, 'SI', 999999, 856, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqIndicTipoPagamentoCartao', 0, 0, 0, 0, ' ');

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (857, 'Status Pré-Documento', 1 ,99000561, 'SI', 999999, 857, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqStatusPreDocumento', 0, 0, 0, 0, ' ');

COMMIT;

-- SISTATUSCONCILIACAOCARTAO
CREATE TABLE SISTATUSCONCILIACAOCARTAO
  (
    statusConciliacaoCartao CHAR (1) DEFAULT ' ' NOT NULL,
    descricao               VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo                   NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes             VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SISTATUSCONCILIACAOCARTAO ADD CONSTRAINT SISTATUSCONCILIACAOCARTAO_PK1 PRIMARY KEY (statusConciliacaoCartao);
CREATE INDEX SISTATUSCONCILIACAOCARTAO_K2 ON SISTATUSCONCILIACAOCARTAO (descricao);
INSERT INTO SISTATUSCONCILIACAOCARTAO (statusConciliacaoCartao, descricao, ativo, observacoes) values (' ','SELECIONE',1,' ');
INSERT INTO SISTATUSCONCILIACAOCARTAO (statusConciliacaoCartao, descricao, ativo, observacoes) values ('A','Aprovado',1,' ');
INSERT INTO SISTATUSCONCILIACAOCARTAO (statusConciliacaoCartao, descricao, ativo, observacoes) values ('C','Cancelado',1,' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SISTATUSCONCILIACAOCARTAO', 'Status Conciliação Cartão', 1, 716, 'SI', 'statusConciliacaoCartao', 'A', 1, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqStatusConciliacaoCartao', 1, 1, ' '); 

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (858, 'Status Conciliação Cartão', 1 ,99000726, 'SI', 999999, 858, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqStatusConciliacaoCartao', 0, 0, 0, 0, ' ');

COMMIT;

-- SITIPOSOPERACOESCARTAO
CREATE TABLE SITIPOSOPERACOESCARTAO
  (
    tipoOperacaoCartao  CHAR (2) DEFAULT '  ' NOT NULL,
    descricao           VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo               NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes         VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SITIPOSOPERACOESCARTAO ADD CONSTRAINT SITIPOSOPERACOESCARTAO_PK1 PRIMARY KEY (tipoOperacaoCartao);
CREATE INDEX SITIPOSOPERACOESCARTAO_K2 ON SITIPOSOPERACOESCARTAO (descricao);

INSERT INTO SITIPOSOPERACOESCARTAO (tipoOperacaoCartao, descricao, ativo, observacoes) values ('  ', 'SELECIONE', 1, ' ');
INSERT INTO SITIPOSOPERACOESCARTAO (tipoOperacaoCartao, descricao, ativo, observacoes) values ('CS', 'Cessão', 1, ' ');
INSERT INTO SITIPOSOPERACOESCARTAO (tipoOperacaoCartao, descricao, ativo, observacoes) values ('GV', 'Gravame', 1, ' ');
INSERT INTO SITIPOSOPERACOESCARTAO (tipoOperacaoCartao, descricao, ativo, observacoes) values ('CF', 'Cessão Fumaça', 1, ' ');
INSERT INTO SITIPOSOPERACOESCARTAO (tipoOperacaoCartao, descricao, ativo, observacoes) values ('PG', 'Pagamento', 1, ' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SITIPOSOPERACOESCARTAO', 'Tipos Operações Cartão', 1, 718, 'SI', 'tipoOperacaoCartao', 'A', 2, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposOperacoesCartao', 1, 1, ' ');

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (859, 'Tipos Operações Cartão', 1, 99000727, 'SI', 999999, 859, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposOperacoesCartao', 0, 0, 0, 0, ' ');

COMMIT;

-- SITIPOSMOVIMENTOCARTAO
CREATE TABLE SITIPOSMOVIMENTOCARTAO
  (
    tipoMovimentoCartao CHAR (1) DEFAULT ' ' NOT NULL,
    descricao               VARCHAR (60) DEFAULT ' ' NOT NULL,
    ativo                   NUMERIC (1,0) DEFAULT 0 NOT NULL,
    observacoes             VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE SITIPOSMOVIMENTOCARTAO ADD CONSTRAINT SITIPOSMOVIMENTOCARTAO_PK1 PRIMARY KEY (tipoMovimentoCartao);
CREATE INDEX SITIPOSMOVIMENTOCARTAO_K2 ON SITIPOSMOVIMENTOCARTAO (descricao);
INSERT INTO SITIPOSMOVIMENTOCARTAO (tipoMovimentoCartao, descricao, ativo, observacoes) values (' ', 'SELECIONE', 1, ' ');
INSERT INTO SITIPOSMOVIMENTOCARTAO (tipoMovimentoCartao, descricao, ativo, observacoes) values ('A', 'Alteração', 1, ' ');
INSERT INTO SITIPOSMOVIMENTOCARTAO (tipoMovimentoCartao, descricao, ativo, observacoes) values ('C', 'Cancelamento', 1, ' ');
INSERT INTO SITIPOSMOVIMENTOCARTAO (tipoMovimentoCartao, descricao, ativo, observacoes) values ('I', 'Inclusão da Operação', 1, ' ');
INSERT INTO SITIPOSMOVIMENTOCARTAO (tipoMovimentoCartao, descricao, ativo, observacoes) values ('L', 'Liquidação da Operação', 1, ' ');

COMMIT;

INSERT INTO SITABELASSISTEMA (tabelaSistema, descricao, ativo, ordenacao, tipoTabela, nomeCampoCodigo, tipoCampoCodigo, numeroDigitosCodigo, nomeCampoDescricao, adicionarCodigoNaDescricao, nomeCampoIdSeDiferenteCodigo, numeroDigitosCampoId, categoriaTabelaSistema, aplicacaoZoom, nomePublicoZoom, versaoTabela, versaoDados, observacoes) values ('SITIPOSMOVIMENTOCARTAO', 'Tipos Movimento Cartão', 1, 718, 'SI', 'tipoMovimentoCartao', 'A', 1, 'descricao', 0, ' ', 0, 999999, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposMovimentoCartao', 1, 1, ' '); 

COMMIT;

INSERT INTO SIMENUS (menu, descricao, ativo, ordenacao, tipoMenu, categoriaMenu, menuPrincipal, aplicacao, nomePublico, categoriaConfiguracao, categoriaPersonalCampo, categoriaMemoriaSistema, permiteReport, observacoes) values (860, 'Tipos Movimento Cartão', 1 ,99000728, 'SI', 999999, 860, '%SYS_DIR%Versoes\%SYS_VER%\Framework.ecf', 'PesqTiposMovimentoCartao', 0, 0, 0, 0, ' ');

COMMIT;

CREATE TABLE MOCONCILIACOESCARTOES_2204 AS SELECT * FROM MOCONCILIACOESCARTOES;

DROP TABLE MOCONCILIACOESCARTOES;

-- MOCONCILIACOESCARTOES
CREATE TABLE MOCONCILIACOESCARTOES
  (
    idConciliacao                NUMERIC (14,0) DEFAULT 0 NOT NULL,
    idArquivoConciliacao         NUMERIC (14,0) DEFAULT 0 NOT NULL,
    linhaArquivo                 NUMERIC (11,0) DEFAULT 0 NOT NULL,
    desconsiderado               NUMERIC (1,0) DEFAULT 0 NOT NULL,
    estabelecimento              NUMERIC (4,0) DEFAULT 0 NOT NULL,
    dataTransacao                DATE,
    dataPagamento                DATE,
    credenciadoraTef             VARCHAR (5) DEFAULT ' ' NOT NULL,
    numeroUnicoTransacao         VARCHAR (60) DEFAULT ' ' NOT NULL,
    transacaoCartaoNSU           VARCHAR (20) DEFAULT ' ' NOT NULL,
    autorizacaoCartao            VARCHAR (100) DEFAULT ' ' NOT NULL,
    cartaoCreditoDebito          VARCHAR (16) DEFAULT ' ' NOT NULL,
    bandeiraCartaoDebCred        NUMERIC (2,0) DEFAULT 0 NOT NULL,
    meioCapturaCartao            VARCHAR (3) DEFAULT ' ' NOT NULL,
    motivoRejeicao               VARCHAR (256) DEFAULT ' ' NOT NULL,
    terminal                     VARCHAR (256) DEFAULT ' ' NOT NULL,
    hora                         CHAR(6),
    idDetalheAjusteCartao        NUMERIC (3,0) DEFAULT 0 NOT NULL,
    documento                    VARCHAR (60) DEFAULT ' ' NOT NULL,
    parcelaAtual                 NUMERIC (3,0) DEFAULT 0 NOT NULL,
    parcelasTotais               NUMERIC (3,0) DEFAULT 0 NOT NULL,
    valorBruto                   NUMERIC (15,2) DEFAULT 0 NOT NULL,
    percentualTarifa             NUMERIC (15,8) DEFAULT 0 NOT NULL,
    valorTarifa                  NUMERIC (15,2) DEFAULT 0 NOT NULL,
    percentualTarifaAntecip      NUMERIC (15,8) DEFAULT 0 NOT NULL,
    valorTarifaAntecip           NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorComplementar            NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorLiquido                 NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorParcela                 NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorDemaisParcelas          NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorTaxaDesconto            NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorRejeitado               NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorCredito                 NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorEncargos                NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorCustoOperacao           NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorLiquidoAntecipado       NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorLiquidoCobranca         NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorTransacao               NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorSaque                   NUMERIC (15,2) DEFAULT 0 NOT NULL,
    valorBrutoAdquirencia        NUMERIC (15,2) DEFAULT 0 NOT NULL,
    banco                        CHAR (3) DEFAULT '   ' NOT NULL,
    dvBanco                      CHAR (1) DEFAULT ' ' NOT NULL,
    agenciaBanco                 VARCHAR (6) DEFAULT ' ' NOT NULL,
    contaBanco                   VARCHAR (12) DEFAULT ' ' NOT NULL,
    numeroOperacaoCartaoAjuste   VARCHAR (20) DEFAULT ' ' NOT NULL,
    numeroOperacaoCartaoAntecip  VARCHAR (20) DEFAULT ' ' NOT NULL,
    numeroResumoVendas           NUMERIC (14,0) DEFAULT 0 NOT NULL,
    numeroResumoVendasAjustado   NUMERIC (14,0) DEFAULT 0 NOT NULL,
    numeroCVsAceitos             NUMERIC (14,0) DEFAULT 0 NOT NULL,
    numeroCVsRejeitados          NUMERIC (14,0) DEFAULT 0 NOT NULL,
    vencimentoOriginal           DATE,
    indicadorTipoPagamentoCartao CHAR (2) DEFAULT '  ' NOT NULL,
    statusConciliacaoCartao      CHAR (1) DEFAULT ' ' NOT NULL,
    tipoOperacaoCartao           CHAR (2) DEFAULT '  ' NOT NULL,
    tipoMovimentoCartao          CHAR (1) DEFAULT ' ' NOT NULL,
    usuarioProcessamento         NUMERIC (14,0) DEFAULT 0 NOT NULL,
    dataProcessamento            DATE,
    idFinanceiro                 NUMERIC (14,0) DEFAULT 0 NOT NULL,
    idBaixaFinanceiro            NUMERIC (14,0) DEFAULT 0 NOT NULL,
    observacoes                  VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_PK1 PRIMARY KEY (idConciliacao);
CREATE INDEX MOCONCILIACOESCARTOES_PK2 ON MOCONCILIACOESCARTOES (idArquivoConciliacao, linhaArquivo, idConciliacao);
CREATE INDEX MOCONCILIACOESCARTOES_PK3 ON MOCONCILIACOESCARTOES (numeroUnicoTransacao);
CREATE INDEX MOCONCILIACOESCARTOES_PK4 ON MOCONCILIACOESCARTOES (idFinanceiro);
CREATE INDEX MOCONCILIACOESCARTOES_PK5 ON MOCONCILIACOESCARTOES (idBaixaFinanceiro);
CREATE INDEX MOCONCILIACOESCARTOES_PK6 ON MOCONCILIACOESCARTOES (credenciadoraTef, dataTransacao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK1 FOREIGN KEY (idArquivoConciliacao) REFERENCES MOARQUIVOSCONCILIACOES (idArquivoConciliacao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK2 FOREIGN KEY (estabelecimento) REFERENCES PAESTABELECIMENTOS (estabelecimento);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK3 FOREIGN KEY (credenciadoraTef) REFERENCES SICREDENCIADORASTEF (credenciadoraTef);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK4 FOREIGN KEY (bandeiraCartaoDebCred) REFERENCES SIBANDEIRASCARTAODEBCRED (bandeiraCartaoDebCred);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK5 FOREIGN KEY (meioCapturaCartao) REFERENCES SIMEIOSCAPTURACARTOES (meioCapturaCartao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK6 FOREIGN KEY (idDetalheAjusteCartao) REFERENCES SIDETALHEAJUSTESCARTOES (idDetalheAjusteCartao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK7 FOREIGN KEY (indicadorTipoPagamentoCartao) REFERENCES SIINDICTIPOSPAGAMENTOCART (indicadorTipoPagamentoCartao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK8 FOREIGN KEY (statusConciliacaoCartao) REFERENCES SISTATUSCONCILIACAOCARTAO (statusConciliacaoCartao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK9 FOREIGN KEY (tipoOperacaoCartao) REFERENCES SITIPOSOPERACOESCARTAO (tipoOperacaoCartao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK10 FOREIGN KEY (tipoMovimentoCartao) REFERENCES SITIPOSMOVIMENTOCARTAO (tipoMovimentoCartao);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK11 FOREIGN KEY (usuarioProcessamento) REFERENCES CAUSUARIOS (usuario);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK12 FOREIGN KEY (idFinanceiro) REFERENCES MOFINANCEIROS (idFinanceiro);
ALTER TABLE MOCONCILIACOESCARTOES ADD CONSTRAINT MOCONCILIACOESCARTOES_FK13 FOREIGN KEY (idBaixaFinanceiro) REFERENCES MOFINANCEIROXBAIXAS (idBaixaFinanceiro);

INSERT INTO MOCONCILIACOESCARTOES (idConciliacao, idArquivoConciliacao, linhaArquivo, desconsiderado, estabelecimento, dataTransacao, dataPagamento, credenciadoraTef, numeroUnicoTransacao, transacaoCartaoNSU, autorizacaoCartao, cartaoCreditoDebito, bandeiraCartaoDebCred, meioCapturaCartao, motivoRejeicao, terminal, hora, idDetalheAjusteCartao, documento, parcelaAtual, parcelasTotais, valorBruto, percentualTarifa, valorTarifa, percentualTarifaAntecip, valorTarifaAntecip, valorComplementar, valorLiquido, valorParcela, valorDemaisParcelas, valorTaxaDesconto, valorRejeitado, valorCredito, valorEncargos, valorCustoOperacao, valorLiquidoAntecipado, valorLiquidoCobranca, valorTransacao, valorSaque, valorBrutoAdquirencia, banco, dvBanco, agenciaBanco, contaBanco, numeroOperacaoCartaoAjuste, numeroOperacaoCartaoAntecip, numeroResumoVendas, numeroResumoVendasAjustado, numeroCVsAceitos, numeroCVsRejeitados, vencimentoOriginal, indicadorTipoPagamentoCartao, statusConciliacaoCartao, tipoOperacaoCartao, tipoMovimentoCartao, usuarioProcessamento, dataProcessamento, idFinanceiro, idBaixaFinanceiro, observacoes) VALUES (0, 0, 0, 0, 0, NULL, NULL, ' ', ' ', ' ', ' ', ' ', 0, ' ', ' ', ' ', NULL, 0, ' ', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '   ', ' ', ' ', ' ', ' ', ' ', 0, 0, 0, 0, NULL, '  ', ' ', '  ', ' ', 0, NULL, 0, 0, ' ');
INSERT INTO MOCONCILIACOESCARTOES (idConciliacao, idArquivoConciliacao, linhaArquivo, desconsiderado, estabelecimento, dataTransacao, dataPagamento, credenciadoraTef, numeroUnicoTransacao, transacaoCartaoNSU, autorizacaoCartao, cartaoCreditoDebito, bandeiraCartaoDebCred, meioCapturaCartao, motivoRejeicao, terminal, hora, idDetalheAjusteCartao, documento, parcelaAtual, parcelasTotais, valorBruto, percentualTarifa, valorTarifa, percentualTarifaAntecip, valorTarifaAntecip, valorComplementar, valorLiquido, valorParcela, valorDemaisParcelas, valorTaxaDesconto, valorRejeitado, valorCredito, valorEncargos, valorCustoOperacao, valorLiquidoAntecipado, valorLiquidoCobranca, valorTransacao, valorSaque, valorBrutoAdquirencia, banco, dvBanco, agenciaBanco, contaBanco, numeroOperacaoCartaoAjuste, numeroOperacaoCartaoAntecip, numeroResumoVendas, numeroResumoVendasAjustado, numeroCVsAceitos, numeroCVsRejeitados, vencimentoOriginal, indicadorTipoPagamentoCartao, statusConciliacaoCartao, tipoOperacaoCartao, tipoMovimentoCartao, usuarioProcessamento, dataProcessamento, idFinanceiro, idBaixaFinanceiro, observacoes) SELECT idConciliacao, idArquivoConciliacao, linhaArquivo, desconsiderado, estabelecimento, dataEmissao, dataPagamento, credenciadoraTef, numeroUnicoTransacao, transacaoCartaoNSU, autorizacaoCartao, cartaoCreditoDebito, bandeiraCartaoDebCred, CASE WHEN meioCapturaCartao = 0 THEN ' ' ELSE TRIM(TO_CHAR(meioCapturaCartao)) END, motivoRejeicao, terminal, hora, idDetalheAjusteCartao, documento, parcelaAtual, parcelasTotais, valorBruto, percentualTarifa, valorTarifa, percentualTarifaAntecip, valorTarifaAntecip, valorComplementar, valorLiquido, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, banco, dvBanco, agenciaBanco, contaBanco, ' ', ' ', 0, 0, 0, 0, NULL, '  ', ' ', '  ', ' ', usuarioProcessamento, dataProcessamento, idFinanceiro, idBaixaFinanceiro, observacoes FROM MOCONCILIACOESCARTOES_2204 WHERE idConciliacao <> 0;

COMMIT;

CREATE TABLE PACAIXASUSUARIOS_2204 AS SELECT * FROM PACAIXASUSUARIOS;

DROP TABLE PACAIXASUSUARIOS;

-- PACAIXASUSUARIOS
CREATE TABLE PACAIXASUSUARIOS
  (
    id                   NUMERIC (14,0) DEFAULT 0 NOT NULL,
    estabelecimento      NUMERIC (4,0) DEFAULT 0 NOT NULL,
    perfilUsuario        NUMERIC (6,0) DEFAULT 0 NOT NULL,
    usuario              NUMERIC (14,0) DEFAULT 0 NOT NULL,
    dispositivo          CHAR (1) DEFAULT ' ' NOT NULL,
    enderecoMAC          VARCHAR (12) DEFAULT ' ' NOT NULL,
    caixa                NUMERIC (4,0) DEFAULT 0 NOT NULL,
    ipSiTef              VARCHAR (256) DEFAULT ' ' NOT NULL,
    idLojaSiTef          VARCHAR (8) DEFAULT ' ' NOT NULL,
    idTerminalSiTef      VARCHAR (8) DEFAULT ' ' NOT NULL,
    multiplosCuponsSiTef NUMERIC (1,0) DEFAULT 0 NOT NULL,
    portaPinPadSiTef     NUMERIC (6,0) DEFAULT 0 NOT NULL,
    mensagemSiTef        VARCHAR (256) DEFAULT ' ' NOT NULL,
    observacoes          VARCHAR (4000) DEFAULT ' ' NOT NULL
  );
ALTER TABLE PACAIXASUSUARIOS ADD CONSTRAINT PACAIXASUSUARIOS_PK1 PRIMARY KEY (id);
CREATE UNIQUE INDEX PACAIXASUSUARIOS_K2 ON PACAIXASUSUARIOS (estabelecimento, perfilUsuario, usuario, dispositivo, enderecoMAC);
ALTER TABLE PACAIXASUSUARIOS ADD CONSTRAINT PACAIXASUSUARIOS_FK1 FOREIGN KEY (estabelecimento) REFERENCES PAESTABELECIMENTOS (estabelecimento);
ALTER TABLE PACAIXASUSUARIOS ADD CONSTRAINT PACAIXASUSUARIOS_FK2 FOREIGN KEY (perfilUsuario) REFERENCES PAPERFISUSUARIO (perfilUsuario);
ALTER TABLE PACAIXASUSUARIOS ADD CONSTRAINT PACAIXASUSUARIOS_FK3 FOREIGN KEY (usuario) REFERENCES CAUSUARIOS (usuario);
ALTER TABLE PACAIXASUSUARIOS ADD CONSTRAINT PACAIXASUSUARIOS_FK4 FOREIGN KEY (dispositivo) REFERENCES SIDISPOSITIVOS (dispositivo);

INSERT INTO PACAIXASUSUARIOS (id, estabelecimento, perfilUsuario, usuario, dispositivo, enderecoMAC, caixa, ipSiTef, idLojaSiTef, idTerminalSiTef, multiplosCuponsSiTef, portaPinPadSiTef, mensagemSiTef, observacoes) VALUES (0, 0, 0, 0, ' ', ' ', 0, ' ', ' ', ' ', 0, 0, ' ', ' ');
INSERT INTO PACAIXASUSUARIOS (id, estabelecimento, perfilUsuario, usuario, dispositivo, enderecoMAC, caixa, ipSiTef, idLojaSiTef, idTerminalSiTef, multiplosCuponsSiTef, portaPinPadSiTef, mensagemSiTef, observacoes) SELECT id, estabelecimento, perfilUsuario, usuario, dispositivo, enderecoMAC, caixa, ipSiTef, idLojaSiTef, idTerminalSiTef, multiplosCuponsSiTef, portaPinPadSiTef, ' ', observacoes FROM PACAIXASUSUARIOS_2204 WHERE id <> 0;

COMMIT;

INSERT INTO SIVERSOESSISTEMA (idVersaoSistema, versaoAplicativo, dataLiberacaoVersao, possuiConversaoTabelas, atualizada, dataAtualizacaoVersao, observacoes) VALUES (2022004003, '2022.4.3', sysdate, 1, 1, sysdate, ' ');

COMMIT;

--exec dbms_utility.compile_schema('ADDERI');
--exec dbms_stats.gather_schema_stats('ADDERI');

/*
*/