Mini-Curso
Contas a Pagar e Cobrança
Crie um sistema completo com Delphi, Firebird 2.0 e dbExpress - Parte 3
Nessa terceira parte do nosso mini-curso do Sistema de Contas a Pagar e Cobrança, onde estamos desenvolvendo o aplicativo SysPague, veremos como criar a tela de cadastro de Contas a Receber. Veremos também como criar um recurso bastante útil ao usuário: duplicação de lançamentos de contas a pagar e a receber.
Esse recurso pode ser utilizado para duplicar contas que se repetem naturalmente todo mês (contas parceladas), tais como financiamentos, leasings, compras a prazo e parcelamentos de modo geral. Esse recurso foi recomendado pelo leitor Francisco J. Riva que enviou e-mail com a dica.
Daremos continuidade ao curso desenvolvendo o cadastro de contas a receber como mencionado anteriormente, para isso precisamos alterar o banco de dados incluindo mais uma tabela.
Alterando o banco de dados de exemplo
Assim como fizemos nos artigos anteriores criaremos mais uma tabela no banco de dados utilizando o aplicativo IBExpert. Após conectar ao banco de dados, clique com o botão direito sobre o item Tables e escolha a opção New Table. No alto da janela, aparecerá o nome da tabela sugerido, troque-o para “Contas_Receber”.
Em seguida para criar um campo, digite o nome em Field Name, selecione seu tipo em Field Type e marque o item Not Null (caso seja necessário). Caso prefira, execute o script da Listagem 1.
Listagem 1. Criação da tabela e índices da Contas_Receber
CREATE TABLE CONTAS_RECEBER (
CODIGOVARCHAR(20) NOT NULL,
CNPJVARCHAR(18) NOT NULL,
DESCRICAOVARCHAR(60) NOT NULL,
VLR_REALNUMERIC(15,2),
VLR_PAGONUMERIC(15,2),
JUROSNUMERIC(15,2),
MORANUMERIC(15,2),
DT_CADASTRO TIMESTAMP,
DT_VECTO TIMESTAMP,
DT_PAGTO TIMESTAMP,
BANCOINTEGER,
AGENCIAVARCHAR(10),
CONTAVARCHAR(10),
STATUSVARCHAR(1),
DT_ALTERACAO TIMESTAMP
);
ALTER TABLE CONTAS_RECEBER ADD CONSTRAINT
PK_CONTAS_RECEBER PRIMARY KEY (CODIGO, CNPJ);
ALTER TABLE CONTAS_RECEBER ADD CONSTRAINT
FK_CONTAS_RECEBER_BANCO FOREIGN KEY
(BANCO, AGENCIA, CONTA) REFERENCES CONTAS
(BANCO, AGENCIA, CONTA) ON UPDATE CASCADE;
ALTER TABLE CONTAS_RECEBER ADD CONSTRAINT
FK_CONTAS_RECEBER_CNPJ FOREIGN KEY (CNPJ)
" [...] continue lendo...