Iniciando con mod_harbour

mod_harbour es un módulo para Apache que permite correr tus PRGs directamente en la web!!!

Iniciando con mod_harbour

Postby EBM » Wed Oct 06, 2021 6:13 pm

Hola a todos,

Estoy iniciando con mod_harbour, estoy en el proceso de instalarlo y configurar todo. Entre a modharbour.app/compass y ahi encontré una introducción y como instalar tweb y mercury.

Hasta tweb tengo todo instalado y parece que funciona por que corro el tutor.prg y me da la version 1.4 de TWeb, sin embargo lo que no he podido hacer que funcione es mercury, ejecuto localhost/md/md.hrb y no genera error pero queda en blanco la pagina, que estoy configurando mal?

Otra duda, en todo este mundo de mod_harbour y el tweb, mercury ... :? ¿Que es harbourino? ¿Para que funciona y donde encuentro documentación o ejemplos de uso?

Saludos!!

Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby Carles » Thu Oct 07, 2021 5:09 am

Hola

EBM wrote:Hasta tweb tengo todo instalado y parece que funciona por que corro el tutor.prg y me da la version 1.4 de TWeb, sin embargo lo que no he podido hacer que funcione es mercury, ejecuto localhost/md/md.hrb y no genera error pero queda en blanco la pagina, que estoy configurando mal?


Mercury funciona con un mod diferente. Has de instalar el que va en el paquete que te has descargado. Aqui tienes mas informacion --> https://modharbour.app/compass/search/quick

Para saber si puedes usar Mercury con tu instalación mod puedes ejecutar este sencillo prg

Code: Select all  Expand view  RUN
//  {% ErrorBlock( { | oError | ap_rputs( 'Mercury is <b>not compatible</b> with this mod Harbour' ), dobreak(oError) } ) %}

function main()
   
    ?? 'Version Mercury', modVersion()

retu
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
Skype -> https://join.skype.com/cnzQg3Kr1dnk
User avatar
Carles
 
Posts: 1139
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona

Re: Iniciando con mod_harbour

Postby EBM » Fri Oct 08, 2021 6:36 pm

Hola Carles,

Mercury ya está funcionando y estoy siguiendo el manual que tienes en compass v1.4. He podido avanzar hasta el punto donde creamos un controller customer.prg

Defino el ROUTE search, creo customer.prg con la clase y sus metodos y el search.view pero al ejecutarlo me manda el siguiente error que no sé como solucionarlo:

File Source customer.prg
Code _HB_MEMBER New( oController) AS CLASS Customer; oClass:AddMethod( "New", @Customer_New(), nScope + iif( .T., 8, 0 ) + iif( .F., 256, 0 ) + iif( .F., 2048, 0 ) )
Description Syntax error "syntax error at '_HB_MEMBER'"
Operation line: 16
Subsytem COMPILER


0001 #line 3
0002 STATIC __lAutenticate
0003 FUNCTION __RunController( o )
0004 LOCAL oC
0005 __lAutenticate := .T.
0006 oC := customer():New( o )
0007 IF __objHasMethod( oC, "search" )
0008 IF __lAutenticate
0009 oC:search(o)
0010 ENDIF
0011 ELSE
0012 App():ShowError( "Method search() not defined in customer.prg controller.", "Controller Error!" )
0013 ENDIF
0014 RETU NIL
0015 _HB_CLASS Customer ; function Customer ( ... ) ; thread STATIC s_oClass ; LOCAL nScope, oClass, oInstance ; IF s_oClass == NIL .AND. __clsLockDef( @s_oClass ) ; BEGIN SEQUENCE ; nScope := 1 ; ( ( nScope ) ) ; oClass := iif( .F.,, HBClass():new( "Customer", iif( .F., { }, { @HBObject() } ), @Customer() ) ) ;
0016 _HB_MEMBER New( oController) AS CLASS Customer; oClass:AddMethod( "New", @Customer_New(), nScope + iif( .T., 8, 0 ) + iif( .F., 256, 0 ) + iif( .F., 2048, 0 ) )
0017 _HB_MEMBER GetByState( oController); oClass:AddMethod( "GetByState", @Customer_GetByState(), nScope + iif( .F., 8, 0 ) + iif( .F., 256, 0 ) + iif( .F., 2048, 0 ) )
0018 _HB_MEMBER Search( oController); oClass:AddMethod( "Search", @Customer_Search(), nScope + iif( .F., 8, 0 ) + iif( .F., 256, 0 ) + iif( .F., 2048, 0 ) )
0019 oClass:Create() ; ; ALWAYS ; __clsUnlockDef( @s_oClass, oClass ) ; end ; oInstance := oClass:Instance() ; IF __objHasMsg( oInstance, "InitClass" ) ; oInstance:InitClass( ... ) ; END ; RETURN oInstance ; END ; RETURN s_oClass:Instance() AS CLASS Customer ;
0020
0021
0022 static FUNCTION Customer_New( oController ) ; local Self AS CLASS Customer := QSelf() AS CLASS Customer
0023 Return Self
0024
0025
0026 static FUNCTION Customer_GetByState( oController ) ; local Self AS CLASS Customer := QSelf() AS CLASS Customer
0027 Return NIL
0028
0029
0030 static FUNCTION Customer_Search( oController ) ; local Self AS CLASS Customer := QSelf() AS CLASS Customer
0031 oController:View( "search.view" )
0032 Return NIL


Ya revisé el codigo y creo que todo esta bien

Que me estará fallando?

Saludos!

Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby Carles » Fri Oct 08, 2021 6:48 pm

Eduardo

Pon el codigo aqui

C.
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
Skype -> https://join.skype.com/cnzQg3Kr1dnk
User avatar
Carles
 
Posts: 1139
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona

Re: Iniciando con mod_harbour

Postby EBM » Fri Oct 08, 2021 7:26 pm

Hola Carles,

Codigo de index.prg:
Code: Select all  Expand view  RUN

// ------------------------------------------------------------------------------
// Title......: Hello !
// Description: Example de web application with mercury...
// Date.......: 22/05/2020
// ------------------------------------------------------------------------------
// {% LoadHRB( 'lib/mercury/mercury.hrb' ) %} // Loading system MVC Mercury
// ------------------------------------------------------------------------------

#include {% MercuryInclude( 'lib/mercury' ) %}

FUNCTION Main()
LOCAL oApp

// Define App
DEFINE APP oApp TITLE 'My web aplication...'

// Config Routes
DEFINE ROUTE 'root'   URL '/'      VIEW       'hello.view'           METHOD 'GET' OF oApp
DEFINE ROUTE 'view1'  URL 'view1'  VIEW       'view1.view'           METHOD 'GET' OF oApp
DEFINE ROUTE 'view2'  URL 'view2'  VIEW       'view2.view'           METHOD 'GET' OF oApp
DEFINE ROUTE 'state'  URL 'state'  VIEW       'state.view'           METHOD 'GET' OF oApp
DEFINE ROUTE 'search' URL 'search' CONTROLLER 'search@customer.prg'  METHOD 'GET' OF oApp

// System init...
INIT APP oApp

Return NIL

///////////////////////////////////////////////////////////////////////////////
FUNCTION AppPathData()
Return AP_GetEnv( "DOCUMENT_ROOT" ) + AP_GetEnv( "PATH_DATA" )
 


Codigo de customer.prg
Code: Select all  Expand view  RUN

CLASS Customer
   METHOD New( oController ) CONSTRUCTOR
   METHOD GetByState( oController )
   METHOD Search( oController )
ENDCLASS

//----------------------------------------------------------------------------//
METHOD New( oController ) CLASS Customer
Return Self

//----------------------------------------------------------------------------//
METHOD GetByState( oController ) CLASS Customer
Return NIL

//----------------------------------------------------------------------------//
METHOD Search( oController ) CLASS Customer
   oController:View( 'search.view' )
Return NIL
 


Codigo de Search.view:
Code: Select all  Expand view  RUN

<h1> Estoy en Search! </h1>
<hr>
 


Revisé si el mod es el que tu tienes y la libharbour.dll, si cambio el mod y la dll por lo que viene en tu pack, el error cambia a:

