Problema usando STRTRAN()

Problema usando STRTRAN()

Postby Armando » Wed Jan 17, 2024 7:28 pm

Hola amigos del foro:

En el siguiente código

Code: Select all  Expand view  RUN

oWrk:Des := StrTran(oWrk:DES," ' "," ' ",1) Estoy incluyendo espacios solo para claridad en el foro
 


Pero el valor resultante en oWrk:DES me deja \' por ejemplo O'Riley me deja O\'Riley

Alguna otra alternativa?

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3242
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Problema usando STRTRAN()

Postby sysctrl2 » Wed Jan 17, 2024 8:01 pm

Paisano
no entiendo porque quieres reemplazar una comilla simple por otra comilla simple ?

cCad := StrTran( cCad, "\", "" ) //quito \ y lo reemplazo por espacio en blanco

saludos
Cesar Cortes Cruz
SysCtrl Software
Mexico

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

Re: Problema usando STRTRAN()

Postby Armando » Wed Jan 17, 2024 8:44 pm

César:

Con MySql cuando el texto incluye el apostrofe o una coma, el texto se trunca
en la posición donde se encuentra el apostrofe o la coma y el resto lo toma como
si fuera el contenido de otro campo, la aplicación truena

En el foro recomendaron sustituir el apostrofe o la coma ante poniendo el caracte
de escape (\).

En una aplicación me funcionó al 100% pero este nuevo desarrollo no funciona mas

Una opción es eliminar el apostrofe como bien indicas pero el cliente quiere que aparezca :-(

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3242
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Problema usando STRTRAN()

Postby sysctrl2 » Wed Jan 17, 2024 9:52 pm

raro :shock:
Cesar Cortes Cruz
SysCtrl Software
Mexico

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

Re: Problema usando STRTRAN()

Postby JoseAlvarez » Wed Jan 17, 2024 9:55 pm

Armando wrote:Hola amigos del foro:

En el siguiente código

Code: Select all  Expand view  RUN

oWrk:Des := StrTran(oWrk:DES," ' "," ' ",1) Estoy incluyendo espacios solo para claridad en el foro
 


Pero el valor resultante en oWrk:DES me deja \' por ejemplo O'Riley me deja O\'Riley

Alguna otra alternativa?

Saludos


Hola Armando, saludos.

Creo que tu problema no es el StrTran, es al momento de grabar la cadena en la tabla MySql

Prueba usando esto:

Code: Select all  Expand view  RUN
cQuery += " tucampo:='" + Val2escape (tuvariable) + " ' "


Si el armado del Query lleva mas campos seguidos de este, debes agregar coma al final

Code: Select all  Expand view  RUN
cQuery += " tucampo:='" + Val2escape (tuvariable) + " ' , "
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
 
Posts: 805
Joined: Sun Nov 09, 2014 5:01 pm

Re: Problema usando STRTRAN()

Postby Armando » Wed Jan 17, 2024 10:53 pm

José:

Agradezco el consejo, no es un query es al momento de grabar, pero al compilar me reclama la función
Val2Escape(), me falta algo?

Code: Select all  Expand view  RUN

oRsWrk:Fields("WRK_DES"):Value := Val2escape(oWrk:DES)
 


Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3242
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Problema usando STRTRAN()

Postby JoseAlvarez » Wed Jan 17, 2024 11:25 pm

Armando wrote:José:

Agradezco el consejo, no es un query es al momento de grabar, pero al compilar me reclama la función
Val2Escape(), me falta algo?

Code: Select all  Expand view  RUN

oRsWrk:Fields("WRK_DES"):Value := Val2escape(oWrk:DES)
 


Saludos


Armando disculpa, creo que es con TDolphin
"Los errores en programación, siempre están entre la silla y el teclado..."

Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin

Carora, Estado Lara, Venezuela.
User avatar
JoseAlvarez
 
Posts: 805
Joined: Sun Nov 09, 2014 5:01 pm

Re: Problema usando STRTRAN()

Postby Armando » Thu Jan 18, 2024 12:11 am

José:

Aaaaah, nada que disculpar.

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3242
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México

Re: Problema usando STRTRAN()

Postby karinha » Thu Jan 18, 2024 3:13 pm

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7872
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Re: Problema usando STRTRAN()

Postby cmsoft » Thu Jan 18, 2024 3:25 pm

Armando:
Que Charset tienes definido en la tabla, y que Collation para ese campo?
Armando wrote:En una aplicación me funcionó al 100% pero este nuevo desarrollo no funciona mas

Comprueba que sea el mismo del proyecto que si te funcionaba
User avatar
cmsoft
 
Posts: 1293
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: Problema usando STRTRAN()

Postby Armando » Thu Jan 18, 2024 4:38 pm

Karinha:

Uso MySql con ADO, y la función Val2Escape() es de TDolphin, aún así, muchas gracias.

César:

Hago copiar y pegar el código que sí funciona pero en la nueva aplicación no funciona,
empiezo a pensar que sea problema de versiones, reviso y aviso.

Saludos a ambos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
Armando
 
Posts: 3242
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 95 guests