Problemas con fecha...

Hola!, estoy haciendo un formulario de una orden de trabajo de vehículos reparados, donde guardo la fecha (actual) Nº de empleado, dominio y los artículos utilizados. El problema es que cuando quiero guardar los datos (en la base de datos) aparece un error "incompatibilidad entre el tipo de operador y el tipo de operando"... El código que utilizo es el siguiente:
tsql=[insert into ordentrab (fecha, codcliente, modelo, dominio, codempl) values(]+;
+[']+(xfech)+[',]+STR(cur_validacion.dni)+[,]+STR(cur_validacion.modelo)+[,']+(xdomi)+[',]+STR(cur_emple.codempl)+[)]
Todos los campos son numéricos excepto: fecha es date y dominio es carácter
No se que podrá ser, tal vez sea la fecha porque no se como es el formato para pasar la fecha del formulario... ¿me podrás ayudar con esto?
... Desde ya muchas gracias!

1 Respuesta

Respuesta
1
Debes convertir tu date a carácter de la forma que haces, por lo que veo, usas lo siguiente
Dtoc(xFech)
Prueba con eso, ah, ¿con qué tipo de base de datos trabajas?, ¿Con DBF?
Gracias! Lo probé y salio! Quisiera hacerte otra consulta (si no es molestia); con la corrección que realize ya puedo insertar datos en la tabla ordentrab, pero cuando quiero insertar los datos en la tabla detorden (que son los items de la orden de trabajo) aparece un error "fallo el comando..." Me parece que estoy escribiendo algo mal pero no me doy cuenta... te paso el código a ver que opinas!
xfech= Dtoc(Date())
 tsql=[insert into ordentrab (fecha, codcliente, modelo, dominio, codempl) values(']+;
 + xfech +[', ]+Str(cur_validacion.dni)+[,]+Str(cur_validacion.modelo)+[,']+ xdomi +[' ,']+ cur_emple.codempl +[')]
* Wait Window tsql
 tres=sqlx(fh,tsql,"nada")
tsql=[select MAX(norden) as num from ordentrab]
tres=sqlx(fh,tsql,"cur_numero")
Wait Window tsql
xnum=cur_numero.num
////////hasta aqui funciona bien....
Select cur_grilla
Scan
tsql=[ insert into detorden (norden, codrepuesto, desc, cantidad, pciovta, pciovehic)values(]+;
+ STR(xnum)+[ ,' ]+ cur_grilla.codigo_repuesto +[ ',' ]+ cur_grilla.descripcion +[ ', ]+STR(cur_grilla.cantidad)+[ , ]+;
+ STR(cur_grilla.pciovta,7,2) +[ , ]+ Str(cur_grilla.pciovehic,7,2) +[ )]
Wait Window tsql
tres=sqlx(fh,tsql,"nada")
Endscan
Los campos de la tabla detorden son numéricos excepto codrepuesto y desc que son carácter y, pciovta y pciovehic son decimales...
            Saludos!
Debes finalizar las respuestas si te satisfacen, luego abres una nuevapara la siguiente pregunta, esa es la regla que dice cuando uno se registra, por favor si me puedes hacer ese favor ypon un titulo que explique el problema para que todos puedan ubicarlo rápidamente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas