CONTROLE DE MENSALIDADE

MARIOANDRADE 04/08/2014 20:48:10
#440182
Meus amigos, estou com um grande problema aqui, ao tentar criar um programinha simples para controle de mensalidade me deparei com um monte de problemas.
Primeiro criei a tabela Clientes onde coloquei os campos como Nome, Dia_Vencimento, Pago etc. Depois vi a necessidade de um histórico, então criei a tabela TBMesRef onde ao alterar um pagamento do cliente ele busca nessa tabela e faz a alteração no mês correspondente. Até aqui tudo bem pois no momento que cadastro um cliente na tabela Clientes ele também cadastra na tbMesRef cadastrando o mês e ano de referencia como atuais.

Eu preciso que ele crie um mes de referencia para cada alteração que seja feita caso nao tenha sido criado, no caso o cliente cadastrado em Agosto
já é criado na tbMesRef um cadastro para as anotações do mes de agosto, então quando o programa iniciar ele tem que verificar se [Ô]Fulano[Ô] ja tem uma
referencia para o mes atual e caso nao tenha ele cria.

Dessa forma um único cliente terá varios registros na tbMesRef então a tbMesRef teria que ter 2 campos de códigos, um seria o código geral da tbMesRef
e o outro o código que vem da tabela Clientes , logo tenho que inserir um campo Cod_Cliente na tabela Clientes no momento do cadastro
os 2 códigos seriam iguais mas depois com a inclusão de cada mês_ref na tbMesRef o Cod_Cliente iria se repetir, mas o código seria incremental.
(não sei como fazer isso).

Espero que vocês consigam entender e me ajudar, lembrando que absolutamente toda ajuda é muito bem vinda, segue link do meu projeto.

https://www.dropbox.com/s/0vomxaqap1dze5t/ControleInternet.rar

PROFESSOR 04/08/2014 21:02:22
#440184
Pense um pouco melhor na base de dados: Ela é a peça fundamental. Cada minuto que perder com ela representa várias horas de programação que você vai poupar na manutenção e no desenvolvimento do executável/aplicativo.

Por exemplo, de forma bem simples, você pode fazer algo como:

Clientes = Uma tabela (código do cliente = autonumeração/identity para identificação do registro - por exemplo, codCliente);
MensalidadesDosClientes = Outra tabela (código do cliente vêm da tabela Clientes (foreign key) e também possui uma autonumeração/identity para identificar o registro - por exemplo, codMensalidade);
MensalidadesRecebidas = Outra tabela ainda (código da mensalidade vêm da tabela MensalidadesDosClientes (foreign key) e também possui uma autonumeração/identity para identificação do registro - por exemplo, codRecebimento).


MARIOANDRADE 04/08/2014 21:10:59
#440186
Compreendo sua colocação Professor, sou muito fraco em banco de dados por isso essa dificuldade, tentei fazer um código simples para que se o valor
do mês atual não fosse encontrado na tbMesRef ele importasse da tabela Clientes mas parei no meio pois nem sei se é possível importar dados de uma
tabela para a outra:

 Dim mes As Integer
Dim ano As Integer
mes = Month(DateValue(Now))
ano = Year(DateValue(Now))
ConexaoBD
rs.Open [Ô]select *from TBMesRef[Ô], db, 3, 3
Do Until rs.EOF
If rs(4) <> mes And rs(5) <> ano Then
[ô]Aqui entraria o código para importar todos os clientes da tabela Clientes
Loop



Continuo dizendo, toda ajuda é muito bem vinda.
NILSONTRES 04/08/2014 22:09:26
#440189
Resposta escolhida
é Possivel sim copiar dados de uma tabela para a a outra, Busque apostilas sobre querys sql, é importante estar afiado para desenvolver bem
e resolver esses problemas, mas o principal é elaborar muito bem as tabelas e campos antes de iniciar um sistema , pois as necessidades vão
aparacer aos poucos, e quanto menos vc pensou antes de criar as tabelas, mais trabalho e dificuldade vai ter depois.
Gostaria de poder ajudar mais, mas não consegui entender bem o que acontece no seu caso. Apenas identifico uma falta de planejamento,
isso não quer dizer que vc é fraco em banco de dados, vc é inexperiente em desenvolvimento de sistemas complexos.
Não sei se vc esta comercializando o mesmo, mas o conselho que dou é criar projetos testes e apanhar bastante neles.
MARIOANDRADE 04/08/2014 22:27:18
#440191
Nilson, o projeto felizmente não é pra comercio, é para um amigo meu que tem uma pequena empresa de internet, ele só quer um controle de mensalidade simples, eu achei que seria capaz de fazer, se alguém tiver um celular da claro ou da vivo e quiser ligar à cobrar para 75-8805-9776 eu retorno e posso explicar o que eu preciso via teamviewer e pelo celular (falo de graça pra qualquer claro do Brasil e a R$0,05 por minuto para qualquer vivo) então se possivel me liguem ficarei muito grato.
Tópico encerrado , respostas não são mais permitidas