Fórum Gravar Data ??? #203896

02/01/2004

0

Boa tarde,

eu tenho um campo na tabela em que o tipo dele é TimeStamp, so q quando eu faço a transferencia de Matricula do Funcionário ele retorna um valor inteiro p/o campo data e não faz a gravação na tabela...gostaria de saber como eu poderia resolver este problema ?

grato.


Programadormaster

Programadormaster

Responder

Posts

02/01/2004

Aroldo Zanela

Colega,

Coloca um fragmento do código aqui pra gente entender melhor.


Responder

Gostei + 0

02/01/2004

Programadormaster

Boa Tarde,

estou utilizando IB6, e tenho 2 campos na tabela que são do tipo TimeStamp, quando faço o loop e armazeno a data da tabela numa variável do tipo TDateTime ele me retorna um valor inteiro, como posso corrigir este problema e gravar a data corretamente ?

grato


Flag := 3;
cdsExam_Sol_Pesq.Close;
cdsExam_Sol_Pesq.Params[0].AsInteger := iEmpresa;
cdsExam_Sol_Pesq.Params[1].AsInteger := iMatricula;
cdsExam_Sol_Pesq.Open;
if not cdsExam_Sol_Pesq.Locate(´COD_EMP_EXAM_SOL;MATRIC_FUNC_EXAM_SOL´,
VarArrayOf([iEmpresa, iMatricula]),[loPartialKey]) then Flag := 4;
if Flag = 3 then
begin
{Atualiza Variáveis}
cdsExam_Sol_Pesq.First;
while not cdsExam_Sol_Pesq.Eof do
begin
iCodTexamExamSol := cdsExam_Sol_Pesq.FieldByName(´COD_TEXAM_EXAM_SOL´).AsInteger;
dDTExameExamSol := cdsExam_Sol_Pesq.FieldByName(´DT_EXAME_EXAM_SOL´).AsDateTime;
iSequencia := cdsExam_Sol_Pesq.FieldByName(´SEQUENCIA_EXAM_SOL´).AsInteger;
dDTMarcada := cdsExam_Sol_Pesq.FieldByName(´DT_MARCADA´).AsDateTime;
sTipo := cdsExam_Sol_Pesq.FieldByName(´TIPO´).AsString;
sObsExamSol := cdsExam_Sol_Pesq.FieldByName(´OBSERVACAO_EXAM_SOL´).AsString;
{Insere um novo registro}
cdsExam_Sol_Manut.Close;
cdsExam_Sol_Manut.Open;
cdsExam_Sol_Manut.Append;
cdsExam_Sol_Manut.FieldByName(´COD_EMP_EXAM_SOL´).AsInteger := iEmpresa;
cdsExam_Sol_Manut.FieldByName(´MATRIC_FUNC_EXAM_SOL´).AsInteger := iMatriculaNova;
cdsExam_Sol_Manut.FieldByName(´COD_TEXAM_EXAM_SOL´).AsInteger := iCodTexamExamSol;
cdsExam_Sol_Manut.FieldByName(´DT_EXAME_EXAM_SOL´).AsDateTime := dDTExameExamSol;
cdsExam_Sol_Manut.FieldByName(´SEQUENCIA_EXAM_SOL´).AsInteger := iSequencia;
cdsExam_Sol_Manut.FieldByName(´DT_MARCADA´).AsDateTime := dDTMarcada;
cdsExam_Sol_Manut.FieldByName(´TIPO´).AsString := sTipo;
cdsExam_Sol_Manut.FieldByName(´OBSERVACAO_EXAM_SOL´).AsString := sObsExamSol;
{Faz Gravação}
cdsExam_Sol_Manut.Post;
cdsExam_Sol_Manut.ApplyUpdates(-1);
cdsExam_Sol_Pesq.Next;
end;
end;


Responder

Gostei + 0

05/01/2004

Aroldo Zanela

Colega,

Parece estar tudo certo no seu código. Qual dialeto você especificou para o banco? Está utilizando BDE?


Responder

Gostei + 0

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

Aceitar