Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > OOP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 20-12-2007
spyfenix spyfenix is offline
Miembro
 
Registrado: mar 2007
Posts: 35
Poder: 0
spyfenix Va por buen camino
Exclamation problemas, convertir fecha desde un string

que tal gente
he estado buscando este tipode ayuda pero no encuentro una solucion
uso un grid y desde ahi voy a validar una fecha dada de esta forma '201207' para que me la convierta de esta forma '20/12/2007'
tengo este codigo perome marca error

Código:
var
  aFeha : string;
  Fecha : Date;
begin 
  aFecha := Grid.Cells[0, aRow]; //toma el valor de la celda
  Fecha := StrtoDateTime(aFecha); // me merca el error
end;
espero su ayuda y muchas gracias de antemano.

saludos
Responder Con Cita
  #2  
Antiguo 20-12-2007
Tal Tal is offline
Miembro
 
Registrado: dic 2007
Posts: 52
Poder: 17
Tal Va por buen camino
1. que error te da?
2. Cambia el tipo de variable de Date a TDate(e incluso te diría que usaras un TDateTime que es mejor)
Y creo que con la segunda solución ya se subsanará el error, sino pasaremos a cosas más mejores.

Un saludo espero haberte ayudado.
Responder Con Cita
  #3  
Antiguo 20-12-2007
spyfenix spyfenix is offline
Miembro
 
Registrado: mar 2007
Posts: 35
Poder: 0
spyfenix Va por buen camino
que tal, TAL jeje
oye muchas gracias por tu ayuda, mira cambiando como dices, me sale el mismo error

Project ejemplos.exe raised exception class EConvertError with message "121212" is not a valid date'

de esta forma quedo el codigo

Código:
var
  aFeha : string;
  Fecha : TDateTime;
begin 
  aFecha := Grid.Cells[0, aRow]; //toma el valor de la celda
  Fecha := StrtoDateTime(aFecha); // me merca el error
end;
gracias
Responder Con Cita
  #4  
Antiguo 20-12-2007
Tal Tal is offline
Miembro
 
Registrado: dic 2007
Posts: 52
Poder: 17
Tal Va por buen camino
Asegurate de que Afecha vale '201207' y luego y por si acaso que está en buen formato.

Código:
function CadAFec(const AFecha:string):TdateTime;
var
     cad : string;
begin
      cad := Afecha[1]+Afecha[2]+'/'+Afecha[3]+Afecha[4]+'/'+
                Afecha[5]+Afecha[6]+Afecha[7]+Afecha[8]);
      result := strtoDatetime(cad);
end
Ahora no recuerdo si los strings comienzan por 1 o por cero pero es tocar un valor arriba o uno abajo.

También puedes usar esta función que le pasas el formato de la fecha
StrToDateFmt(Afecha,'ddmmyyy');

Prueba a ver que tal.

Un saludo.
Responder Con Cita
  #5  
Antiguo 20-12-2007
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Esto lo convierte:

var
FStr: string;
Fecha: Date;
begin
with Grid do
FStr:= Copy(Cells[0,aRow],1,2) + '/' + Copy(Cells[0,aRow],3,2) + '/' +
Copy(Cells[0,aRow],6,4);
Fecha:= StrToDate(FStr);
end;
Responder Con Cita
  #6  
Antiguo 20-12-2007
spyfenix spyfenix is offline
Miembro
 
Registrado: mar 2007
Posts: 35
Poder: 0
spyfenix Va por buen camino
Eres ungenio jejeje
Funciono del todo bien, solo un comentario

me lo guarda de esta forma '12/Dic/2008' cuando introdusco =12/Dic/2008=

se podria guardar de esta forma '12/12/2008'

en verdad muchas gracias por tu ayuda

saludos
Responder Con Cita
  #7  
Antiguo 20-12-2007
Tal Tal is offline
Miembro
 
Registrado: dic 2007
Posts: 52
Poder: 17
Tal Va por buen camino
A mandar, para eso estamos
Responder Con Cita
  #8  
Antiguo 20-12-2007
spyfenix spyfenix is offline
Miembro
 
Registrado: mar 2007
Posts: 35
Poder: 0
spyfenix Va por buen camino
Oye TAL
un ultimo gorrito, te decia que me lo guarda de esta forma
"12/Dic/2000" cuando ingreso en el edit "12/12/2000"

se podria guardar tal y como lo ingreso "12/12/2000"


gracias
Responder Con Cita
  #9  
Antiguo 20-12-2007
Tal Tal is offline
Miembro
 
Registrado: dic 2007
Posts: 52
Poder: 17
Tal Va por buen camino
Lo raro es que te lo guarde de la otra manera...
Que tipo de grid usas?
O de edit?
Normalmente los grids de BBDD tienen opciones para configurar los formatos de fecha pero los stringgrid que yo sepa no.

Yo me tengo que ir pero seguro que alguién te lo aclara mejor que yo.
Responder Con Cita
  #10  
Antiguo 20-12-2007
spyfenix spyfenix is offline
Miembro
 
Registrado: mar 2007
Posts: 35
Poder: 0
spyfenix Va por buen camino
te lo agradesco demasiado TAL

y pues mi grid que uso es TADVStringGrid

saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
convertir string a pchar rzf1983 Varios 5 22-10-2007 19:17:33
convertir string jsanchez Varios 3 31-07-2006 22:23:19
convertir un String en TTreeNode jmlifi Varios 3 26-08-2005 15:56:01
Convertir un String en Pchart eyscom Varios 1 28-03-2004 15:51:30
Convertir un string a puntero jnrico Varios 1 27-05-2003 16:29:47


La franja horaria es GMT +2. Ahora son las 09:37:45.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi