FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posts: 7
Joined: Sun Nov 13, 2016 04:56 AM
2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Sun Nov 13, 2016 08:38 PM
Buenas foro quisiera hacer dos consultas:

1) Entre a trabajar en una nueva empresa que tiene un sistema en clipper (que es un desastre de programación y diseño), como tengo que mantenerlo hasta que empiecen la migración (que seguro llevara años si es que se hace), queria saber que habia pasado con la pagina de harbour? Porque aparece hace meses caida? Sigue desde otra pagina? Los proyectos siguen avanzando o quedaron muertos? Esto mas que nada porque a la persona que reemplazo va a otra empresa y tiene que mantener un sistema en clipper y le recomende harbour, el no quiere aprender nuevos lenguajes si no seguir con este, por eso queria saber si le recomendaba bajar harbour o si se pasara a alguno de los otros como xharbour, mini gui, etc.

2) Me traje de un viejo laburo unos fuentes con funciones y al querer compilarlo con harbour me salto error porque no reconocia el comando "constructor" agregue "hbclass.ch" y me lo reconocio pero ahora me saltan errores en varias lineas y pude determinar que es con el comando new del contructor, les paso un ejemplo:

#include "class(y).ch"
#include "inkey.ch"
#include "setcurs.ch"
#include "set.ch"
#include "hbclass.ch"

create class GenBrowse from TBrowse


export:
instvar autoEdit
instvar appendMode
instvar aTBcampo
instvar vConsulta

endclass

constructor new (nTop, nLeft, nBottom, nRight), (nTop, nLeft, nBottom, nRight)

::headSep := "═╤═"
::colSep := " │ "

IF ISCOLOR()
::setColor( "N/W, N/BG, B/W, B/BG, B/W, B/BG, R/W, B/R" )
ELSE
::setColor("W/N, N/W, W/N, N/W, W+/N,N/W ,B+, U " )
// ENDIF 1 2 3 4 5 6 7 8
ENDIF
::colBlockNum := { |x| x := IF( VALTYPE( x ) == "C", VAL( x ), x ), ;
if( x < 0, { 7, 8 }, { 5, 6 } ) }
::colBlockAlfa := {|| {3,4} }
::colBlockDate := {|| {3,4} }
::vConsulta := 0
::aTbCampo := {}
::vTbDbase := .F.
::skipAgrega := .F.



El error me salta en la linea que resalte "instvar autoEdit", porque no me reconoce la instrucción "new", alguno sabra si me falta agregar alguna ch mas para tener al constructor trabajado bien?

Saludos.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Sun Nov 13, 2016 09:07 PM
Comenta esta línea:

// #include "class(y).ch"

y cambia "instvar" por "data"

Harbour está muy vivo. Esta es la página oficial de Harbour ahora:
https://github.com/harbour/core
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 817
Joined: Sun Jun 15, 2008 07:47 PM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Tue Nov 15, 2016 12:41 PM

Más bien esta: https://harbour.github.io/
Harbour está más fuerte que nunca :lol: :lol: :lol: :lol:

______________________________________________________________________________

Sevilla - Andalucía
Posts: 7
Joined: Sun Nov 13, 2016 04:56 AM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Wed Nov 16, 2016 02:53 AM

Hola Antonio, muchas gracias por responderme tan rapido.
Avanzo la compilación pero ahora me tira el siguiente mensaje:

