Otra de ADO (Puro) Fechas

Otra de ADO (Puro) Fechas

Postby leandro » Fri Jan 11, 2008 9:55 pm

Amigos tengo el siguiente problema:

Estoy tratanto de agregar un registro a una tabla en mssql. La tabla tiene un campo de tipo [smalldatetime] es una fecha con la hora queda de la siguiente manera: 01/01/2008 12:00:00 a.m.

El problema es que intentanto subir en todos los formatos de fecha

fec:='01/01/2008 12:00:00 a.m.'
fec:='01/01/2008 00:00'
fec:='01/01/08 00:00'

La unica forma de lo sube es asi:

fec:='01/01/2008'

Pero cuando miro la fecha en la tabla me queda una fecha que no es:

"01/01/1900 12:00:00 am"

Alguien me puede indicar como devolver el valor fecha.

El Codigo es el siguiente:

Code: Select all  Expand view  RUN

SELE tbl_lin
Dbgotop()
Do while !Eof()

  Cod:=alltrim(tbl_lin->lin_codigo)
  Nom:=alltrim(tbl_lin->lin_nombre)
  Act:=Valor(tbl_lin->lin_activo)
  Con:=Valor(tbl_lin->lin_conexi)
  Emp:=alltrim(tbl_lin->lin_nomemp)
  Equ:=alltrim(tbl_lin->lin_equipo)
  Ope:=alltrim(tbl_lin->lin_codope)
  Ver:=dtoc(tbl_lin->lin_versio)
  Fec:=dtoc(tbl_lin->lin_fecope)
  Pro:=alltrim(tbl_lin->lin_proreg)
  Rem:=alltrim(tbl_lin->LIN_NOMREM)

cCommandSql   := "INSERT INTO MAELIN (lin_codigo,lin_nombre,lin_activo,lin_versio) VALUES ('"+Cod+"','"+Nom+"','"+Act+"',"+Fec+")"


  TRY
    oCon:Execute(cCommandSql)
  CATCH oError
    MsgInfo("El registro no pudo ser insertado")
  END

  SELE tbl_lin
  Skip
Enddo


De antemano Gracias
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1682
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia

Postby jcaro » Fri Jan 11, 2008 10:14 pm

Leandro:

Recuerdo que RF, hablo de un tipo de dato datetime que tiene el xharbour. A lo mejor eso te puede ayudar.

Saludos,
Juan
==> Pasando a FWH16.04 + Harbour32 + BCC70 + PellesC
=> Abandonando FWH 13.7 + xHarbour + BCC582
http://www.mitaller.cl
jcaro
 
Posts: 270
Joined: Fri Nov 11, 2005 7:39 pm

Postby sysctrl2 » Fri Jan 11, 2008 10:51 pm

Leandro amigo,

lamento decirte que ado no tiene soporte para fecha y hora (datetime)

yo ya estuve batallando con una tabla de acces,

sin llegar a ninguna solucion,

o puede ser el compilador xharbour el que no lo soporta,

pero no hay una solucion de momento,

los gurues en este foro no habla mucho sobre este tema..

realmente no sabemos si el el problema es de ADO o xhb.


saludos..
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
User avatar
sysctrl2
 
Posts: 1027
Joined: Mon Feb 05, 2007 7:15 pm

Postby ricardog » Fri Jan 11, 2008 11:20 pm

Leandro:


Convierte la fecha a modo caracter, antes de actualizar la Tabla:

cFecha := "'"+StrZero( Year( Date() ),4 )+;
StrZero( Month( Date() ),2 )+;
StrZero( Day( Date() ),2 )+"'"

Encierra la cFecha con la "apostrofes" ( NO DOBLES COMILLAS ), y enviala a grabar.

Tiene que grabar la fecha correcta, y los datos de la hora en 00:00:.....


Saludos
ricardog
 
Posts: 158
Joined: Tue Oct 11, 2005 3:10 pm

Postby Willi Quintana » Sat Jan 12, 2008 12:58 am

Hazlo asi:

cFecha := DTOC2(Date()) + " " + SUBSTR(TIME(),1,8)

....
cInsert := "INSERT INTO prueba SET fecha = '" + cFechaHora + "'"
oCon:Execute(cInsertl)
....
...
..
.


Function DTOC2(dDate) // Harbour to MySQL
local cDate
SET (_SET_DATEFORMAT, "yyyy-mm-dd")
If EMPTY(dDate)
cDate := " - - " // aqui son 4 espacion para el año
Else
cDate := DTOC(dDate)
EndIf
Set( _SET_DATEFORMAT, "dd/mm/yyyy" )
Return(cDate)
User avatar
Willi Quintana
 
Posts: 1022
Joined: Sun Oct 09, 2005 10:41 pm
Location: Cusco - Perú

Postby leandro » Sat Jan 12, 2008 10:02 pm

Gracias a todos por las respuestas y por la ayuda prestada.

Viejo Willi :lol:

Era lo que necesitaba. :D

Muchas Gracias
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Embarcadero C++ 7.60 for Win32 ] [ FiveWin 23.07 ] [ xHarbour 1.3.0 Intl. (SimpLex) (Build 20230914) ]
User avatar
leandro
 
Posts: 1682
Joined: Wed Oct 26, 2005 2:49 pm
Location: Colombia


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 52 guests