Proc. file C:/xampp/htdocs/go/index.prg
Error (1) Unknown or unregistered symbol
Operation HB_COMPILEFROMBUF
Subsystem BASE/6101
Trace ReplaceBlocks
Block
0001 // ------------------------------------------------------------------------------
0002 // Title......: Hello !
0003 // Description: Example de web application with mercury...
0004 // Date.......: 22/05/2020
0005 // ------------------------------------------------------------------------------
0006 // {% LoadHRB( 'lib/mercury/mercury.hrb' ) %}
Error Code LoadHRB( 'lib/mercury/mercury.hrb' )

Pero ....
Con el mod y la dll que viene en tu pack me da este error pero en el codigo de ejemplo para probar mercury me dice version mercury 1.3 y con el mod y dll que baje del sitio que puso Antonio da el primer error que te puse y en el codigo de ejemplo dice que Mercury is not compatible with this mod_harbour

Con el mod y la dll de Antonio todo iba funcionando bien, pero si reemplazo la mod y la dll por la de tu pack, marca error al cargar la mercury.hrb

Espero haberte podido aclarar lo que me sucede.

Gracias por tu tiempo

Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby Carles » Fri Oct 08, 2021 7:34 pm

Eduardo,

El codigo siguiente
Code: Select all  Expand view  RUN
CLASS Customer
   METHOD New( oController ) CONSTRUCTOR
   METHOD GetByState( oController )
   METHOD Search( oController )
ENDCLASS
 


Prueba de insertar una linea despues la CLASS

Code: Select all  Expand view  RUN
CLASS Customer

   METHOD New( oController ) CONSTRUCTOR
   METHOD GetByState( oController )
   METHOD Search( oController )
ENDCLASS
 


C.
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
Skype -> https://join.skype.com/cnzQg3Kr1dnk
User avatar
Carles
 
Posts: 1139
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona

Re: Iniciando con mod_harbour

Postby EBM » Fri Oct 08, 2021 7:56 pm

Carles,

Funciona!!! :D

Parece que ya funciona, ahora puedo seguir, Gracias

Tengo algunas dudas si pudieras ayudarme:

En este momento tengo el mod y la dll que baje de los link que puso Antonio y esta funcionando pero el test que me pusiste para ver si mercury funcionaba dice que no :?

Pero si pongo el mod y la dll de tu pack me dice version mercury 1.3 pero da error al cargar la mercury.hrb.

Luego, si pongo todo lo de tu pack, incluida la lib mercury.hrb me dice que no encuentra el hbclass.ch y el hboo.ch

Cual debe ser la configuración que debo tener?

Por el momento tengo el mod y la dll de Antonio y la lib de mercury la tengo de Mercury-masters que baje de Compass 1.4

Saludos!!

Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby Carles » Fri Oct 08, 2021 8:00 pm

Eduardo,

EBM wrote:Funciona!!!

Parece que ya funciona, ahora puedo seguir, Gracias


Es un bug del prepro de harbour. De momento te lo apuntas. :D

Mañana te ayudo a solucionar el resto...

C.
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
Skype -> https://join.skype.com/cnzQg3Kr1dnk
User avatar
Carles
 
Posts: 1139
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona

Re: Iniciando con mod_harbour

Postby EBM » Fri Oct 08, 2021 9:49 pm

Gracias Carles!!


Enviado desde mi iPhone utilizando Tapatalk
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby EBM » Mon Jan 10, 2022 8:28 pm

Hola a todos,

He estado haciendo los ejemplos de TWeb y Mercury, pero me he encontrado a BEACON que entiendo es de Cristobal Navarro, es un complemento uno de los otros o son independientes unos de el otro? Que diferencia hay en el uso de uno o de otro?

Ahora que voy iniciando con mod harbour me ayudaria bastante si me dan una orientadita sobre cual utilizar.

Saludos!

Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby Carles » Tue Jan 11, 2022 2:16 pm

Eduardo,

Cree TWeb para comprobar como podemos facilmente usar el preprocesador para crearnos nuestros propios frameworks. No es la idea de que sea un framework que te sirva para crear cualquier pantalla, sino rapidamente pequeñas y potentes pantallas de entrada de datos. Hay lo que hay para quien quiera y se atreva ampliarlo, pero esta en el punto que queria inicialmente. Luego aparecio Beacon que es otra manera de crear pantallas para web con el mod, otra solucion y que no tiene nada q ver con TWeb, son indepedientes uno del otro.

