Manejo de Fechas con ADO + SQL + XHarbour + FW

Post Reply
User avatar
Joel Andujo
Posts: 109
Joined: Fri Oct 07, 2005 3:14 pm
Location: Cd. Obregón, Sonora, México
Contact:

Manejo de Fechas con ADO + SQL + XHarbour + FW

Post by Joel Andujo »

Foro buenos dias, solicitando de su ayuda, se trata de esto

Esto y utilizando SQL via ADO de xHarbour, pero tengo un detalle
con el manejo de fechas, al momento de remplazar una fecha vacia :

dFecha:=ctod('')
::oRs:Fields('Fecha'):Value:=dFecha

esto me produce el siguiente error :

ADODB.Recordset:Fields/9 la operación en varios pasos genera errores.
Compruebe los valores....

TOleAuto:_Value(0)

¿ Como se reemplaza un valor vacio en un campo Fecha ?

Saludos y gracias de nuevo
Joel Andujo
User avatar
wmormar
Posts: 1050
Joined: Fri Oct 07, 2005 10:41 pm
Location: México
Contact:

Re: Manejo de Fechas con ADO + SQL + XHarbour + FW

Post by wmormar »

Lo haria de la siguiente manera.

cFecha := DTOC(date())
::oRs:Fields('Fecha'):Value := cFecha

Así me funciona.

Saludos

Joel Andujo wrote:Foro buenos dias, solicitando de su ayuda, se trata de esto

Esto y utilizando SQL via ADO de xHarbour, pero tengo un detalle
con el manejo de fechas, al momento de remplazar una fecha vacia :

dFecha:=ctod('')
::oRs:Fields('Fecha'):Value:=dFecha

esto me produce el siguiente error :

ADODB.Recordset:Fields/9 la operación en varios pasos genera errores.
Compruebe los valores....

TOleAuto:_Value(0)

¿ Como se reemplaza un valor vacio en un campo Fecha ?

Saludos y gracias de nuevo
Joel Andujo
William, Morales
Saludos

méxico.sureste
User avatar
Joel Andujo
Posts: 109
Joined: Fri Oct 07, 2005 3:14 pm
Location: Cd. Obregón, Sonora, México
Contact:

Post by Joel Andujo »

Willian gracias por contestar, asi si funciona pero la idea es
guardar una fecha vacia. Por Ejemplo :

cFecha := ' / / '
::oRs:Fields('Fecha'):Value := cFecha

como guardo una fecha vacia ?
ahi es cuando se genera el error

Saludos
Joel Andujo
[/url]
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

Joel Andujo wrote:
como guardo una fecha vacia ?
Algo que me viene a la cabeza en este momento:

dFecha := CTOD(" / / ")
cFecha := DTOC(dFecha)

¿ Sera que es sabado que pretendo matar pulgas a cañonazos ?
Saludos
R.F.
User avatar
wmormar
Posts: 1050
Joined: Fri Oct 07, 2005 10:41 pm
Location: México
Contact:

Post by wmormar »

RF wrote:
Joel Andujo wrote:
Algo que me viene a la cabeza en este momento:

dFecha := CTOD(" / / ")
cFecha := DTOC(dFecha)

¿ Sera que es sabado que pretendo matar pulgas a cañonazos ?
cFecha := " / / "
William, Morales
Saludos

méxico.sureste
User avatar
Joel Andujo
Posts: 109
Joined: Fri Oct 07, 2005 3:14 pm
Location: Cd. Obregón, Sonora, México
Contact:

Post by Joel Andujo »

Sr. gracias por sus cañonazos, pero no me funciona, esta muy curiosa la cosa, no puedo almacenar una fecha vacia via ADO.

He probado :

a) ::oRs:Fields(uNameField):Value:=' / / '

b) ::oRs:Fields(uNameField):Value:=ctod(' / / ')
::oRs:Fields(uNameField):Value:=ctod(' ')

c) ::oRs:Fields(uNameField):Value:='NULL'

d) ::oRs:Fields(uNameField):Value:=NIL

e) dFec:=ctod(' / / ')
::oRs:Fields(uNameField):Value:=dFec

y no se deja me marca el error : ADODB.RecordSet:Fields/9. LaOperación
en varios parsos generá errores. Compruebe los valores.... TOLEAUTO:_Value(0)

Un cable por favor
Sauldos
Joel Andujo
User avatar
jlcapel
Posts: 229
Joined: Wed Oct 12, 2005 5:32 pm
Location: Valencia - España
Contact:

Post by jlcapel »

Joel,

Danos un poco más de información... Cual versión de (x)harbour y Fwh usas, y contra cual base de datos te conectas y a través de qué (oledb, odbc).

Saludos,
José Luis Capel
User avatar
Joel Andujo
Posts: 109
Joined: Fri Oct 07, 2005 3:14 pm
Location: Cd. Obregón, Sonora, México
Contact:

Post by Joel Andujo »

Utilizo xHarbour Build 0.99.50 SimpLex, FW24H, MS-SQL el campo al
que estoy afectado es un tipo smalldatetime, esto es via ADO estoy utilizando las clases que pusiste de ejemplo en Tu blog. (Por cierto excelentes ejemplos)

Gracias y agradecido
Joel Andujo
User avatar
jlcapel
Posts: 229
Joined: Wed Oct 12, 2005 5:32 pm
Location: Valencia - España
Contact:

Post by jlcapel »

Joel,

Acabo de comprobar que para indicar una fecha en blanco has de poner el valor NIL al campo fecha.

No obstante has de tener en consideración lo siguiente:

- Si em Ms-Sql tienes un valor por defecto para ese campo, al actualizar, si el valor es NIL, Ms-Sql lo cambiará al valor por defecto

- La versión que utilices de xHarbour puede que esté desactualizada. Sería conveniente que utilizaras la última versión disponible. Si no puedes actualizarte todo el el xharbour, prueba a bajarte el fichero win32ole.prg desde el CVS y añadirlo a tu proyecto (no lo he probado).

Espero haberte sido de ayuda.
Saludos,
José Luis Capel
R.F.
Posts: 840
Joined: Thu Oct 13, 2005 7:05 pm

Post by R.F. »

Jose Luis:

NIL o NULL ??? (no es lo mismo)
Saludos
R.F.
User avatar
jlcapel
Posts: 229
Joined: Wed Oct 12, 2005 5:32 pm
Location: Valencia - España
Contact:

Post by jlcapel »

René,
NIL o NULL ??? (no es lo mismo)
En el contexto de la conversación se entiende que NIL dado que NULL en xHarbour no existe.

Saludos,
José Luis Capel
User avatar
Joel Andujo
Posts: 109
Joined: Fri Oct 07, 2005 3:14 pm
Location: Cd. Obregón, Sonora, México
Contact:

Post by Joel Andujo »

Gracias, probare y ya les cuento

Saludos
Joel Andujo
Post Reply