CREATE OR ALTER procedure SPUI_NFS_INUTILIZACAO (
    ESTABELECIMENTO_CODIGO integer,
    NUMERO_NOTAFISCAL integer,
    SERIE varchar(3),
    EMPRESA_CODIGO integer,
    NATUREZA integer,
    DATA_SAIDA date,
    DATA_EMISSAO date,
    HORA_EMISSAO varchar(5),
    HORA_SAIDA varchar(5),
    IND_FINAL char(1),
    IND_PRESENCA char(1),
    ID_ESTRANGEIRO varchar(20),
    CONTROLE integer,
    SITUACAO integer,
    CFOP_CODIGO varchar(5),
    CFOP_DESCRICAO varchar(60),
    USUARIO_CODIGO integer,
    USUARIO_DATA date,
    EMPRESA_RAZAOSOCIAL varchar(50),
    EMPRESA_CNPJ varchar(14),
    EMPRESA_IE varchar(20),
    EMPRESA_ENDERECO varchar(200),
    EMPRESA_NUMERO varchar(20),
    EMPRESA_BAIRRO varchar(20),
    EMPRESA_CIDADE varchar(40),
    EMPRESA_CEP varchar(8),
    EMPRESA_UF varchar(2),
    SUFRAMA varchar(9),
    CHAVE_ACESSO varchar(44),
    TIPO char(1),
    CLASSIFICACAO varchar(10),
    XML char(2),
    DANFE char(1),
    PAGAMENTO char(1),
    PROTOCOLO_CANCELAMENTO varchar(20),
    MOTIVO_CANCELAMENTO varchar(50),
    SPED char(1),
    MODELO char(2),
    ESPECIE varchar(5),
    FISCAL_CFOP_CODIGO varchar(5),
    ACUMULA_ITEM char(1),
    OCULTA_GRADE char(1),
    TIPO_DOC char(1),
    SPED_PISCOF char(1),
    GC_WEB integer)
as
BEGIN
UPDATE OR INSERT INTO TBNFS (
ESTABELECIMENTO_CODIGO,NUMERO_NOTAFISCAL,SERIE,EMPRESA_CODIGO,NATUREZA,
DATA_SAIDA,DATA_EMISSAO,
HORA_EMISSAO,HORA_SAIDA,IND_FINAL,IND_PRESENCA,ID_ESTRANGEIRO,
CONTROLE,SITUACAO,CFOP_CODIGO,CFOP_DESCRICAO,
USUARIO_CODIGO,USUARIO_DATA,EMPRESA_RAZAOSOCIAL,EMPRESA_CNPJ,EMPRESA_IE,EMPRESA_ENDERECO,
EMPRESA_NUMERO,EMPRESA_BAIRRO,EMPRESA_CIDADE,EMPRESA_CEP,EMPRESA_UF,SUFRAMA,
CHAVE_ACESSO,TIPO,XML,DANFE,PAGAMENTO,PROTOCOLO_CANCELAMENTO,MOTIVO_CANCELAMENTO,
SPED,MODELO,ESPECIE,FISCAL_CFOP_CODIGO,ACUMULA_ITEM, OCULTA_GRADE, TIPO_DOC,
CLASSIFICACAO,SPED_PISCOF, GC_WEB) VALUES (

:ESTABELECIMENTO_CODIGO,:NUMERO_NOTAFISCAL,:SERIE,:EMPRESA_CODIGO,:NATUREZA,
:DATA_SAIDA,:DATA_EMISSAO,
:HORA_EMISSAO,:HORA_SAIDA,:IND_FINAL,:IND_PRESENCA,:ID_ESTRANGEIRO,
:CONTROLE,:SITUACAO,:CFOP_CODIGO,:CFOP_DESCRICAO,
:USUARIO_CODIGO,:USUARIO_DATA,:EMPRESA_RAZAOSOCIAL,:EMPRESA_CNPJ,:EMPRESA_IE,:EMPRESA_ENDERECO,
:EMPRESA_NUMERO,:EMPRESA_BAIRRO,:EMPRESA_CIDADE,:EMPRESA_CEP,:EMPRESA_UF,:SUFRAMA,
:CHAVE_ACESSO,:TIPO,:XML,:DANFE,:PAGAMENTO,:PROTOCOLO_CANCELAMENTO,:MOTIVO_CANCELAMENTO,
:SPED,:MODELO,:ESPECIE,:FISCAL_CFOP_CODIGO,
:ACUMULA_ITEM, :OCULTA_GRADE, :TIPO_DOC,:CLASSIFICACAO,:SPED_PISCOF, :GC_WEB)
MATCHING(CONTROLE);

END;