Aritmethic excepito
Aritmethic excepiton numeric overflow or string truncation.
Ja cadastrei. quando altero a data numa tabela, so que ja existem datas e ja alterei algumas uso um Datetimerpicker.
como posso solucionar isso
obrigado
Ja cadastrei. quando altero a data numa tabela, so que ja existem datas e ja alterei algumas uso um Datetimerpicker.
como posso solucionar isso
obrigado
Pereiramarcos
Curtidas 0
Respostas
Edilcimar
26/12/2005
mostre o código, senão não dá para achar o erro
GOSTEI 0
Pereiramarcos
26/12/2005
mostre o código, senão não dá para achar o erro
DtsPaciente.DataSet.FieldByName(´dt_nasc´).AsDateTime := DateTimePicker1.Date;
Dtspaciente.DataSet.Post;
(Dtspaciente.DataSet as Tclientdataset).ApplyUpdates(-1); <-----
(DtsPaciente.DataSet as TClientDataSet).Refresh ; <-----
desabilitaCampos;
obrigado edilcimar
GOSTEI 0
Edilcimar
26/12/2005
o campo é datetime e vc está mandando só date?
GOSTEI 0
Pereiramarcos
26/12/2005
o campo é somente Date, no firebird acabei de confirmar, tb achei que fosse isso, mas tem registros que consigo alterar.
GOSTEI 0
Edilcimar
26/12/2005
então troque para
DtsPaciente.DataSet.FieldByName(´dt_nasc´).AsString := DateToStr(DateTimePicker1.Date);
DtsPaciente.DataSet.FieldByName(´dt_nasc´).AsString := DateToStr(DateTimePicker1.Date);
GOSTEI 0
Pereiramarcos
26/12/2005
Funcionou mas quando vou alterar o sewgundo registro da o mesmo erro.
a impressao e que nao esta commitando, pode ser isso ?
:(
a impressao e que nao esta commitando, pode ser isso ?
:(
GOSTEI 0
Pereiramarcos
26/12/2005
este campo e um dominio
CREATE DOMAIN DATA AS
DATE
e o campo e do tipo Date dominio DATA
CREATE DOMAIN DATA AS
DATE
e o campo e do tipo Date dominio DATA
GOSTEI 0
Edilcimar
26/12/2005
então tente fechar e abrir novamente a tabela após o post
GOSTEI 0
Pereiramarcos
26/12/2005
acontecewu o que eu imaginava ele nao commita fechando apos o post
e abrindo novamente. . .
o que pode ser isso, pra quem e iniciante no Delphi como eu da maior desespero.
e abrindo novamente. . .
o que pode ser isso, pra quem e iniciante no Delphi como eu da maior desespero.
GOSTEI 0
Edilcimar
26/12/2005
tente dar um forcewrite após o comit
GOSTEI 0
Pereiramarcos
26/12/2005
pode dar um exemplo.
obrigado, pela forca.
obrigado, pela forca.
GOSTEI 0
Pereiramarcos
26/12/2005
algum dado interessante, no registros iniciais nao da erro.
estou procurando este maudito erro.
que conversao e esta que so faz apos algum registros.
estou usando SQLTable será que tem algum problema.
estou procurando este maudito erro.
que conversao e esta que so faz apos algum registros.
estou usando SQLTable será que tem algum problema.
GOSTEI 0
Edilcimar
26/12/2005
Será que vc não tem algum campo que deveria ter sido preenchido e não foi? Pode ser o formato da data de americano para brasileiro, só vai acontecer em determinados meses!
GOSTEI 0
Pereiramarcos
26/12/2005
no registro que gravei 01/09/1968 gravou sem erro, este registro e o numero 1 e o registro 2 tb nao da erro
no outro registro que tentei gravar 04/04/1935 deu este erro, este registro e o registro de numero 233, sera que tem alguma coisa haver.
como verificar o padrao americano ?
estou perdendo a linha de raciocinio. isso e ruim
Valeu cara
no outro registro que tentei gravar 04/04/1935 deu este erro, este registro e o registro de numero 233, sera que tem alguma coisa haver.
como verificar o padrao americano ?
estou perdendo a linha de raciocinio. isso e ruim
Valeu cara
GOSTEI 0
Edilcimar
26/12/2005
padrão americano mm-dd-yyyy
nosso padrão dd-mm-yyyy
se grava o registro 1 e 2 e há problema com o 233 então o problema pode ser em algum outro campo pois a data está compatível
nosso padrão dd-mm-yyyy
se grava o registro 1 e 2 e há problema com o 233 então o problema pode ser em algum outro campo pois a data está compatível
GOSTEI 0
Martins
26/12/2005
no registro que gravei 01/09/1968 gravou sem erro, este registro e o numero 1 e o registro 2 tb nao da erro
no outro registro que tentei gravar 04/04/1935 deu este erro, este registro e o registro de numero 233, sera que tem alguma coisa haver.
como verificar o padrao americano ?
estou perdendo a linha de raciocinio. isso e ruim
Valeu cara
Acho q não tem nada a ver, qual o seu banco e o dialeto?
Mostre a estrutura de sua tabela por favor!
GOSTEI 0
Pereiramarcos
26/12/2005
CLIENTE (
CD_CLIENTE CODIGO NOT NULL /* CODIGO = INTEGER NOT NULL CHECK (VALUE > 0) */,
NM_CLIENTE NOME COLLATE PXW_INTL850 /* NOME = VARCHAR(70) NOT NULL */,
LOGRADOURO DESCRICAO COLLATE PXW_INTL850 /* DESCRICAO = VARCHAR(80) NOT NULL */,
NUMERO VARCHAR(10),
COMPLEMENTO VARCHAR(20) DEFAULT ´ ´,
BAIRRO VARCHAR(30) COLLATE PXW_INTL850,
CIDADE VARCHAR(30) COLLATE PXW_INTL850,
UF UF DEFAULT ´RJ´ NOT NULL /* UF = CHAR(2) NOT NULL CHECK (VALUE = UPPER(VALUE)) */,
CEP CHAR(8),
MALA CHAR(1) DEFAULT ´ ´,
ENDERECO_COMPLETO COMPUTED BY ((LOGRADOURO||´, ´||NUMERO||´ ´||COMPLEMENTO)),
DT_NASC DATA /* DATA = DATE */
);
FIREBIRD 1.5 DIALETO 3
CD_CLIENTE CODIGO NOT NULL /* CODIGO = INTEGER NOT NULL CHECK (VALUE > 0) */,
NM_CLIENTE NOME COLLATE PXW_INTL850 /* NOME = VARCHAR(70) NOT NULL */,
LOGRADOURO DESCRICAO COLLATE PXW_INTL850 /* DESCRICAO = VARCHAR(80) NOT NULL */,
NUMERO VARCHAR(10),
COMPLEMENTO VARCHAR(20) DEFAULT ´ ´,
BAIRRO VARCHAR(30) COLLATE PXW_INTL850,
CIDADE VARCHAR(30) COLLATE PXW_INTL850,
UF UF DEFAULT ´RJ´ NOT NULL /* UF = CHAR(2) NOT NULL CHECK (VALUE = UPPER(VALUE)) */,
CEP CHAR(8),
MALA CHAR(1) DEFAULT ´ ´,
ENDERECO_COMPLETO COMPUTED BY ((LOGRADOURO||´, ´||NUMERO||´ ´||COMPLEMENTO)),
DT_NASC DATA /* DATA = DATE */
);
FIREBIRD 1.5 DIALETO 3
GOSTEI 0
Edilcimar
26/12/2005
agora está explicado, vc está tentando colocar Ç ou acento em um campo nome ou endereço, usando um set de caracteres que não permite isto, portanto o erro não é no campo data
GOSTEI 0
Pereiramarcos
26/12/2005
ENTEDI E ATE CONCORDO PQ NAO INCLUSAO ISSO NAO OCORRE, COMO ENTAO COLOCO o collate nesta opcao de gravação ??
GOSTEI 0
Edilcimar
26/12/2005
faça a conecção com o bd usandoo win1952 (acho que é este o n°)
GOSTEI 0
Edilcimar
26/12/2005
win1252
GOSTEI 0
Pereiramarcos
26/12/2005
isso nao e o colate, eu ja uso
GOSTEI 0
Edilcimar
26/12/2005
não é o colate que estão falando e sim a conecção com o bd
GOSTEI 0
Martins
26/12/2005
não é o colate que estão falando e sim a conecção com o bd
Boa Edilcimar, por isso pedi q ele colocasse a estrutura da tabela dele.
valew!!
GOSTEI 0
Edilcimar
26/12/2005
É, ele estava falando da data e eu fui na onda!
GOSTEI 0
Martins
26/12/2005
É, ele estava falando da data e eu fui na onda!
Sei como é, dúvidas q envolvam base de dados, deveriam ser especificados o tipo do banco, estrutura da tabela em questão, etc...
GOSTEI 0
Pereiramarcos
26/12/2005
OBRIGADO!!! Edilcimar e Martins
Funcionou perfeitamente, desculpe eu nao sabia que usava o charset TB na conexão com o banco.
Valeu mesmo.
eu chego lá
Funcionou perfeitamente, desculpe eu nao sabia que usava o charset TB na conexão com o banco.
Valeu mesmo.
eu chego lá
GOSTEI 0
Martins
26/12/2005
OBRIGADO!!! Edilcimar e Martins
Funcionou perfeitamente, desculpe eu nao sabia que usava o charset TB na conexão com o banco.
Valeu mesmo.
eu chego lá
Blz, manda ver aí no seu sistema.
GOSTEI 0
Edilcimar
26/12/2005
Qualquer coisa estamos aí!
GOSTEI 0