Índice

 

Usando o componente do CashPreview

O componente do CashPreview tem duas formas de operar:

  • em modo teste, na fase de desenvolvimento do programa;
  • em modo de produção, quando já estiver instalado no computador do usuário final.

No modo de testes, usado pelo desenvolvedor, o banco de dados utilizado não poderá ter mais do que cem lançamentos. No modo de produção, esta limitação não existe, mas será exigido que o CashPreview esteja registrado na máquina em que o programa estiver sendo executado. Para criar um banco de dados de teste a ser entregue ao desenvolvedor, o que pode ser feito é criar um banco de dados vazio com o CashPreview usando o menu "Banco de dados \ Criar novo banco de dados" e importar-se de um banco de dados de produção os dados dos cadastros de contas, tipos de receitas/despesas e centros de custo/lucro usando o menu "Operações \ Importar plano de contas". Pode-se então cadastrar alguns clientes/fornecedores fictícios para fins de teste.

Dentro da aplicação que for usar o componente para acessar o banco de dados do CashPreview, a primeira ação deve ser a chamada ao comando InicializarCP. Este comando é um método da classe CashPreview  do componente, que por ser uma classe do tipo "Global Multiuse" já é instanciada automaticamente logo no início da aplicação que usa o componente. Seus métodos e propriedades públicas passam a ser globais como qualquer procedimento público do programa definido com escopo global. Não há necessidade de usar a sintaxe "CashPreview.InicializarCP", mas apenas "InicializarCP". Os argumentos que são passados na chamada a este comando e também a outros serão detalhados mais adiante, mas antes vamos fazer uma apresentação sucinta dos demais comandos oferecidos pelo componente:

  • AbrirRecordsetCP

Este comando é usado para submeter-se o texto de uma consulta e obter-se como retorno um objeto do tipo Dao.Recordset. O recordset retornado será apenas de leitura, não podendo receber inclusões, alterações ou exclusões. Útil para a coleta de informações sobre o banco de dados na geração de novos gráficos e relatórios. A documentação de todas as tabelas do banco de dados e seus respectivos campos será apresentada mais adiante.

  • FazerLancamentoCP

Este comando é usado para introduzir lançamentos no banco de dados. Retorna um objeto da classe CLancamento com todos os dados do lançamento após a sua introdução no banco de dados.

  • FazerTransferenciaCP

Este comando é usado para introduzir o par de lançamentos relativos a uma transferência de fundos entre duas contas de capital. Retorna uma coleção de objetos da classe CLancamento contendo os dois lançamentos criados.

  • BaixarLancamentoCP

Usado para informar a baixa e o tipo de baixa a se aplicar a um lançamento.

  • EstornarLancamentoCP

Usado para fazer o estorno de um lançamento.

  • ExcluirLancamentoCP

Usado para excluir um lançamento.

 

Inicializando o componente

Para iniciar o uso do componente, é necessário chamar o comando InicializarCP. Abaixo está a assinatura do comando no Visual Basic 6.

Public Sub InicializarCP(ModoOperacao As CP_MODO_OPERACAO, CaminhoBancoDeDados As String, IdUsuario As String, SenhaUsuario As String)

 

Argumentos:

ModoOperacao: pode ser o valor CP_MODO_TESTE ou CP_MODO_PRODUCAO. No modo CP_MODO_TESTE, o banco de dados não poderá ter mais do que cem lançamentos. No modo CP_MODO_PRODUCAO, este limite não existe, mas será verificado se o CashPreview se encontra registrado no computador em que o programa estiver sendo executado.

CaminhoBancoDeDados: o caminho do arquivo do banco de dados do CashPreview a ser utilizado pelo programa.

IdUsuario: o identificação de usuário para fins de login no CashPreview. Deve ser um usuário cadastrado no CashPreview como sendo do tipo Administrador.

SenhaUsuario: a senha do usuário acima para fins de login no CashPreview.

Obs.: No caso de um banco de dados criado apenas para testes na fase de desenvolvimento da aplicação, pode-se usar o usuário padrão "Admin" com a senha "Admin" desde que não tenha sido desativado.

Consultando o banco de dados

A forma de se fazer consultas ao banco de dados do CashPreview é usando o comando AbrirRecordsetCP. Veja abaixo a assinatura deste comando no Visual Basic 6.

Public Function AbrirRecordsetCP(Sql As String, Tipo As DAO.RecordsetTypeEnum) As DAO.Recordset

 

Argumentos:

SQL: uma instrução do tipo SELECT usando a sintaxe da linguagem SQL do MS Access 2000.

Tipo: o tipo de recordset a ser retornado.

Retorno : um objeto DAO.Recordset apenas de leitura contendo os registros selecionados pela consulta.

 

Fazendo lançamentos

 

Para se introduzir um lançamento no banco de dados do CashPreview, deve ser usado o comando FazerLancamentoCP. Veja abaixo a assinatura deste comando no Visual Basic 6.

