Page 1 of 1

Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 7:28 pm
by Armando
Hola amigos del foro:

En el siguiente código

Code: Select all  Expand view

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

Re: Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 8:01 pm
by sysctrl2
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

Re: Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 8:44 pm
by Armando
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

Re: Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 9:52 pm
by sysctrl2
raro :shock:

Re: Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 9:55 pm
by JoseAlvarez
Armando wrote:Hola amigos del foro:

En el siguiente código

Code: Select all  Expand view

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
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
cQuery += " tucampo:='" + Val2escape (tuvariable) + " ' , "

Re: Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 10:53 pm
by Armando
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

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


Saludos

Re: Problema usando STRTRAN()

PostPosted: Wed Jan 17, 2024 11:25 pm
by JoseAlvarez
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

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


Saludos


Armando disculpa, creo que es con TDolphin

Re: Problema usando STRTRAN()

PostPosted: Thu Jan 18, 2024 12:11 am
by Armando
José:

Aaaaah, nada que disculpar.

Saludos

Re: Problema usando STRTRAN()

PostPosted: Thu Jan 18, 2024 3:13 pm
by karinha

Re: Problema usando STRTRAN()

PostPosted: Thu Jan 18, 2024 3:25 pm
by cmsoft
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

Re: Problema usando STRTRAN()

PostPosted: Thu Jan 18, 2024 4:38 pm
by Armando
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