Artigo Clube Delphi 90 - Contas a Pagar e Cobrança - Parte 4

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

Chegamos a quarta parte do nosso mini-curso Sistema de Contas a Pagar e Cobrança onde estamos vendo alguns dos principais recursos em aplicações dessa natureza.

Esse artigo faz parte da revista Clube Delphi Edição 90. Clique aqui para ler todos os artigos desta edição

Mini-curso

Contas a Pagar e Cobrança

Crie um sistema completo com Delphi, Firebird 2.0 e dbExpress - Parte 4

 

Chegamos a quarta parte do nosso mini-curso Sistema de Contas a Pagar e Cobrança onde estamos vendo alguns dos principais recursos em aplicações dessa natureza. Uma aplicação de contas a pagar e cobrança não se resume apenas em entradas e saídas de caixa. Deve-se pensar também em fluxo de caixa e geração de boletos bancários para cobrança, um dos carros-chefe da aplicação.

Para iniciarmos nosso artigo, veremos rapidamente o que foi criado no exemplo anterior:

·         Cadastro de contas a receber;

·         Manutenção do Data Module principal para criação da tabela Contas_Receber;

·         Criação do recurso de duplicação de contas parceladas;

 

Daremos continuidade ao curso entendendo e desenvolvendo outro recurso bastante importante: Geração de texto para Cobrança Escritural. Nesse artigo veremos como fazer a geração do arquivo texto para envio à instituição bancária que por sua vez se encarregará de gerar os boletos e envio dos mesmos efetuando desta forma a cobrança bancária.

 

Alterando o banco de dados de exemplo

Diferentemente dos artigos anteriores não precisaremos criar tabelas. Dessa vez criaremos uma Stored Procedure selecionável que resultará os dados necessários para geração dos arquivos de remessa.

Uma Stored Procedure selecionável é basicamente uma função criada no banco de dados capaz de preencher um ou mais parâmetros de saída que posteriormente serão usados pela aplicação Delphi como se fosse uma tabela comum.

Nossa Stored Procedure fará um filtro na tabela de contas a receber usando como parâmetros de entrada duas datas. Essas datas serão usadas na cláusula Where da SP (“Stored Procedure”) onde faremos o filtro no campo DT_VECTO, ou seja, filtraremos todos os registros de contas a receber que estejam entre as duas datas recebidas.

Será levado em consideração também se o registro é diferente de “I” (“inativo”) e “B” (“baixado”). Assim evitamos enviar um título inativo por meio de cancelamento/exclusão ou ainda que tenha sido liquidado (“baixado”).

Para criar nossa SP selecionável abra o IBExpert e conecte-se a base de dados de exemplo SysPague. Em seguida clique com o botão direito em Procedure e selecione New Procedure. Repare que o IBExpert exibe, em seu editor, uma divisão onde encontramos os botões Input Parameters, Output Parameters, Variables e Cursor. E mais acima podemos ver uma área vazia com os títulos Name, Type, Size, Scale, Default Source, Subtype, Charset e Description. É nessa área que criaremos os parâmetros de entrada (“Input Parameters”) e saída (“Output Parameters”) que por sinal se assemelha bastante com a criação de campos em uma tabela.

Pois bem, clique em Input Parameters e com o botão direito do mouse na área vazia selecione a opção Append parameter/variable ou localize este botão logo acima dessa área e clique-o. Um novo parâmetro será criado, agora basta modificar seu Name para “DT_INICIO” e seu Type para “Timestamp” deixando o restante dos itens com seus valores padrão. Repita o processo e crie um parâmetro chamado “DT_FIM” também como “Timestamp” em seu Type.

Nesse momento acabamos de criar dois parâmetros de entrada que serão usados em nossa aplicação. Enviaremos para a Stored Procedure uma data de início e outra de fim, assim nossa SP selecionará automaticamente o que deverá ser enviado à instituição.

Agora vamos aos parâmetros de saída chamados de Output Parameters. São eles que nossa SP alimentará e que serão utilizados pelo nosso sistema como se fosse uma tabela comum do banco. Portanto clique no item Output Parameters e repita os passos anteriores incluindo os parâmetros da Tabela 1.

 

Campo

Tipo/Tamanho

CNPJ

VarChar(18)

VALOR_REAL

Numeric (15,2)

DT_CADASTRO

TimeStamp

DT_VECTO

TimeStatmp

CODIGO

VarChar(20)

RAZAO

VarChar(150)

ENDERECO

VarChar(100)

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?