Mi consejo para todos los users que quieran entrar en la web....Hay un standard de 3 lenguajes: html,css,js. Aprenderlos poco a poco si el objetivo final es estar en la web :D .

C.
Salutacions, saludos, regards

"...programar es fácil, hacer programas es difícil..."

UT Page -> https://carles9000.github.io/
Forum UT -> https://discord.gg/bq8a9yGMWh
Skype -> https://join.skype.com/cnzQg3Kr1dnk
User avatar
Carles
 
Posts: 1139
Joined: Fri Feb 10, 2006 2:34 pm
Location: Barcelona

Re: Iniciando con mod_harbour

Postby Otto » Tue Jan 11, 2022 2:57 pm

Hello,
May I ask you what kind of programs you plan to make?
Do you know a bit about HTML?
Do you want to work with DBF or SQL?
Have you your mod harbour web server right with you or somewhere hosted?
Windows or Linux?
Best regards,
Otto
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 6346
Joined: Fri Oct 07, 2005 7:07 pm

Re: Iniciando con mod_harbour

Postby EBM » Tue Jan 11, 2022 4:46 pm

Hola Carles y Otto, gracias por responder

Otto

what kind of programs you plan to make?
Mi interés principal es hacer algunas aplicaciones para uso personal, mis desarrollos actualmente son para el control y administración de unos negocios que tengo, tengo unas cabañas en el bosque que rento y ya hice una app con fw para llevar el control de reservas y me interesa poder consultar disponibilidad desde mi cel ya que en ocasiones me llaman clientes y no estoy frente a mi computadora.

Do you know a bit about HTML?
Conozco lo basico de HTML, no soy un experto pero tengo conocimientos basicos

Do you want to work with DBF or SQL?
Actualmente mi App la tengo funcionando con MariaDB

Have you your mod harbour web server right with you or somewhere hosted?
Tengo mi propio servidor donde le instale XAMP y mod_harbour

Windows or Linux?
Windows

Saludos y gracias!

Eduardo Borondón Muñiz
EBM
 
Posts: 147
Joined: Tue Oct 11, 2005 8:22 pm
Location: Guadalajara, Jal Mexico

Re: Iniciando con mod_harbour

Postby Otto » Tue Jan 11, 2022 5:38 pm

Eduardo,
thank you for your detailed answer.

Very interesting. Then we do almost the same software.
The equipment is also similar: own server and Windows.

I just don't use SQL.
But for the actual application it doesn't matter which database you connect to.

And importantly, you can decide for yourself what to develop, with what and how.

I developed Harbourino for myself. It is useful to adapt ready-made modules to your own application.
When programming, I like it when I see something straight away.
I don't like to start with a blank sheet of paper. :-)

My page

https://winhotel.space/winhotel_webpage/megamenu.prg

is made with mod harbour and DBF.

We are currently in the process of expanding the entire program to an online solution.

I post on Facebook:

https://www.facebook.com/groups/modharbour.club

Are you already a member? :-)

If you are interested, I can show you more details how HARBOURINO works.


Best regards,
Otto

http://forums.fivetechsupport.com/viewtopic.php?f=3&t=41170&sid=6c6f1bc6b1f6785bdb02418139465b94
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 6346
Joined: Fri Oct 07, 2005 7:07 pm

Re: Iniciando con mod_harbour

Postby Otto » Tue Jan 11, 2022 6:03 pm

Eduardo,

Yesterday I started a program as you describe it.

Here I used my FIVEWIN function "freerooms" almost 1: 1.
I still have no idea how to display the result properly.
"Smartphone first".

Best regards,
Otto

Image

Here we convert the date for harbour and then we use the old function.

freerooms (beginning, end)

Image
********************************************************************
mod harbour - Vamos a la conquista de la Web
modharbour.org
https://www.facebook.com/groups/modharbour.club
********************************************************************
User avatar
Otto
 
Posts: 6346
Joined: Fri Oct 07, 2005 7:07 pm

Next

Return to mod_harbour

Who is online

Users browsing this forum: No registered users and 1 guest