Boa noite a todos. * No momento ainda uso o Access 2003, mas em breve estarei migrando para o Access 2013.
1) Tenho uma tabela de Clientes = T09_Clientes
2) Tenho uma tabela de Conta Assinada = T091_ContaAssinada
Existe um Relacionamento de 1-para-vários entre as 02 tabelas dos campos: CodCliente (Autonumeração), IDCliente (Número. inteiro longo), respectivamente.
PS: Para tanto tem um formulário principal: F09_Clientes e um subformulário: F091_ContaAssinada
Objetivo: Cada Cliente teria uma Conta-Movimento que funcionaria como uma conta-corrente bancária. Tendo por base os seguintes critérios:
a. Cliente compra Créditos em valores (R$) à Empresa X;
b. Cliente usa esses Créditos como conta-corrente, onde:
....b1. Saldo inicial = Sempre será a 1ª compra de Créditos;
....b2. Pode usar esse Saldo inicial para pagar sua Despesa a partir do dia seguinte à data da 1ª compra de Créditos;
....b3. Pode comprar mais Créditos a qualquer momento e usar o Saldo atualizado para pagar Despesas;
....b4. Sempre terá um Saldo atual disponível de acordo com sua movimentação até zerar esse Saldo ou comprar mais Créditos;
....b5. E assim por diante ...
c. Precisaria que a cada lançamento de Crédito e/ou Débito do Cliente no subformulário fosse mostrado o Saldo atualizado de cada registro de acordo com essa movimentação.
d. Precisaria criar um Relatório que mostrasse: Crédito, Débito e Saldo Atual;
e. Precisaria criar um Relatório que mostrasse por período inicial e final pela data do campo ‘DataCompra’;
f. No formulário principal no campo não-acoplado (SaldoContaAssinada) colocar sempre o valor do Saldo atual do último registro lançado no subformulário.
Apesar de buscas no site, não achei nada que conseguisse resolver completamente minha questão, pois alguns tópicos indicam para arquivos-exemplo, mas os link’s não estão funcionando; alguns acredito por serem muito antigos, e outros não estão de acordo com minha demanda.
Consegui apenas um arquivo-exemplo: “soma corrente.mdb” que usei para começar, mesmo assim não funcionou a contento pelo seguinte:
No campo SALDO (ver imagem 01): apresenta a seguinte linha de comando:
=DSoma("[crédito]-[débito]";"[somacorrente]";"[ID]<=Formulários!somacorrente!ID")
Fiz uma adaptação para meu caso e ficou assim:
=DSoma("[ValorLucroVD]-[ValorDebitar]";"[T091_ContaAssinada]";"CodConta]<=Formulários!F09_Clientes!F091_ContaAssinada!CodConta")
Onde:
ValorLucroVD = Crédito
ValorDebitar = Débito
T091_ContaAssinada = Tabela do subformulário onde se lança os movimentos da Conta
CodConta = Campo autonumeração da Tabela ‘T091_ContaAssinada’
F09_Clientes = Formulário principal
F091_ContaAssinada = Subformulário vinculado ao principal.
Campo Mestre: CodCliente. Campo Filho: IDCliente.
Também tentei fazer assim, mas não funcionou:
=DSoma("[ValorLucroVD]-[ValorDebitar]";"[T091_ContaAssinada]";"CodConta]<=Parent!F09_Clientes!F091_ContaAssinada!CodConta")
Exemplo com ilustração (ver imagem 02):
Observem que apresenta no campo Saldo Atual: [#Erro], ou seja, não mostra o saldo inicial e nem os demais, de acordo com a movimentação inserida. Onde estaria o erro? Se na mesma rotina que usei do arquivo “soma corrente.mdb” (o mesmo está no arquivo enviado) está funcionando, conforme imagem 01?
Se alguém tiver algum arquivo-exemplo que contemple essa minha necessidade pode indicar o link para estudos e adequações ou disponibilizar para dowload, ou ainda, se alguém se dispor ajudar na resolução agradeço desde já.
PS: Segue arquivo em anexo para melhor visualização e compreensão.
1) Tenho uma tabela de Clientes = T09_Clientes
2) Tenho uma tabela de Conta Assinada = T091_ContaAssinada
Existe um Relacionamento de 1-para-vários entre as 02 tabelas dos campos: CodCliente (Autonumeração), IDCliente (Número. inteiro longo), respectivamente.
PS: Para tanto tem um formulário principal: F09_Clientes e um subformulário: F091_ContaAssinada
Objetivo: Cada Cliente teria uma Conta-Movimento que funcionaria como uma conta-corrente bancária. Tendo por base os seguintes critérios:
a. Cliente compra Créditos em valores (R$) à Empresa X;
b. Cliente usa esses Créditos como conta-corrente, onde:
....b1. Saldo inicial = Sempre será a 1ª compra de Créditos;
....b2. Pode usar esse Saldo inicial para pagar sua Despesa a partir do dia seguinte à data da 1ª compra de Créditos;
....b3. Pode comprar mais Créditos a qualquer momento e usar o Saldo atualizado para pagar Despesas;
....b4. Sempre terá um Saldo atual disponível de acordo com sua movimentação até zerar esse Saldo ou comprar mais Créditos;
....b5. E assim por diante ...
c. Precisaria que a cada lançamento de Crédito e/ou Débito do Cliente no subformulário fosse mostrado o Saldo atualizado de cada registro de acordo com essa movimentação.
d. Precisaria criar um Relatório que mostrasse: Crédito, Débito e Saldo Atual;
e. Precisaria criar um Relatório que mostrasse por período inicial e final pela data do campo ‘DataCompra’;
f. No formulário principal no campo não-acoplado (SaldoContaAssinada) colocar sempre o valor do Saldo atual do último registro lançado no subformulário.
Apesar de buscas no site, não achei nada que conseguisse resolver completamente minha questão, pois alguns tópicos indicam para arquivos-exemplo, mas os link’s não estão funcionando; alguns acredito por serem muito antigos, e outros não estão de acordo com minha demanda.
Consegui apenas um arquivo-exemplo: “soma corrente.mdb” que usei para começar, mesmo assim não funcionou a contento pelo seguinte:
No campo SALDO (ver imagem 01): apresenta a seguinte linha de comando:
=DSoma("[crédito]-[débito]";"[somacorrente]";"[ID]<=Formulários!somacorrente!ID")
Fiz uma adaptação para meu caso e ficou assim:
=DSoma("[ValorLucroVD]-[ValorDebitar]";"[T091_ContaAssinada]";"CodConta]<=Formulários!F09_Clientes!F091_ContaAssinada!CodConta")
Onde:
ValorLucroVD = Crédito
ValorDebitar = Débito
T091_ContaAssinada = Tabela do subformulário onde se lança os movimentos da Conta
CodConta = Campo autonumeração da Tabela ‘T091_ContaAssinada’
F09_Clientes = Formulário principal
F091_ContaAssinada = Subformulário vinculado ao principal.
Campo Mestre: CodCliente. Campo Filho: IDCliente.
Também tentei fazer assim, mas não funcionou:
=DSoma("[ValorLucroVD]-[ValorDebitar]";"[T091_ContaAssinada]";"CodConta]<=Parent!F09_Clientes!F091_ContaAssinada!CodConta")
Exemplo com ilustração (ver imagem 02):
Observem que apresenta no campo Saldo Atual: [#Erro], ou seja, não mostra o saldo inicial e nem os demais, de acordo com a movimentação inserida. Onde estaria o erro? Se na mesma rotina que usei do arquivo “soma corrente.mdb” (o mesmo está no arquivo enviado) está funcionando, conforme imagem 01?
Se alguém tiver algum arquivo-exemplo que contemple essa minha necessidade pode indicar o link para estudos e adequações ou disponibilizar para dowload, ou ainda, se alguém se dispor ajudar na resolução agradeço desde já.
PS: Segue arquivo em anexo para melhor visualização e compreensão.
- Anexos
- FMA_ClientesXContaCorrente.zip
- Você não tem permissão para fazer download dos arquivos anexados.
- (168 Kb) Baixado 108 vez(es)