Lines 1213, Functions/Procedures 3
Generating C source output to 'obj\B_ROCOLU.c'... Done.
hbmk2: Compiling...
hbmk2: Linking... "p03".exe
obj/B_ABROW.o:B_ABROW.c:(.data+0x68): undefined reference to HB_FUN_GENBROWSE' obj/B_ABROW.o:B_ABROW.c:(.data+0x188): undefined reference toHB_FUN_ABROWSE_NEW'
obj/B_ROCOLU.o:B_ROCOLU.c:(.data+0x108): undefined reference to `HB_FUN_ROCOLUMN_NEW'
collect2: ld returned 1 exit status
hbmk2: Error: Running linker. 1
c:\harbour3\comp\mingw\bin\gcc.exe obj/proc03.o ........

En el fuente B_GBROW.PRG esta creando la clase GenBrowse del TBrowse, habrá que cambiar alguna linea?

//#include "class(y).ch"

include "inkey.ch"

include "setcurs.ch"

include "set.ch"

include "hbclass.ch"

create class GenBrowse from TBrowse

export:
data autoEdit
data appendMode
data aTBcampo
data vConsulta

Muchas gracias.
Saludos.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Wed Nov 16, 2016 07:49 AM

Estas enlazando B_GBROW.obj en tu EXE ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 7
Joined: Sun Nov 13, 2016 04:56 AM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Thu Nov 17, 2016 03:12 AM
Entiendo que si, aca esta el archivo hbp con el cual compilo el sistema. El mensaje que me salta es con los fuentes que estan marcados en negrita.

Inicio archivo hbp --->
-o"p03"

# Compila solo los fuentes modificados.
-inc

#-mt
#-gtwvg #libreria grafica
#-gui #libreria grafica
#-rebuild

#-trace
-info
-prgflag=-m -ic:\harbour3\include;c:\harbour3\comp\mingw\include;E:\clipper\INCLUDE
-ldflag=-Wl,--allow-multiple-definition
#-lc:\harbour3\lib\win\mingw\libhbwin.a
-lc:\harbour3\lib\win\mingw\libhbct.a
-lc:\harbour3\lib\win\mingw\libhbclipsm.a
-lc:\harbour3\lib\win\mingw\libxhb.a
#-lc:\harbour3\lib\win\mingw\libhbziparc.a
#-lc:\harbour3\lib\win\mingw\libhbmzip.a
#-lc:\harbour3\lib\win\mingw\libhbnetio.a

-workdir=obj

#Lista de PRG's
proc03.prg
ext\func.prg
FUNCGENE\SOMBRA.PRG
FUNCGENE\F_SELEC2.PRG
#FUNCGENE\F_SELEC3.PRG
FUNCGENE\FUNCGENE.PRG
BROWSE\B_GBROW.PRG
BROWSE\B_ABROW.PRG
BROWSE\B_ABROW.PRG
BROWSE\B_ROCOLU.PRG
BROWSE\B_RWCOLU.PRG

<-- Fin Archivo hbp

La instruccion en el batch que llama al hbp es la siguiente en el batch:
hbmk2 %1.hbp -lc:\harbour3\lib\win\mingw\libhbdebug.a -prgflag=-b
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Thu Nov 17, 2016 10:19 AM

Comprueba si se genera el fichero B_GBROW.obj ó B_GBROW.o

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 7
Joined: Sun Nov 13, 2016 04:56 AM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Sun Nov 20, 2016 01:12 AM

Buenas Antonio, chequee y me genero tanto el .c como el .o
Probe cambiando el nombre de funciones y de fuentes y aún así aparece. Cosa de mandinga. :shock:
Slds.

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Sun Nov 20, 2016 08:09 AM

Lo que yo haría en tu lugar sería construir un fichero make propio y asi controlar 100% la construcción del EXE.

Hay alguna razón en especial por la que tengas que usar MinGW ? Borland es mucho más amigable y ya tenemos
ficheros make que podemos proporcionarte de ejemplo para que asi estés operativo cuanto antes.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 7
Joined: Sun Nov 13, 2016 04:56 AM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Sun Nov 20, 2016 01:03 PM

La realidad es que me base todo en lo que me traje de una empresa. Como logre compilar programas chicos y claros, segui en esa línea.
Si hay otros caminos que me permitan acortar o disfrutar mas del viaje, vamos para adelante. Por favor, cuando te sea posible pasame los archivos make.
El directorio con el harbour3 es el mismo que uso desde esa epoca no lo actualice y las librerias no las conozco aún para que sirve cada una, al haber entrado a un nuevo trabajo me divido entre como mantener un sistema en el que debo arreglar manualmente datos cada 2x3, entre que me enseñan para mantenter otro sistema en php, mysql y javascript y entre mis deseos de conocer a harbour, así que como veras estoy para usar camisa de fuerza ya. jajajajaja :D

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: 2 consultas - 1) Sigue harbour? 2) Constructor y new.
Posted: Sun Nov 20, 2016 05:45 PM

Aqui tienes uno para Borland:

viewtopic.php?f=6t=29272hilit=borland+makefile#p165094

y aqui otro para Microsoft Visual Studio:

viewtopic.php?f=6t=28959p=163012hilit=microsoft+makefile#p162896

&&&&&

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion