Fórum ClientDataset ficou louco #298324

04/10/2005

0

olá pessoal,

estou trabalhando com clientdatasets usando o recurso Nested Datasets até um certo momento estava indo tudo bem, mas derrepente em uma certa parte do codigo onde eu dou um .insert no clientdataset e depois atribuindo um valor inteiro em um campo primary key inteiro tambem ele dá o seguinte erro ´Could Not Convert Variant of Type (null) into type (double)´ esse erro acontece bem na hora em q o valor é atribuido ao campo nao chega nem no .post e eu percebi q isso comecou a acontecer depois q eu abrir o iboconsole e o .gdb com o projeto aberto.o q está acontecendo o clientdataset está meio louco?


valeu :lol:


Tap_pedroso

Tap_pedroso

Responder

Posts

04/10/2005

Bruno Belchior

Poste o seu código para q possamos ajudar melhor, mas pelo q parece vc está atribuindo um valor null a um tipo double...


Responder

Gostei + 0

04/10/2005

Tap_pedroso

procedure TfrmSaidaEstoque.btnIncluirClick(Sender: TObject);
VAR
nped :integer;
begin

If Not DM2.MQProd.Active Then DM2.MQProd.Open;
If Not DM2.cdsvendas.Active Then DM2.cdsvendas.Open;
If Not DM2.cdsitens.Active Then DM2.cdsitens.Open;

// Não permite novos Pedidos antes de Gravar um que ainda esteja aberto ///////
If DM2.cdsvendas.State In [dsInsert, dsEdit] Then
Begin
Application.MessageBox(´Existe um Pedido a ser finalizado,´+
´ você deve Gravar ou Cancelar o Pedido antes de Incluir um novo´,
´Atenção´,MB_ICONWARNING+MB_OK);
Exit;
End;

nped:=dm2.NovoGenerator(´NUMPEDIDO´);
// Tenta iniciar a transação //////////////////////////////////////////////////
If Not DM.ibTransaction.InTransaction Then
Try
DM.ibTransaction.StartTransaction;
Except
On e:Exception Do
Begin
messagedlg(´Erro ao Iniciar Transação.´+e.Message+´´,mterror,[mbok],0);
Exit;
End;
End;

// Inicializa registro ////////////////////////////////////////////////////////

DM2.cdsvendas.Insert;
dm2.cdsvendasNUMPEDIDO.AsInteger:=nped; [b:4bc7ba2f76]//aqui acontece o erro[/b:4bc7ba2f76]
DM2.cdsvendasDATAPEDIDO.AsString:=DateToStr(Date);
DM2.cdsvendasHORAPEDIDO.AsString:=TimeToStr(Time);
DM2.cdsvendasCODCLIENTE.Value:=1;
DM2.cdsvendasCDVENDEDOR.Value:=1;
DM2.cdsvendasVALORFRETE.Value:=0;
DM2.cdsvendasPAGO.Value:=0;
DM2.cdsvendasDESCPEDIDO.Value:=0;
DM2.cdsvendasVENCIMENTO.Value:=Date;
dtpVencimento.Date:=Date;
dtpVencimento.Enabled:=True;
DM2.cdsvendasPGDINHEIRO.Value:=0;
DM2.cdsvendasPAGOCHEQUE.Value:=0;
dm2.cdsvendasNDOCUMENTO.Value:=0;
dm2.cdsvendasFORMAPAGTO.Value:=0;



end;


Responder

Gostei + 0

04/10/2005

Tap_pedroso

pessoal esquece é eu q estou mio louco hj o erro estava em um campo q estava sendo calculado no oncalcfields do clientdataset,sorry :oops:

valeu mesmo assim.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar