Gravação no banco clientdatset ibquery dataset provider
Estava tudo normal na minha aplicação, quando fui tratar dos erros do campos dbedit, acabei mdificando o processo de gravação no banco,sendo assim, este ,agora não se encontra gravando mais, gostaria de saber o que esta havendo, pois não consigo ver onde é o erro que não deixa gravar no banco, o botão atualizar(Inseri um novo pedido no banco),,e o botão salvar ,,,altera modificações,,,se puderem me ajudar
Obrigado!
Obrigado!
Deryck
Curtidas 0
Respostas
Deryck
13/07/2004
Estava tudo normal na minha aplicação, quando fui tratar dos erros do campos dbedit, acabei mdificando o processo de gravação no banco,sendo assim, este ,agora não se encontra gravando mais, gostaria de saber o que esta havendo, pois não consigo ver onde é o erro que não deixa gravar no banco, o botão atualizar(Inseri um novo pedido no banco),,e o botão salvar ,,,altera modificações,,,se puderem me ajudar
Obrigado!
Esuqueci de cola o codigo
procedure TDataModule1.SalvarExecute(Sender: TObject);
Var
intC : Byte;
begin //Procedure
begin
if DataModule2.ClientDataSet.State in [DsInsert,DsEdit] then
begin
For intC := 0 To DataModule2.ClientDataSet.FieldCount -1 Do
Begin
If(DataModule2.ClientDataSet.Fields[intC].Required)Then
Begin
If( Trim (DataModule2.ClientDataSet.Fields[intC].Text) = ´´)Then
Begin
ShowMessage(´Preencha o campo ´ + DataModule2.ClientDataSet.Fields[intC].DisplayLabel);
exit;
End;
End;
End;
End;
end;
begin
if DataModule2.ClientDataSetGRID.State in [dsinsert,dsedit] Then
begin
For IntC := 0 To DataModule2.ClientDataSetGRID.FieldCount -1 Do
Begin
If(DataModule2.ClientDataSetGRID.Fields[intC].Required) Then
Begin
If( Trim (DataModule2.ClientDataSetGRID.Fields[intC].Text ) = ´´) Then
Begin
ShowMessage(´Preencha o campo ´ + DataModule2.ClientDataSetGRID.Fields[intC].DisplayLabel);
exit;
End;
End;
End;
end;
DataModule2.ClientDataSetGRID.Post;
DataModule2.ClientDataSetGRID.ApplyUpdates(-1);
DataModule2.ClientDataSet.Post;
DataModule2.ClientDataSet.ApplyUpdates(-1);
FRMinserir.Close;
End;
End; //End procedure
procedure TDataModule1.CancelarExecute(Sender: TObject);
begin
DataModule2.ClientDataSetGRID.RevertRecord;
DataModule2.ClientDataSetGRID.ApplyUpdates(0);
DataModule2.ClientDataSet.RevertRecord;
DataModule2.ClientDataSet.ApplyUpdates(0);
DataModule2.ClientDataSetCria_Id.RevertRecord;
DataModule2.ClientDataSetCria_Id.ApplyUpdates(0);
DataModule2.ClientDataSet.Close;
DataModule2.ClientDataSetGRID.Close;
DataModule2.ClientDataSet.Open;
DataModule2.ClientDataSetGRID.Open;
FRMinserir.Close;
end;
procedure TDataModule1.ExibirExecute(Sender: TObject);
begin
FRMrelat.QuickRep1.Preview;
end;
procedure TDataModule1.ExcluirExecute(Sender: TObject);
begin
DataModule2.ClientDataSet.Delete;
DataModule2.ClientDataSet.ApplyUpdates(0);
DataModule2.ClientDataSetGRID.Delete;
DataModule2.ClientDataSetGRID.ApplyUpdates(0);
DataModule2.ClientDataSet.Close;
DataModule2.ClientDataSetGRID.Close;
DataModule2.ClientDataSet.Open;
DataModule2.ClientDataSetGRID.Open;
end;
procedure TDataModule1.AlterarExecute(Sender: TObject);
begin
// DataModule2.ClientDataSet.Close;
// DataModule2.ClientDataSetGRID.Close;
// DataModule2.ClientDataSet.Open;
// DataModule2.ClientDataSetGRID.Open;
FRMinserir.Atualizar.Visible := False;
FRMinserir.Atualizar.Enabled:= False;
FRMinserir.Salvar.Visible := True;
FRMinserir.Salvar.Enabled := true;
DataModule2.ClientDataSetGRID.Edit;
DataModule2.ClientDataSet.Edit;
FRMinserir.Show;
end;
procedure TDataModule1.InserirExecute(Sender: TObject);
begin
FRMinserir.Show;
FRMinserir.Salvar.Visible := false;
FRMinserir.Salvar.Enabled := false;
FRMinserir.Atualizar.Visible := True;
FRMinserir.Atualizar.Enabled := True;
DataModule2.ClientDataSetGRID.Open;
DataModule2.ClientDataSet.Open;
DataModule2.ClientDataSetGRID.Insert;
DataModule2.ClientDataSet.Insert;
end;
procedure TDataModule1.SobreExecute(Sender: TObject);
begin
FRMsobre.Show;
end;
procedure TDataModule1.FecharSobreExecute(Sender: TObject);
begin
FRMsobre.Close;
end;
procedure TDataModule1.AtualizarExecute(Sender: TObject);
Var
intC : Byte;
begin
DataModule2.ClientDataSetGRIDPEDIDOSAIDA_ID.Value := DataModule2.ClientDataSetCria_IdCONT.Value;
DataModule2.ClientDataSetPEDIDOSAIDA_ID.Value := DataModule2.ClientDataSetCria_IdCONT.Value;
FRMinserir.DBEdit1.Text := DataModule2.ClientDataSetCria_IdCONT.Text;
FRMcons.DBGridCONS.UpdateAction(Atualizar);
FRMinserir.DBGridATUALIZA.UpdateAction(Atualizar);
begin //Procedure
begin
if DataModule2.ClientDataSet.State in [DsInsert,DsEdit] then
begin
For intC := 0 To DataModule2.ClientDataSet.FieldCount -1 Do
Begin
If(DataModule2.ClientDataSet.Fields[intC].Required)Then
Begin
If( Trim (DataModule2.ClientDataSet.Fields[intC].Text) = ´´)Then
Begin
ShowMessage(´Preencha o campo ´ + DataModule2.ClientDataSet.Fields[intC].DisplayLabel);
exit;
End;
DataModule2.ClientDataSet.Post;
DataModule2.ClientDataSet.ApplyUpdates(-1);
End;
End;
End;
end;
begin
if DataModule2.ClientDataSetGRID.State in [dsinsert,dsedit] Then
begin
For IntC := 0 To DataModule2.ClientDataSetGRID.FieldCount -1 Do
Begin
If(DataModule2.ClientDataSetGRID.Fields[intC].Required) Then
Begin
If( Trim (DataModule2.ClientDataSetGRID.Fields[intC].Text ) = ´´) Then
Begin
ShowMessage(´Preencha o campo ´ + DataModule2.ClientDataSetGRID.Fields[intC].DisplayLabel);
exit;
End;
DataModule2.ClientDataSetGRID.Post;
DataModule2.ClientDataSetGRID.ApplyUpdates(-1);
End;
End;
end;
End;
End; //End procedure
DataModule2.ClientDataSetCria_Id.ApplyUpdates(-1);
DataModule2.ClientDataSetCria_Id.Close;
DataModule2.ClientDataSetCria_Id.Open;
FRMinserir.Close;
end;
end.
GOSTEI 0
Marcelo.c
13/07/2004
Você está utilizando IBTransaction ?
GOSTEI 0
Deryck
13/07/2004
Você está utilizando IBTransaction ?
Cara , valeu pela intençaõ ,mas ja resolvi o problema, to usando o transaction, mas o que acontece agora é que estou tratando de cada campo individualmente, e ta osso, se tiver alguma i´deia, são 30 campos, trata um por um não é facil,, até mais ,, valeu!
GOSTEI 0
Deryck
13/07/2004
Você está utilizando IBTransaction ?
Cara , valeu pela intençaõ ,mas ja resolvi o problema, to usando o transaction, mas o que acontece agora é que estou tratando de cada campo individualmente, e ta osso, se tiver alguma i´deia, são 30 campos, trata um por um não é facil,, até mais ,, valeu!
GOSTEI 0