Public Function FazerLancamentoCP(DataPrevisao As Date, _

       DataReferencia As Date, _

        Valor As Currency, Historico As String, _

        CodConta As String, CodRecDesp As String, _

        Optional CodCentroDeCusto As String = "", Optional IdParceiroComl As Long = 0, _

       Optional Documento As String = "") As CLancamento

 

Argumentos:

DataPrevisao: a data em que o lançamento se realizará. Corresponde ao campo Data na tabela Lancamentos.

DataReferencia: a data a que se refere o lançamento. Corresponde ao campo DataReferencia na tabela Lancamentos.

Valor: o valor do lançamento. Corresponde ao campo Valor na tabela Lancamentos.

Se for uma entrada, deve ser lançado com valor positivo; se for uma saída, deve ser lançado com valor negativo.

Histórico: uma descrição para o lançamento. Corresponde ao campo Historico na tabela Lancamentos.

CodConta: o código da conta de capital, que corresponde ao campo Codigo na tabela Contas.

 

CodRecDesp: o código da receita/despesa, que corresponde ao campo Codigo na tabela TiposMovimentacoes. Indica o tipo de movimentação representada pelo lançamento. Se for um tipo cadastrado para aceitar entradas, o valor do lançamento terá que ser positivo; se for um tipo cadastrado para saídas, o valor do lançamento terá que ser negativo.

CodCentroDeCusto: o código do centro de custo/lucro, que corresponde ao campo "Codigo" na tabela CentrosDeCusto. Não obrigatório.

IdParceiroComl: o código do cliente/fornecedor, que corresponde ao campo "Id" na tabela ParceirosComerciais. Não obrigatório.

Documento: corresponde ao campo Documento na tabela Lancamentos. Não obrigatório.

Retorno : um objeto da classe CLancamento, que contém, nas suas propriedades, os valores dos campos do registro do lançamento inserido pelo comando.

Fazendo transferências de fundos

 

Para se transferir um valor de uma conta de capital para outra, deve-se usar o comando FazerTransferenciaCP. Veja abaixo a assinatura deste comando no Visual Basic 6.

Public Function FazerTransferenciaCP(Transferencia As CTransferencia) As Collection

 

Argumentos:

Transferencia: um objeto da classe CTransferencia da biblioteca do componente. Nas propriedades deste objeto, são informados os dados necessários para se incluir os dois lançamentos relativos à transferência. Um lançamento será usado para dar saída do valor de uma conta de capital, enquanto o outro lançamento será usado para dar entrada do mesmo valor na conta de destino.

Retorno : um objeto da classe Collection contendo dois objetos da classe CLancamento que correspondem aos lançamentos gerados para a transferência.

Baixando lançamentos

 

Para dar baixa em lançamentos, usa-se o comando BaixarLancamentoCP. Veja abaixo a assinatura deste comando no Visual Basic 6.

Public Function BaixarLancamentoCP(Baixa As CBaixa) As CLancamento

 

Argumentos:

Baixa: um objeto da classe CBaixa do componente. Nas propriedades deste objeto estão as informações sobre o lançamento a ser baixado, o tipo de baixa, valor e data de realização. Quando o lançamento for parte de uma transferência, o lançamento complementar na transferência também será baixado.

Retorno: um objeto da classe CLancamento contendo os dados do lançamento após a baixa.

Estornando lançamentos

 

Para se estornar um lançamento, usa-se o comando EstornarLancamentoCP. Este comando faz com que o lançamento seja marcado como estornado e com que seja criado um lançamento de estorno exatamente igual ao estornado, mas com valor de sinal contrário para que seja anulada a projeção do valor do lançamento estornado nos saldos futuros. Se o lançamento pertencer ao par de lançamentos relativos a uma transferência, o outro lançamento também será estornado. Veja abaixo a assinatura deste comando no Visual Basic 6.

 

Public Sub EstornarLancamentoCP(HistoricoDoEstorno As String, IdLancamento As Long, IdConcorrencia As Long)

 

Argumentos:

 

HistoricoDoEstorno: a descrição que deve ser adicionada ao campo Historico do lançamento de estorno.

IdLancamento: o valor do campo Id do lançamento a ser estornado.

IdConcorrencia: o valor do campo usado para identificar a versão de registro do lançamento a ser estornado. Este campo serve para se controlar a atualidade dos dados do registro. Sempre que um registro sofre algum tipo de alteração, este campo é acrescido em 1. Desta forma é possível condicionar uma atualização de registro ao fato de a versão acessada pelo usuário que comandou a atualização permanecer a mesma no banco de dados. Num ambiente multiusuários, é importante garantir que os dados modificados por um usuário não estejam diferentes do que ele pensa estarem antes de comandar uma atualização.

Excluindo lançamentos

 

Para se excluir um lançamento, usa-se o comando ExcluirLancamentoCP. Se o lançamento pertencer ao par de lançamentos relativos a uma transferência, o outro lançamento também será excluído. Veja abaixo a assinatura deste comando no Visual Basic 6.

Public Sub ExcluirLancamentoCP(IdLancamento As Long, IdConcorrencia As Long)

 

Argumentos:

 

