CREATE GENERATOR GTBNFS_FORMA_PAGAMENTO;

CREATE TABLE TBNFS_FORMA_PAGAMENTO (
    ID INTEGER NOT NULL PRIMARY KEY,
    DOCUMENTO_TIPO VARCHAR(3), /* CFE, NFS, AVU */
    DOCUMENTO_ID INTEGER,
    PAGAMENTO_FORMA_ID INTEGER,
    PARCELAS INTEGER,
    VALOR DECIMAL(15,2),
    TARIFA DECIMAL(15,4),
    VALOR_LIQUIDO DECIMAL(15,2),
    NSU VARCHAR(50),
    ADQUIRENTE_ID INTEGER,
    BANDEIRA_CARTAO VARCHAR(100),
    CODIGO_AUTORIZACAO VARCHAR(50),
    CONCILIACAO VARCHAR(1) DEFAULT '0',
    DATAHORA TIMESTAMP DEFAULT 'NOW'
);

CREATE OR ALTER TRIGGER TTBNFS_FORMA_PAGAMENTO_B01I FOR TBNFS_FORMA_PAGAMENTO
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.ID IS NULL) THEN
    NEW.ID = GEN_ID(GTBNFS_FORMA_PAGAMENTO,1);
END;

ALTER TABLE TBNFS_PARCELAMENTO ADD BANDEIRA_ID INTEGER;