Problemas de Cadenas largas de VF9 a Sql2000

Hola amigo necesito insertar desde Visual Foxpro 9 a una Base de datos de Sql2000 Server pero cuando intento grabar la consulta se me cae. Te envío mi código que utilizo para que me ayudes por favor
= TABLEUPDATE(.T.) Wcadena1=" Insert Into Dat_Per(Gen_Per, Tdc_Per, Dni_Per, Ruc_Per, Dat_Per, Sex_Per, Civ_Per, Fna_Per, Reg_Per, Tel_Per,; Cel_Per, Ema_Per, Cus_Per, Esa_Per, Dic_Per, Ndi_Per, Cad_Per, Con_Per, Fin_Per, Car_Per, Ubi_Per, Tur_Per,; Tip_Per) Values("+; "(? Thisform.Pageframe1.Page1.Gen_Per.Value, ?Thisform.Pageframe1.Page1.Tdc_Per.Value,; ? Thisform.Pageframe1.Page1.Dni_Per.Value, ?Thisform.Pageframe1.Page1.Ruc_Per.Value, ?Thisform.Pageframe1.Page1.Dat_Per.Value+; ? Thisform.Pageframe1.Page1.Sex_Per.Value, ?Thisform.Pageframe1.Page1.Civ_Per.Value, ?Thisform.Pageframe1.Page1.Fna_Per.Value,; ? Thisform.Pageframe1.Page1.Reg_Per.Value, ?Thisform.Pageframe1.Page1.Tel_Per.Value, ?Thisform.Pageframe1.Page1.Cel_Per.Value,; ? Thisform.Pageframe1.Page1.Ema_Per.Value, ?Thisform.Pageframe1.Page1.Cus_Per.Value, ?Thisform.Pageframe1.Page1.Esa_Per.Value,; ? Thisform.Pageframe1.Page1.Dic_Per.Value, ?Thisform.Pageframe1.Page1.Ndi_Per.Value, ?Thisform.Pageframe1.Page1.Cad_Per.Value,; ? Thisform.Pageframe1.Page1.Con_Per.Value, ?Thisform.Pageframe1.Page1.Fin_Per.Value, ?Thisform.Pageframe1.Page1.Car_Per.Value,; ? Thisform.Pageframe1.Page1.Ubi_Per.Value, ?Thisform.Pageframe1.Page1.Tur_Per.Value, ?Thisform.Pageframe1.Page1.Tip_Per.Value)" If Sqlexec (CnxSap,Wcadena1)>0 Else a=Aerror(Mat) Messagebox(Mat(2),55,'Error al Grabar') EndIf

de antemano mil gracias por tu Tiempo

1 respuesta

Respuesta
1

Uno puede ser pasar todo este tremendo código Thisform. Pageframe1. Page1 por

with Thisform.Pageframe1.Page1

= TABLEUPDATE(.T.) Wcadena1=" Insert Into Dat_Per(Gen_Per, Tdc_Per, Dni_Per, Ruc_Per, Dat_Per, Sex_Per, Civ_Per, Fna_Per, Reg_Per, Tel_Per,; Cel_Per, Ema_Per, Cus_Per, Esa_Per, Dic_Per, Ndi_Per, Cad_Per, Con_Per, Fin_Per, Car_Per, Ubi_Per, Tur_Per,; Tip_Per) Values("+; "(? .Gen_Per.Value, ?.Tdc_Per.Value,; ? .Dni_Per.Value, ?.Page1.Ruc_Per.Value, ?.Dat_Per.Value+; ? .Sex_Per.Value, ?..Civ_Per.Value, ?.Fna_Per.Value,; ? .Reg_Per.Value, ?.Tel_Per.Value, ?.Cel_Per.Value,; ? .Ema_Per.Value, ?.Cus_Per.Value, ?.Esa_Per.Value,; ? ..Dic_Per.Value, ?.Ndi_Per.Value, ?.Cad_Per.Value,; ? .Con_Per.Value, ?.Page1.Fin_Per.Value, ?.Page1.Car_Per.Value,; ? .Ubi_Per.Value, ?.Tur_Per.Value, ?.Tip_Per.Value)"

Endwith

Prueba y me avisas

Me sale el Error FALTA ALGÚN OPERANDO

ESTE ES EL CÓDIGO NUEVO

With Thisform
.Pageframe1.Page1
=
TABLEUPDATE(.T.)
Wcadena1="
Insert Into Dat_Per(Gen_Per, Tdc_Per, Dni_Per, Ruc_Per, Dat_Per, Sex_Per, Civ_Per, Fna_Per, Reg_Per, Tel_Per,;
Cel_Per, Ema_Per, Cus_Per, Esa_Per, Dic_Per, Ndi_Per, Cad_Per, Con_Per, Fin_Per, Car_Per, Ubi_Per, Tur_Per,;
Tip_Per)
Values("+;
?.Gen_Per.
Value, ?.Tdc_Per.Value+;
?.Dni_Per.
Value, ?.Ruc_Per.Value, ?.Dat_Per.Value+;
?.Sex_Per.
Value, ?.Civ_Per.Value, ?.Fna_Per.Value+;
?.Reg_Per.
Value, ?.Tel_Per.Value, ?.Cel_Per.Value+;
?.Ema_Per.
Value, ?.Cus_Per.Value, ?.Esa_Per.Value+;
?.Dic_Per.
Value, ?.Ndi_Per.Value, ?.Cad_Per.Value+;
?.Con_Per.
Value, ?.Fin_Per.Value, ?.Car_Per.Value+;
?.Ubi_Per.
Value, ?.Tur_Per.Value, ?.Tip_Per.Value)"
Endwith
If Sqlexec
(CnxSap,Wcadena1)>0
Else
a=Aerror(Mat)
Messagebox(Mat(2),55,'Error al Grabar')
EndIf

Las comillas deberías cerrarla al final sin el signo + la concatenación esta mal echa

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas