Problemas com DataSet Paradox
Tenho uma aplicação que roda em paradox, o problema é que no menu principal quando chamo o formulario de clientes, eu ativo a tabela clientes mas o formulario não busca os dados, e quando eu vou ver o dataset dos componentes do formulario está acusando que está fechado, ou seja, está olhando o dataset errado, mas em momento algum eu mudo o dataset. Porque isso ocorre?
Victor_sollo
Curtidas 0
Respostas
Massuda
11/06/2008
[quote:8789a3765d=´Moderação´][color=red:8789a3765d]Título/texto editado por Massuda
Por favor, não use apenas letras maiúsculas no título/texto.
No caso de reincidência, seus tópicos poderão vir a ser bloqueados.
Leia as :arrow: [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]Regras de Conduta[/url] do fórum.[/color:8789a3765d][/quote:8789a3765d]
Por favor, não use apenas letras maiúsculas no título/texto.
No caso de reincidência, seus tópicos poderão vir a ser bloqueados.
Leia as :arrow: [url=http://forum.clubedelphi.net/viewtopic.php?t=6689]Regras de Conduta[/url] do fórum.[/color:8789a3765d][/quote:8789a3765d]
GOSTEI 0
Lucas.corp
11/06/2008
mande por programação ativar esse dataset e os componentes do formulário receberem o registro
GOSTEI 0
Victor_sollo
11/06/2008
Bom Obrigado pelas respostas mas não me ajudaram até o momento.
Respondendo ao Sufolk:
Na aplicação tem um formulário Principal, um dataModule e o Formulário que eu estou chamando no caso o formulário de clientes.
Quando clico no botão ´cadastro de clientes´ no formulário Principal se dão estes comandos:
//--<< desabilita o menu >>---------------------------------------------------
barra_menu.Enabled := false;
barra_faturamento.Items[3].ImageIndex := 1;
tab1.cliente.Active := true; //´tab1´ -> DataModule que possui a tabela
//´cliente´ e o ´cliente1´->DataSource ligado
//a tabela ´cliente´
//--<< cria o formulario >>----------------------------------------------------
if CadastroCliente = nil then
CadastroCliente := TCadastroCliente.Create ( Application );
CadastroCliente.Show;
//--<<fim codigo>>------------------------------------------------
E no Formuláro de Cliente por exemplo no DBEdit1, na propriedade DataSource está assim: ´tab1.cliente1´
quando executa o comando:´CadastroCliente.Show´ o formulário aparece em branco sendo que contém registros.
Ah! Só mais uma dúvida, todas as units aparecem somente o nome no Delphi tipo:´Cadastro_Clientes.pas´, mas com a unit do DataModule ´tab1´, aparece o path inteiro tipo: ´\\Server\[Paradox.Fontes]\[Sistema]\tabelas1.pas´, será isso também mais um motivo pro erro? Aguardo Respostas
Os Formulários só funcionam normal se eu der o comando:´DBEdit1.DataSource.DataSet.Active := True;´, mas fazer isso no código inteiro vai dar uma canseira hehehe! gostaria de uma solução!
Respondendo ao Sufolk:
Na aplicação tem um formulário Principal, um dataModule e o Formulário que eu estou chamando no caso o formulário de clientes.
Quando clico no botão ´cadastro de clientes´ no formulário Principal se dão estes comandos:
//--<< desabilita o menu >>---------------------------------------------------
barra_menu.Enabled := false;
barra_faturamento.Items[3].ImageIndex := 1;
tab1.cliente.Active := true; //´tab1´ -> DataModule que possui a tabela
//´cliente´ e o ´cliente1´->DataSource ligado
//a tabela ´cliente´
//--<< cria o formulario >>----------------------------------------------------
if CadastroCliente = nil then
CadastroCliente := TCadastroCliente.Create ( Application );
CadastroCliente.Show;
//--<<fim codigo>>------------------------------------------------
E no Formuláro de Cliente por exemplo no DBEdit1, na propriedade DataSource está assim: ´tab1.cliente1´
quando executa o comando:´CadastroCliente.Show´ o formulário aparece em branco sendo que contém registros.
Ah! Só mais uma dúvida, todas as units aparecem somente o nome no Delphi tipo:´Cadastro_Clientes.pas´, mas com a unit do DataModule ´tab1´, aparece o path inteiro tipo: ´\\Server\[Paradox.Fontes]\[Sistema]\tabelas1.pas´, será isso também mais um motivo pro erro? Aguardo Respostas
Os Formulários só funcionam normal se eu der o comando:´DBEdit1.DataSource.DataSet.Active := True;´, mas fazer isso no código inteiro vai dar uma canseira hehehe! gostaria de uma solução!
GOSTEI 0
Emerson Nascimento
11/06/2008
faça o que o lucas.corp disse, ligue-as em tempo de execução.
assim:
//--<< desabilita o menu >>---------------------------------------------------
barra_menu.Enabled := false;
barra_faturamento.Items[3].ImageIndex := 1;
tab1.cliente.Active := true; //´tab1´ -> DataModule que possui a tabela
// ´cliente´ e o ´cliente1´ -> DataSource ligado a tabela ´cliente´
cliente.dataset := tab1.cliente; // [b:b5e7688aed]<<-- liga o datasource ao dataset[/b:b5e7688aed]
cliente1.dataset := tab1.cliente; // [b:b5e7688aed]<<-- liga o datasource ao dataset[/b:b5e7688aed]
//--<< cria o formulario >>----------------------------------------------------
if CadastroCliente = nil then
CadastroCliente := TCadastroCliente.Create ( Application );
CadastroCliente.Show;
//--<<fim codigo>>-
quanto à unit ser exibida com o caminho completo, é porque ela está gravada numa pasta diferente da pasta do projeto (dpr).
assim:
//--<< desabilita o menu >>---------------------------------------------------
barra_menu.Enabled := false;
barra_faturamento.Items[3].ImageIndex := 1;
tab1.cliente.Active := true; //´tab1´ -> DataModule que possui a tabela
// ´cliente´ e o ´cliente1´ -> DataSource ligado a tabela ´cliente´
cliente.dataset := tab1.cliente; // [b:b5e7688aed]<<-- liga o datasource ao dataset[/b:b5e7688aed]
cliente1.dataset := tab1.cliente; // [b:b5e7688aed]<<-- liga o datasource ao dataset[/b:b5e7688aed]
//--<< cria o formulario >>----------------------------------------------------
if CadastroCliente = nil then
CadastroCliente := TCadastroCliente.Create ( Application );
CadastroCliente.Show;
//--<<fim codigo>>-
quanto à unit ser exibida com o caminho completo, é porque ela está gravada numa pasta diferente da pasta do projeto (dpr).
GOSTEI 0
Victor_sollo
11/06/2008
Galera foi mal! mas foi um erro de primário que cometi!! fico ate envergonhado! hehe!
O problema era que os datamodules do projeto estavam já auto-criados, e no momento que estava criando o Formulário de Menu-Principal eu recriava os datamodules assim os componenetes perdiam a referencia(nem sei porquê?). Vlw!!
O problema era que os datamodules do projeto estavam já auto-criados, e no momento que estava criando o Formulário de Menu-Principal eu recriava os datamodules assim os componenetes perdiam a referencia(nem sei porquê?). Vlw!!
GOSTEI 0
Victor_sollo
11/06/2008
Tenho uma aplicação que roda em paradox, o problema é que no menu principal quando chamo o formulario de clientes, eu ativo a tabela clientes mas o formulario não busca os dados, e quando eu vou ver o dataset dos componentes do formulario está acusando que está fechado, ou seja, está olhando o dataset errado, mas em momento algum eu mudo o dataset. Porque isso ocorre?
GOSTEI 0