Transform xHarbour

Post Reply
User avatar
fgondi
Posts: 636
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España
Contact:

Transform xHarbour

Post by fgondi »

Mi intención es poder renombar la función Trasform() de xHarbour.

Renombrar por Transform2() y crear otra función con el Nombre Transform(), que se encargará de llamar despues de realizar algunos ajustes en los variables numericas concretamente, a la funcion Transform2().


Saludos Cordiales
Mariano González
ALSIS Gestión de Empresa
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
User avatar
QAZWSX2K
Posts: 359
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas

Post by QAZWSX2K »

no veo el problema, la funcion transform() definida por ti en el prg tendra prioridad sobre la de la libreria, ya que queda la que se enlaza primero
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
fgondi
Posts: 636
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España
Contact:

Post by fgondi »

Como comprenderas eso ya lo habia probado, y sencillamente no es posible.
Gracias por la respuesta.
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
Susy
Posts: 35
Joined: Wed Nov 15, 2006 4:04 pm

Post by Susy »

fgondi wrote:Como comprenderas eso ya lo habia probado, y sencillamente no es posible.
Gracias por la respuesta.
Hola amigo como esta pues, prueba a crear la funcion Transfr2() de 8 caracteres, recuerda que Transform() contiene 9 caracteres y creo que FiveWin, solo reconoce 8 caracteres en las funciones propias.
espero haber sido de su gran ayuda amigo.

Su amiga Susy
susan_mx@hotmail.com
User avatar
QAZWSX2K
Posts: 359
Joined: Tue Oct 25, 2005 7:06 pm
Location: Bogota - Caracas

Post by QAZWSX2K »

bueno claro, asi pierdes la transform original, lo que tiene que hacer no es renombrar la de xharbour, eso si es imposible, sino creo la transf2, entonces al numero tu le mandas asi por ejemplo transf2(numero, "999") en tu prg

y en tu funcion

function transf2(para1, para2)
tu decisiones sobre el numero, variables, etc
transform(para lo que lo uses despues, el de xharbour)
return algo

yo realmente no le veo el rollo, si quizas te explicaras mejor y no dices que has probado o no
Software especializado para oficinas contables con grandes volumenes de Informacion
Impresion de todos los formularios del Seniat, Dian

alex_patino74@hotmail.com
whatsapp 57+3214777217
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

Susy,

FWH no impone ninguna restricción sobre la longitud de los nombres.

Eso es algo que soporta directamente el compilador Harbour/xHarbour
regards, saludos

Antonio Linares
www.fivetechsoft.com
Susy
Posts: 35
Joined: Wed Nov 15, 2006 4:04 pm

Gracias Antonio...disculpa

Post by Susy »

Antonio Linares wrote:Susy,

FWH no impone ninguna restricción sobre la longitud de los nombres.

Eso es algo que soporta directamente el compilador Harbour/xHarbour
Gracias Antonio Disculpa, fui muy torpe al explicarme, quise decir que probablemente reconozca los 8 caracteres Transform() en lugar de Transform2() de la funcion propia creada por el programador, pero gracias . :D
Su amiga Susy
Susan_mx@hotmail.com
User avatar
fgondi
Posts: 636
Joined: Fri Oct 07, 2005 6:58 am
Location: Palencia, España
Contact:

Post by fgondi »

hola,

A ver si me explico correctamente:

Lo que necesito es que la función transform pase primero por una condiciones propias y posteriormente haga el transform normal.

Para ello tengo dos alternativas:

La primera:

Code: Select all

Func Transform2( xValue, cPicture )
xValue := MiFunc( xValue )
return Transform( xValue, cPicture )
Esta es la que me comentaís que haga. El problema es que tanto xharbour como fivewin llaman a la función transform, por ejemplo al hacer cualquier get.
Con lo que tendría que renombar todo el código fuente de xharbour y fivewin para que donde llama a transform llame a transform2

La segunda:

Code: Select all

Func Transform( xValue, cPicture )
xValue := MiFunc( xValue )
return Transform2( xValue, cPicture )
Con esta sólo tendría que renombrar la función transfom a transform2 y crea esta nueva función transform.
Me parece mas sencillo porque sólo tengo que renombrar una única función perteneciente a xharbour.

El problema es que no puedo sustituir al función transform de xharbour por la propia. El error que muestra es:

Code: Select all

Transform: Redefinition of predefined function
Un saludo
Fernando González Diez
ALSIS GHE Sistemas Informáticos
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

Creo, que TRANSFORM no sea una FUNCTION y si un COMANDO del CLIPPER.

Desde la vérsion AUTUMM 86 no se puede usar ningun NOMBRE de COMANDO, internamente en nuestros programas. Mas...
João Santos - São Paulo - Brasil
Post Reply