Atualiza codigo
Nas Aplicaçoes o codigo entra automatico quando inserta .
Quando abre a tabela e vc inserta ele atualiza codigo normal so que depois que salva e inserta novamente ele nao atualiza continua salvando com mesmo codigo do primeiro e quando fecha a from e abre de novo atualiza como resolvo ?
Quando abre a tabela e vc inserta ele atualiza codigo normal so que depois que salva e inserta novamente ele nao atualiza continua salvando com mesmo codigo do primeiro e quando fecha a from e abre de novo atualiza como resolvo ?
Felipe Barlera
Curtidas 0
Respostas
Ricardo Rodrigues
07/10/2013
Nas Aplicaçoes o codigo entra automatico quando inserta .
Quando abre a tabela e vc inserta ele atualiza codigo normal so que depois que salva e inserta novamente ele nao atualiza continua salvando com mesmo codigo do primeiro e quando fecha a from e abre de novo atualiza como resolvo ?
Quando abre a tabela e vc inserta ele atualiza codigo normal so que depois que salva e inserta novamente ele nao atualiza continua salvando com mesmo codigo do primeiro e quando fecha a from e abre de novo atualiza como resolvo ?
Bom dia, primeiramente precisamos saber o que vc está utilizando, posta seu codigo pra analisarmos.
GOSTEI 0
Felipe Barlera
07/10/2013
vc quer codigo ou os componetes de conexao?
GOSTEI 0
Ricardo Rodrigues
07/10/2013
Pelo que entendi ,vc está utilizando generators ou está gerando o código manualmente ?
GOSTEI 0
Felipe Barlera
07/10/2013
gerando manualmente atraves de codigo no delphi e com generator no banco de dados.Usando conexao com dbexpress
GOSTEI 0
Felipe Barlera
07/10/2013
eu passando codigo de atualizaçao no before ou aflet nao resoveria?
GOSTEI 0
Felipe Barlera
07/10/2013
Código que estou usando para chamar código automatico
procedure Tfrmcadclientes.Button3Click(Sender: TObject);
var ultcod:integer;
begin
dmdados.tbl_clientes.Insert;
if dmdados.dsclientes.State in [dsInsert] then
begin
tblAuxClientes.Last;
ultcod:=tblAuxClientesCLI_CODIGO.Value+1;
dmdados.tbl_clientesCLI_CODIGO.Value:=ultcod;
dmdados.tbl_ClientesCLI_DATACADASTRO.asdatetime :=date;
dmdados.tbl_ClientesCLI_HORACADASTRO.Value:=time;
dmdados.tbl_clientesCLI_FOTO.Value:='C:\Users\Sside\Documents\Progamação\Monter Estoque\Imegens\sem-imagem2.bmp';
foto.Picture.LoadFromFile(dmdados.tbl_clientesCLI_FOTO.Value);
DBEdit5.SetFocus;
end;
end;
procedure Tfrmcadclientes.Button3Click(Sender: TObject);
var ultcod:integer;
begin
dmdados.tbl_clientes.Insert;
if dmdados.dsclientes.State in [dsInsert] then
begin
tblAuxClientes.Last;
ultcod:=tblAuxClientesCLI_CODIGO.Value+1;
dmdados.tbl_clientesCLI_CODIGO.Value:=ultcod;
dmdados.tbl_ClientesCLI_DATACADASTRO.asdatetime :=date;
dmdados.tbl_ClientesCLI_HORACADASTRO.Value:=time;
dmdados.tbl_clientesCLI_FOTO.Value:='C:\Users\Sside\Documents\Progamação\Monter Estoque\Imegens\sem-imagem2.bmp';
foto.Picture.LoadFromFile(dmdados.tbl_clientesCLI_FOTO.Value);
DBEdit5.SetFocus;
end;
end;
GOSTEI 0
Felipe Barlera
07/10/2013
NENHUM CODIGO PARA RESOLVER MEU PROBLEMA?
GOSTEI 0
Marcos Saffran
07/10/2013
Olá Felipe,
no after post você já tentou colocar o applyupdates(0) para o client data set?
no after post você já tentou colocar o applyupdates(0) para o client data set?
GOSTEI 0
Felipe Barlera
07/10/2013
vou tentar aqui obrigado
GOSTEI 0
Felipe Barlera
07/10/2013
amigo enseri o codigo no cliente data set mesmo apresentou erro de codigo fiz como me falou mesmo delphi apresenta erro de codigo .
tentei tb coloca tabala. applyupdates(0) nao deu certo tb como introduzo codigo corretamente ?o
Erro apresentado pelo delphi xe 4 : Undeclared identifer apllyupdates at lines .
tentei tb coloca tabala. applyupdates(0) nao deu certo tb como introduzo codigo corretamente ?o
Erro apresentado pelo delphi xe 4 : Undeclared identifer apllyupdates at lines .
GOSTEI 0
Marcos Saffran
07/10/2013
Olá Felipe,
no seu DataModule dmdados, selecione o evento afterpost do tbl_clientes e insira o código abaixo:
obs.: estou considerando que sua chave não seja autoincremet.
no seu DataModule dmdados, selecione o evento afterpost do tbl_clientes e insira o código abaixo:
procedure Tdmdados.tbl_clientesAfterPost(DataSet: TDataSet); begin tbl_clientes.applyupdates(0); tbl_clientes.refresh; end;
obs.: estou considerando que sua chave não seja autoincremet.
GOSTEI 0
Marcos Saffran
07/10/2013
amigo enseri o codigo no cliente data set mesmo apresentou erro de codigo fiz como me falou mesmo delphi apresenta erro de codigo .
tentei tb coloca tabala. applyupdates(0) nao deu certo tb como introduzo codigo corretamente ?o
Erro apresentado pelo delphi xe 4 : Undeclared identifer apllyupdates at lines .
tentei tb coloca tabala. applyupdates(0) nao deu certo tb como introduzo codigo corretamente ?o
Erro apresentado pelo delphi xe 4 : Undeclared identifer apllyupdates at lines .
ops, agora é que vi você colocou apllyupdates, o correto é applyupdates.
GOSTEI 0
Felipe Barlera
07/10/2013
ENSERI CODIGO DELPHI ACEITO SO QUE MESMO QUANDO INSERTA NAO ATUALIZA ESTA ATUALIZANDO CODIGO
enseri seguinte codido no cliente data set after post : UDmdados.dmdados.tbl_clientes.ApplyUpdates(0); esta correto?
Bando de Dados firebird 2.5
enseri seguinte codido no cliente data set after post : UDmdados.dmdados.tbl_clientes.ApplyUpdates(0); esta correto?
Bando de Dados firebird 2.5
GOSTEI 0
Marcos Saffran
07/10/2013
Você também colocou o Refresh?
pode ser o refresh ou então você fecha e abre o dataset.
se der coloque o código da procedure do afterpost toda.
pode ser o refresh ou então você fecha e abre o dataset.
se der coloque o código da procedure do afterpost toda.
GOSTEI 0
Felipe Barlera
07/10/2013
codigo : UDmdados.dmdados.tbl_clientes.ApplyUpdates(0);
UDmdados.dmdados.tbl_clientes.Refresh;
O mesmo não atualiza ao inserta depois de salvo 1 cadastro.
UDmdados.dmdados.tbl_clientes.Refresh;
O mesmo não atualiza ao inserta depois de salvo 1 cadastro.
GOSTEI 0
Marcos Saffran
07/10/2013
Felipe,
dá para mostrar os componentes de conexão e suas configurações?
dá para mostrar os componentes de conexão e suas configurações?
GOSTEI 0
Felipe Barlera
07/10/2013
Sim vamos la
componetes usados na conexao no udmdados:
SQLConnection para ligação com banco de dados .
SQLDataSet,ClientDataSet,DataSource,ClientDataSet e no from mesmo componetes servindo de auxiliar para inserta codigo automatico.
Codigo para inserir codigo automatico usado no botao inserir :
procedure Tfrmcadclientes.Button3Click(Sender: TObject);
var ultcod:integer;
begin
dmdados.tbl_clientes.Insert;
if dmdados.dsclientes.State in [dsInsert] then
begin
tblAuxClientes.Last;
ultcod:=tblAuxClientesCLI_CODIGO.Value+1;
dmdados.tbl_clientesCLI_CODIGO.Value:=ultcod;
dmdados.tbl_ClientesCLI_DATACADASTRO.asdatetime :=date;
dmdados.tbl_ClientesCLI_HORACADASTRO.Value:=time;
dmdados.tbl_clientesCLI_FOTO.Value:='C:\Users\Sside\Documents\Progamação\Monter Estoque\Imegens\sem-imagem2.bmp';
foto.Picture.LoadFromFile(dmdados.tbl_clientesCLI_FOTO.Value);
DBEdit5.SetFocus;
componetes usados na conexao no udmdados:
SQLConnection para ligação com banco de dados .
SQLDataSet,ClientDataSet,DataSource,ClientDataSet e no from mesmo componetes servindo de auxiliar para inserta codigo automatico.
Codigo para inserir codigo automatico usado no botao inserir :
procedure Tfrmcadclientes.Button3Click(Sender: TObject);
var ultcod:integer;
begin
dmdados.tbl_clientes.Insert;
if dmdados.dsclientes.State in [dsInsert] then
begin
tblAuxClientes.Last;
ultcod:=tblAuxClientesCLI_CODIGO.Value+1;
dmdados.tbl_clientesCLI_CODIGO.Value:=ultcod;
dmdados.tbl_ClientesCLI_DATACADASTRO.asdatetime :=date;
dmdados.tbl_ClientesCLI_HORACADASTRO.Value:=time;
dmdados.tbl_clientesCLI_FOTO.Value:='C:\Users\Sside\Documents\Progamação\Monter Estoque\Imegens\sem-imagem2.bmp';
foto.Picture.LoadFromFile(dmdados.tbl_clientesCLI_FOTO.Value);
DBEdit5.SetFocus;
GOSTEI 0
Marcos Saffran
07/10/2013
gerando manualmente atraves de codigo no delphi e com generator no banco de dados.Usando conexao com dbexpress
tente inserir sem passar o código através do delphi, deixe que o generator gerencie isso.
GOSTEI 0
Felipe Barlera
07/10/2013
como fasso isso?
GOSTEI 0
Marcos Saffran
07/10/2013
procedure Tfrmcadclientes.Button3Click(Sender: TObject); var ultcod:integer; begin dmdados.tbl_clientes.Insert; if dmdados.dsclientes.State in [dsInsert] then begin // tblAuxClientes.Last; | Comente // ultcod:=tblAuxClientesCLI_CODIGO.Value+1; | essas // dmdados.tbl_clientesCLI_CODIGO.Value:=ultcod; | linhas dmdados.tbl_ClientesCLI_DATACADASTRO.asdatetime :=date; dmdados.tbl_ClientesCLI_HORACADASTRO.Value:=time; dmdados.tbl_clientesCLI_FOTO.Value:='C:\Users\Sside\Documents\Progamação\Monter Estoque\Imegens\sem-imagem2.bmp'; foto.Picture.LoadFromFile(dmdados.tbl_clientesCLI_FOTO.Value); DBEdit5.SetFocus;
comente as linhas indicadas acima e teste.
GOSTEI 0
Felipe Barlera
07/10/2013
sem os códigos ele nao insere o codigo o mais correto era busca uma atualização ao inserta
.
.
GOSTEI 0
Marcos Saffran
07/10/2013
estranho, como está o seu generator?
Tente a alteração que fiz abaixo.
Tente a alteração que fiz abaixo.
procedure Tfrmcadclientes.Button3Click(Sender: TObject);
var ultcod:integer;
begin
tblAuxClientes.Last;
ultcod:=tblAuxClientesCLI_CODIGO.Value+1;
dmdados.tbl_clientes.Insert;
if dmdados.dsclientes.State in [dsInsert] then
begin
dmdados.tbl_clientesCLI_CODIGO.Value:=ultcod;
dmdados.tbl_ClientesCLI_DATACADASTRO.asdatetime :=date;
dmdados.tbl_ClientesCLI_HORACADASTRO.Value:=time;
dmdados.tbl_clientesCLI_FOTO.Value:='C:\Users\Sside\Documents\Progamação\Monter Estoque\Imegens\sem-imagem2.bmp';
foto.Picture.LoadFromFile(dmdados.tbl_clientesCLI_FOTO.Value);
DBEdit5.SetFocus;GOSTEI 0
Felipe Barlera
07/10/2013
Assim ele insere codigo mais nao atualiza
apos inserta depois de ter enserido
apos inserta depois de ter enserido
GOSTEI 0
Felipe Barlera
07/10/2013
Agora quando inserta ele iserta com mesmo numero so quando salva ele salva certo com 1+ .
e pra quando inserta campo codigo ja troca codigo
e pra quando inserta campo codigo ja troca codigo
GOSTEI 0
Marcos Saffran
07/10/2013
Felipe,
em meus programas não deixo que o usuário veja o código no momento da inserção, recomendo que você faça o mesmo.
em meus programas não deixo que o usuário veja o código no momento da inserção, recomendo que você faça o mesmo.
GOSTEI 0
Felipe Barlera
07/10/2013
Jeito deixa assim entao
GOSTEI 0