Ticket #1593 (reopened defect)

Opened 6 years ago

Last modified 5 years ago

ToTolName - No elimina el carácter "!"

Reported by: mlocubiche Owned by: vdebuen
Priority: normal Milestone: Mantainance
Component: Kernel Version: 3.1
Severity: normal Keywords:
Cc:

Description

Ejemplo:
/////////////////////////////////////////////////////////////////
Text name = ToTolName("H2Oh!");
Serie Eval(" Serie "+name+ " = CalInd(C, Diario);")

/////////////////////////////////////////////////////////////////

Entiendo que ToTolName debe cambiar una expresion eliminando caracteres no validos en el nombre de una variable TOL. Gracias.

Un saludo,

Change History

Changed 5 years ago by vdebuen

Desconozco esa función ToTolName
La función oficial para hacer eso siempre ha sido ToName que funciona sin problemas.
Buscaré ToTolName para cambiarla y que llame a ToNmae

Changed 5 years ago by vdebuen

  • status changed from new to closed
  • resolution set to fixed

(In [5707]) Fixes #1593

Changed 5 years ago by jmarinero

  • status changed from closed to reopened
  • resolution fixed deleted

Buenas.

Hay un problema con la implementación que se ha aplicado para resolver este ticket.

En primer lugar, el carácter "!" en vez de desaparecer es sustituido por "_". Necesitaríamos que simplemente desapareciera.

En segundo lugar. En los proyectos de CocaCola utilizamos la función ToTolName para, entre otras cosas, cambiar los nombres de las productos por nombres de variables válidos. Esos nombres luego se utilizan para rellenar las celdas de los model excel que definen los modelos de CocaCola. Y esas celdas las rellenamos a mano. Antes de eso, los espacios eran eliminados y capitalizada la primera letra después de cada espacio. Y así es como están rellenadas a mano miles de celdas en múltiples model excel de, al menos, los proyectos de CocaCola, incluidos proyectos que ahora se están elaborando y entregando.

La implementación actual de ToTolName en vez de eliminar los espacios, los sustituye por "_".

Pongo como ejemplo el texto "Coca Cola" que antes era transformado a "CocaCola" y ahora a "Coca_Cola". Nos hemos dado cuenta al comprobar que proyectos que estamos elaborando ahora mismo han dejado de funcionar, dado que las funciones no encuentran ningún producto de nombre "Coca_Cola". Y así con multitud de marcas, canales de distribución y demás.

Por favor, necesitaríamos que ToTolName volviese a eliminar los caracteres que antes eliminaba en vez de sustituirlos por guión bajo. Como mínimo, hemos detectado el cambio en el espacio. Necesitaríamos que volviese a estar como antes. La descripción original de ToTolName era:

"Cambia una expresion eliminando caracteres no validos en el nombre de una variable TOL y eliminando espacios. Devuelve la expresion en minusculas salvo la primera letra de cada palabra del texto original. Si la expresion comienza por una cifra añade al inicio de esta el caracter '_', es decir '20' -> '_20', '  20' -> '  _20'"

Gracias, un saludo

Changed 5 years ago by josp

(In [5767]) refs #1593, se restaura el comportamiento de ToTolname y se incluye el procesamiento de los caracteres "!" y "¡"

Changed 5 years ago by josp

(In [5768]) refs #1593, incrementamos numero de version de StdLib

Note: See TracTickets for help on using tickets.