IdLancamento: o valor do campo Id do lançamento a ser excluído.

IdConcorrencia: o valor do campo usado para identificar a versão de registro do lançamento a ser excluído. Este campo serve para se controlar a atualidade dos dados do registro. Sempre que um registro sofre algum tipo de alteração, este campo é acrescido em 1. Desta forma é possível condicionar uma atualização de registro ao fato de a versão acessada pelo usuário que comandou a atualização permanecer a mesma no banco de dados. Num ambiente multiusuários, é importante garantir que os dados modificados por um usuário não estejam diferentes do que ele pensa estarem antes de comandar uma atualização.

 

Classes da biblioteca

 

A seguir, estão explicadas as classes disponíveis na biblioteca do CashPreview. São classes usadas para conter informações sobre lançamentos, baixas e transferências e que, ora são tipos de objetos passados como argumentos nas chamadas aos comandos da biblioteca, ora são tipos de objetos retornados por algumas destas chamadas.

Classe CLancamento: usada para conter os valores dos campos de um registro de lançamento. É usada como valor de retorno em algumas chamadas a comandos da biblioteca.

 

Métodos:

 

CarregarDeRegistro: recebe como argumento um objeto do tipo Dao.Recordset posicionado no registro do lançamento para que os valores dos campos do registro possam ser carregados nas propriedades correspondentes do objeto CLançamento.

Copiar: retorna um objeto da classe CLancamento com os mesmos valores de propriedades do lançamento.

Propriedades:

 

IdConcorrencia: corresponde ao campo IdConcorrencia na tabela Lancamentos.

Id: corresponde ao campo Id na tabela Lancamentos.

CodConta: corresponde ao campo CodConta na tabela Lancamentos.

CodRecDesp: corresponde ao campo CodRecDesp na tabela Lancamentos.

CodCentroCusto: corresponde ao campo CodCentroCusto na tabela Lancamentos.

IdParceiroComl: corresponde ao campo IdParceiroComl na tabela Lancamentos.

Data: corresponde ao campo Data na tabela Lancamentos.

DataReferencia: corresponde ao campo DataReferencia na tabela Lancamentos.

DataVencimento: ainda não está sendo usada, mas deve ser igualada ao valor de Data.

DataId: corresponde ao campo DataId na tabela Lancamentos.

Documento: corresponde ao campo Documento na tabela Lancamentos.

Historico: corresponde ao campo Historico na tabela Lancamentos.

Estornado: corresponde ao campo Estornado na tabela Lancamentos.

Estorno: corresponde ao campo Estorno na tabela Lancamentos.

IdUsuario: corresponde ao campo IdUsuario na tabela Lancamentos.

Realizado: corresponde ao campo Realizado na tabela Lancamentos.

Transferencia: corresponde ao campo Transferencia na tabela Lancamentos.

Valor: corresponde ao campo Valor na tabela Lancamentos.

ValorPago: ainda não está sendo usada e não precisa ser informada.

SaldoConta: corresponde ao campo SaldoConta na tabela Lancamentos.

SaldoRecDesp: corresponde ao campo SaldoRecDesp na tabela Lancamentos.

SaldoCentroCusto: corresponde ao campo SaldoCentroCusto na tabela Lancamentos.

SaldoParceiroComl: corresponde ao campo SaldoParceiroComl na tabela Lancamentos.

SaldoGlobal: corresponde ao campo SaldoGlobal na tabela Lancamentos.

 

Classe CTransferencia: usada para conter as informações passadas como argumento nas chamadas ao comando FazerTransferenciaCP.

Métodos: nenhum.

Propriedades:

 

CodContaOrigem: código da conta de capital de onde partirá a transferência. Corresponde ao campo Codigo na tabela Contas.

CodContaDestino: código da conta de capital para onde se dará a transferência. Corresponde ao campo Codigo na tabela Contas.

Valor: o valor a ser transferido.

DataDaTransferencia: a data em que os lançamentos da transferência se darão.

HistoricoSaida: informação que constará no campo Historico do lançamento de saída da conta de origem.

HistoricoEntrada: informação que constará no campo Historico do lançamento de entrada na conta de destino.

DocumentoSaida: não obrigatório. Informação que constará no campo Documento do lançamento de saída.

DocumentoEntrada: não obrigatório. Informação que constará no campo Documento do lançamento de entrada.

Classe CBaixa: usada para conter as informações passadas como argumento nas chamadas ao comando BaixarLancamentoCP.

Métodos:nenhum.

Propriedades:

 

TipoBaixa: um valor da enumeração TIPO_BAIXA, que indica se a baixa é total, parcial ou como não-realizado.

DataRealizacao: data em que o lançamento se realizou. Somente considerada para as baixas totais.

ValorBaixado: o valor a ser baixado. Somente deve ser alterado no caso de baixas parciais. Não pode ser de sinal diferente do valor original do lançamento. Não pode ser igual a zero.

IdLancamento: valor do campo Id do lançamento a ser baixado.

IdConcorrencia: valor do campo IdConcorrencia do lançamento a ser baixado.