Page 1 of 1

xbrowse:cHeader

PostPosted: Thu Oct 30, 2014 6:53 pm
by fgondi
Desde hace bastante tiempo se puede llamar a las columnas de xbrowse con Llamada a la columna de xbrowse con oBrw:cHeader en lugar de usar oBrw:oCol( <cHeader> )

El problema es que ahora tengo que cambiar el nombre de algunas columnas durante la ejecución, y por tanto el sistema genera errores.
Ejemplo:
La columna "Debe" durante la ejecución pasa a llamarse "Debit".
En el código fuente hay llamadas a oBrw:Debe:...

¿Puedo ver como se realiza esa sustitución en fwh, para ver como puedo cambiarlo?

Re: xbrowse:cHeader

PostPosted: Thu Oct 30, 2014 9:01 pm
by Antonio Linares
Fernando,

Aunque Rao es el gran expero de XBrowse, en mi opinión se está usando el METHOD OnError( uParam1 ) CLASS TXBrowse

Prueba a poner un MsgInfo() ahí y debería llamarse en esos casos

Re: xbrowse:cHeader

PostPosted: Thu Oct 30, 2014 9:49 pm
by fgondi
Antonio,

Sí figura ahí la sustitución.

Muchas gracias por tu ayuda.

Re: xbrowse:cHeader

PostPosted: Thu Oct 30, 2014 9:58 pm
by joseluisysturiz
Yo no las llamo por el nombre sino por el numero de la columna, asi si cambia el nombre es transparente, lo uso asi, nose si eso te ayude...saludos... :shock:

oBrw:aCols[nCol]

Re: xbrowse:cHeader

PostPosted: Thu Oct 30, 2014 10:41 pm
by fgondi
Muchas gracias José Luis,

Antes también lo usaba así. Llamando por el número de la columna.

Pero eso conllevaba 2 problemas:
1º Que cambien el orden de las columnas.
2º Con el tiempo, al leer el código, saber que columna es la que estoy modificando, ya que sólo veía oBrw:aCols[ nCol ]

La mejor solución que encontré es llamar a las columnas con oBrw:Debe (Siendo "debe" el cHeader de una columna)
Hasta aquí todo perfecto y funcionando de maravilla.

El problema ahora, es que he tenido que migrar al Inglés todo el sistema (gracias Antonio por el contacto de los tractuctores).
Resultado, ahora la columna se llama Debit y cuando llega a la línea con oBrw:Debe, aparece el error.

Solución:
He incluido en TXBrwColumn el DATA cHeaderLang. y en este valor guardo el nombre de la columna en Español.
La sustitución de oBrw:Debe por oBrw:aCols[ nCol ], se realiza en el METHOD OnError( uParam1 ) como indicó Antonio.
En este método se llama al METHOD oCol( u ) y este es el que con un aScan busca el nombre "u" entre los cHeader que tiene oBrw:aCols
He modificado el método oCol, añadiendo que si el resultado del primer aScan es 0, volver a buscar con aScan, pero esta vez sobre el data cHeaderLang
Code: Select all  Expand view
nAt := AScan( ::aCols, { |o| Upper(o:cHeaderLang) == Upper(u) } )

Re: xbrowse:cHeader

PostPosted: Thu Oct 30, 2014 11:32 pm
by joseluisysturiz
Bueno, todo se da dependiendo del uso que tenga el xbrowse, en mi caso nunca muevo las columnas, pero esta buena tu implementacion, siempre es bueno tener alternativas a las normales, gracias, saludos... :shock:

Re: xbrowse:cHeader

PostPosted: Fri Oct 31, 2014 8:36 am
by Antonio Linares
Fernando,

Me alegro que hayas podido solucionarlo.

Espero que hayas quedado contento con el trabajo de estos traductores amigos mios. Son palabras tecnicas y es mas complicado, asi que si tu cliente no entendiese correctamente algun termino, contacta con ellos que seguro te ayudaran :-)

Re: xbrowse:cHeader

PostPosted: Fri Oct 31, 2014 9:03 am
by fgondi
Antonio,

la empresa que va usar el sistema tanto en Inglés como en Español, esta acostumbrando a usar otros sistemas de gestión en Inglés, y han quedado muy gratamente sorprendidos de la traducción a nivel técnico.
Estoy muy contento.

En los correos figuran 2 nombres. El nombre y apellido del hombre me suena mucho, mucho. Me imagino que a ti te suena mucho mas. Es para estar orgulloso. :wink: :wink:

Re: xbrowse:cHeader

PostPosted: Fri Oct 31, 2014 12:25 pm
by Antonio Linares
:-D

Lo que es querer ayudar a un hermano ;-)

me alegro de que hayan hecho un buen trabajo :-)

gracias!

Re: xbrowse:cHeader

PostPosted: Fri Oct 31, 2014 5:24 pm
by mmtraductores
Hola, somos Marta y Manolo (cuñada y hermano de Antonio Linares). Estamos a vuestra entera disposición para cualquier traducción que en cualquier momento pudierais necesitar de español a inglés, holandés, sueco y francés y viceversa, en cualquier campo y materia. Podéis contactar con nosotros telefónicamente o por Whatsapp en el 609576551, o bien por e-mail: mmtraductores@gmail.com.

Estamos muy contentos de que Fernando haya quedado satisfecho con el trabajo realizado :-)