estrutura da tabela:
CREATE SEQUENCE seq_ecf_cupom; CREATE TABLE ecf_cupom (numero_controle INTEGER DEFAULT NEXTVAL('seq_ecf_cupom') NOT NULL,
codigo_caixa INTEGER NOT NULL, codigo_ecf INTEGER NOT NULL, modelo_ecf VARCHAR(20) NOT NULL, numero_serie_ecf VARCHAR(21) NOT NULL, numero_cupom INTEGER NOT NULL, contador_documento INTEGER NOT NULL, contador_reinicio_operacao INTEGER NOT NULL, codigo_documento INTEGER NOT NULL,data_emissao TIMESTAMP(0) DEFAULT CURRENT_TIMESTAMP NOT NULL,
valor_documento NUMERIC(12,2) DEFAULT 0 NOT NULL, valor_desconto NUMERIC(12,2) DEFAULT 0 NOT NULL, valor_acrescimo NUMERIC(12,2) DEFAULT 0 NOT NULL, valor_troco NUMERIC(12,2) DEFAULT 0 NOT NULL, codigo_usuario INTEGER NOT NULL, codigo_usuario_cancelamento INTEGER, data_cancelamento TIMESTAMP(0), codigo_cliente INTEGER, codigo_empresa INTEGER NOT NULL, ecf_hash TEXT, numero_controle_sv INTEGER, numero_controle_nfs INTEGER, numero_controle_orcamento INTEGER, numero_controle_fech INTEGER NOT NULL,CONSTRAINT pk_ecf_cupom_icmecf PRIMARY KEY (codigo_empresa, numero_cupom, numero_serie_ecf, contador_reinicio_operacao), CONSTRAINT fk_ecf_cupom_coddoc FOREIGN KEY (codigo_documento) REFERENCES documento(codigo), CONSTRAINT fk_ecf_cupom_codecf FOREIGN KEY (codigo_caixa) REFERENCES ecf_caixa(codigo), CONSTRAINT fk_ecf_cupom_codusu FOREIGN KEY (codigo_usuario) REFERENCES funcionario(codigo), CONSTRAINT fk_ecf_cupom_usucan FOREIGN KEY (codigo_usuario_cancelamento) REFERENCES funcionario(codigo), CONSTRAINT fk_ecf_cupom_codemp FOREIGN KEY (codigo_empresa) REFERENCES empresa(codigo), CONSTRAINT fk_ecf_cupom_codcli FOREIGN KEY (codigo_cliente) REFERENCES cliente(codigo), CONSTRAINT fk_ecf_cupom_numcon FOREIGN KEY (numero_controle_orcamento) REFERENCES orcamento(numero_controle), CONSTRAINT fk_ecf_cupom_numnfs FOREIGN KEY (numero_controle_nfs) REFERENCES nfe_emitida(numero_controle), CONSTRAINT fk_ecf_cupom_nctlsv FOREIGN KEY (numero_controle_sv) REFERENCES saida_venda(numero_controle),
CONSTRAINT ck_ecf_cupom_conrei CHECK (contador_reinicio_operacao > 0), CONSTRAINT ck_ecf_cupom_numctl UNIQUE (numero_controle) );ALTER TABLE orcamento ADD CONSTRAINT fk_orcamento_numecf FOREIGN KEY (numero_controle_cupom) REFERENCES ecf_cupom(numero_controle); ALTER TABLE contas_receber ADD CONSTRAINT fk_contas_receber_nunecf FOREIGN KEY (numero_controle_ecf) REFERENCES ecf_cupom(numero_controle); ALTER TABLE cheque_recebido ADD CONSTRAINT fk_cheque_recebido_nunecf FOREIGN KEY (numero_controle_ecf) REFERENCES ecf_cupom(numero_controle);
CREATE INDEX idx_ecf_cupom_numrez ON ecf_cupom(numero_controle_fech); CREATE INDEX idx_ecf_cupom_datemi ON ecf_cupom(data_emissao);/* ----------------------------------------------------------------------- */
CREATE TABLE ecf_cupom_lanctos ( numero_controle INTEGER NOT NULL, numero_ordem INTEGER NOT NULL, codigo_item INTEGER NOT NULL, codigo_ncm CHAR(8), codigo_unidade INTEGER NOT NULL, quantidade NUMERIC(12,3) NOT NULL, total_item NUMERIC(12,2) NOT NULL, aliquota_icms NUMERIC(5,2) DEFAULT 0 NOT NULL, totalizador_ecf CHAR(2) NOT NULL, codigo_cfop CHAR(4) NOT NULL, codigo_situacao_icms CHAR(4) NOT NULL, aliquota_pis NUMERIC(5,2) DEFAULT 0 NOT NULL, aliquota_cofins NUMERIC(5,2) DEFAULT 0 NOT NULL, valor_pis NUMERIC(12,2) DEFAULT 0 NOT NULL, valor_cofins NUMERIC(12,2) DEFAULT 0 NOT NULL, reducao_cofins NUMERIC(6,3) DEFAULT 0 NOT NULL, reducao_pis NUMERIC(6,3) DEFAULT 0 NOT NULL, ultimo_custo_contabil NUMERIC(12,6) DEFAULT 0 NOT NULL, ultimo_custo_real NUMERIC(12,6) DEFAULT 0 NOT NULL, ecf_hash TEXT, codigo_usuario_cancelamento INTEGER, data_cancelamento TIMESTAMP(0), cst_pis CHAR(2) NOT NULL, cst_cofins CHAR(2) NOT NULL, base_calculo_pis NUMERIC(12,2) DEFAULT 0 NOT NULL, base_calculo_cofins NUMERIC(12,2) DEFAULT 0 NOT NULL, valor_desconto NUMERIC(12,4) DEFAULT 0 NOT NULL, valor_acrescimo NUMERIC(12,4) DEFAULT 0 NOT NULL,CONSTRAINT pk_ecf_cupom_lanctos_numord PRIMARY KEY (numero_controle, numero_ordem), CONSTRAINT fk_ecf_cupom_lanctos_numctl FOREIGN KEY (numero_controle) REFERENCES ecf_cupom(numero_controle), CONSTRAINT fk_ecf_cupom_lanctos_codite FOREIGN KEY (codigo_item) REFERENCES item(codigo), CONSTRAINT fk_ecf_cupom_lanctos_codund FOREIGN KEY (codigo_unidade) REFERENCES unidade(codigo), CONSTRAINT fk_ecf_cupom_lanctos_codcfo FOREIGN KEY (codigo_cfop) REFERENCES codigos_fiscais_operacao(codigo), CONSTRAINT fk_ecf_cupom_lanctos_codsit FOREIGN KEY (codigo_situacao_icms) REFERENCES situacao_tributaria(codigo), CONSTRAINT fk_ecf_cupom_lanctos_usucan FOREIGN KEY (codigo_usuario_cancelamento) REFERENCES funcionario(codigo), CONSTRAINT fk_ecf_cupom_lanctos_cstpis FOREIGN KEY (cst_pis) REFERENCES situacao_tributaria_piscofins(codigo), CONSTRAINT fk_ecf_cupom_lanctos_cstcof FOREIGN KEY (cst_cofins) REFERENCES situacao_tributaria_piscofins(codigo),
CONSTRAINT ck_ecf_cupom_lanctos_numord CHECK (numero_ordem > 0), CONSTRAINT ck_ecf_cupom_lanctos_quanti CHECK (quantidade > 0), CONSTRAINT ck_ecf_cupom_lanctos_totite CHECK (total_item > 0) );ALTER TABLE orcamento_lanctos ADD CONSTRAINT fk_orcamento_lanctos_numcup FOREIGN KEY (numero_controle_cupom, numero_ordem_cupom) REFERENCES ecf_cupom_lanctos(numero_controle, numero_ordem); ALTER TABLE ped_entrada_devolucao_lanctos ADD CONSTRAINT fk_ped_entrada_devol_lanctos_numcup FOREIGN KEY (numero_controle_cupom, numero_ordem_cupom) REFERENCES ecf_cupom_lanctos(numero_controle, numero_ordem); /* ----------------------------------------------------------------------- */
CREATE TABLE ecf_cupom_pagamento ( numero_controle INTEGER NOT NULL, codigo_forma_pagamento INTEGER NOT NULL, valor_pagamento NUMERIC(12,2) DEFAULT 0 NOT NULL, codigo_usuario INTEGER NOT NULL, codigo_usuario_cancelamento INTEGER, data_cancelamento TIMESTAMP(0), codigo_cartao INTEGER, codigo_administradora INTEGER, numero_autorizacao INTEGER, numero_parcelas INTEGER, prazo_recebimento INTEGER DEFAULT 1 NOT NULL, taxa_parcela NUMERIC(5,2) DEFAULT 0 NOT NULL, ecf_hash TEXT,CONSTRAINT pk_ecf_cupom_pag_numfor PRIMARY KEY (numero_controle, codigo_forma_pagamento), CONSTRAINT fk_ecf_cupom_pag_numctl FOREIGN KEY (numero_controle) REFERENCES ecf_cupom(numero_controle), CONSTRAINT fk_ecf_cupom_pag_codfor FOREIGN KEY (codigo_forma_pagamento) REFERENCES forma_pagamento(codigo), CONSTRAINT fk_ecf_cupom_pag_codadm FOREIGN KEY (codigo_administradora) REFERENCES fornecedor(codigo), CONSTRAINT fk_ecf_cupom_pag_codusu FOREIGN KEY (codigo_usuario) REFERENCES funcionario(codigo), CONSTRAINT fk_ecf_cupom_pag_usucan FOREIGN KEY (codigo_usuario_cancelamento) REFERENCES funcionario(codigo)
);/* ----------------------------------------------------------------------- */
<<attachment: cgcesarsoares.vcf>>
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
