problema com cadastro
Bom dia pessoal, tenho o seguinte problema que gostaria de resolver sem utilizar gambiarras(levo varios dias pensando como). Eu tenho um cadastro de clientes e um cadastro de contatos do cliente.
No momento de inserir um cliente eu cadastro seus contatos utilizando um clientdataset temporal, e depois do cliente ser inserido e eu ter seu codigo entao eu passo os contatos ao clientdataset ligado ao banco e faço o applyupdates.
Quando estou editando o cliente, o cadastro de contatos utiliza o clientdataset ligado ao banco.
Minha pergunta e: como trabalhar estes dois comportamentos diferentes sem ter que criar um form para cada caso de cadastro de contatos? é gambiarra criar dois forms?? Obrigado pela ajuda..
No momento de inserir um cliente eu cadastro seus contatos utilizando um clientdataset temporal, e depois do cliente ser inserido e eu ter seu codigo entao eu passo os contatos ao clientdataset ligado ao banco e faço o applyupdates.
Quando estou editando o cliente, o cadastro de contatos utiliza o clientdataset ligado ao banco.
Minha pergunta e: como trabalhar estes dois comportamentos diferentes sem ter que criar um form para cada caso de cadastro de contatos? é gambiarra criar dois forms?? Obrigado pela ajuda..
Eduardocar83
Curtidas 0
Respostas
Eduardocar83
20/08/2008
esqueci de falar, utilizo dbexpress. SqlDataset + Provider + ClientDataSet
GOSTEI 0
Paulo
20/08/2008
Não entendi bem sua dúvida, mas TabSheet não resolve?
GOSTEI 0
Pestana_
20/08/2008
tambem não ficou bem claro pra mim!
Se for o caso de incluir contatos de cliente no banco não há necessidade de criar um novo form somente para este propósito, você pode fazer como o nosso amigo Paulo disse!
flw.
Se for o caso de incluir contatos de cliente no banco não há necessidade de criar um novo form somente para este propósito, você pode fazer como o nosso amigo Paulo disse!
flw.
GOSTEI 0
Eduardocar83
20/08/2008
Deixa eu tentar refazer minha pergunta, como fazer um formulario para mestre/detalhe, com codigo autoincremento para o mestre?
Nesse formulario eu insiro, modifico e consulto tambem.
Tipo quando eu insiro meus detalhes vao pra um clientdataset temporal desligado do banco. Depois de dar o applyupdates no mestre, entao eu pego o codigo do autoincremento, mando todos os detalhes para o clientdataset ligado ao banco e dou applyupdates.
Quando consulto os detalhes e direto no clientdataset ligado ao banco.
Como ter esses dois comportamentos em um mesmo formulario, tipo o dbgrid de detalhes as veces aponta para clientdataset1 e outras veces para clientdataset2
Ufaa, naum sei se consegui...
Nesse formulario eu insiro, modifico e consulto tambem.
Tipo quando eu insiro meus detalhes vao pra um clientdataset temporal desligado do banco. Depois de dar o applyupdates no mestre, entao eu pego o codigo do autoincremento, mando todos os detalhes para o clientdataset ligado ao banco e dou applyupdates.
Quando consulto os detalhes e direto no clientdataset ligado ao banco.
Como ter esses dois comportamentos em um mesmo formulario, tipo o dbgrid de detalhes as veces aponta para clientdataset1 e outras veces para clientdataset2
Ufaa, naum sei se consegui...
GOSTEI 0
Paulo
20/08/2008
Vejamos: Às vezes complicamos demais as coisas mais simples, não que seja o seu caso, mas achei ou não entendi direito, muito complicado uma coisa bem simples. Não estou aqui dizendo que está certo ou errado, pois não exatamente a sua necessidade, mas veja abaixo:
Eu nesse caso colocaria dois DBGrid, porque? Para que quando eu clicar no DBGrid mestre, o detalhe me mostre tudo referente aquele grupo. Componentes de acesso a dados criados em RunTime, normalmente os usamos para fazer uma determinada tarefa e destruimo-os imediatamente. Para componentes que duram o tempo em que o form está vivo, normalmente se usa componentes colocados mesmos, no seu caso, o Grid detalhe. Mas como disse antes, não sei se entendi bem sua dúvida. Caso não seja isso, poste a dúvida com exemplos, é mais intuitivo.
CDS1 >> Mestre
CDS2 >> Detalhe
DS1 >> Mestre
DS2 >> Detalhe
DBGrid1(Ambos), certo?Meu detalhe precisa do mestre, certo? Gravo no mestre o seguinte:
COD GRUPO
1 Borracha
2 Plástico
3 Papel
Então você pega um Grupo desse e grava seu detalhe,tipo:
GRUPO DESCRICAO
Borracha Tapete para auto
Borracha Coifa
Papel Papel Sulfite
Eu nesse caso colocaria dois DBGrid, porque? Para que quando eu clicar no DBGrid mestre, o detalhe me mostre tudo referente aquele grupo. Componentes de acesso a dados criados em RunTime, normalmente os usamos para fazer uma determinada tarefa e destruimo-os imediatamente. Para componentes que duram o tempo em que o form está vivo, normalmente se usa componentes colocados mesmos, no seu caso, o Grid detalhe. Mas como disse antes, não sei se entendi bem sua dúvida. Caso não seja isso, poste a dúvida com exemplos, é mais intuitivo.
GOSTEI 0