FiveWeb y Dolphin juntos!

User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

FiveWeb y Dolphin juntos!

Post by Antonio Linares »

Aqui teneis un primer ejemplo de uso conjunto de FiveWeb y Dolphin. Probado en Windows con xampp y en Linux (DreamHost):

http://www.fivetechsoft.net/cgi-bin/myapp1 (Linux en Dreamhost hosting service)

myapp1.prg

Code: Select all

#include "FiveWeb.ch"

//----------------------------------------------------------------------------//

function Main( cParams )

   local aParams := If( cParams != nil, hb_aTokens( cParams, ":" ), nil )
   local cParam := If( aParams != nil, aParams[ 1 ], "" )

   SET BACKIMAGE TO "http://fiveweb.googlecode.com/svn/trunk/images/citynight.jpg"
   
   SetTheme( "flick" )
   
   do case
      case cParam == "login"
           CheckLogin( aParams )

      case cParam == "users"
           Users()

      case cParam == "clients"
           Clients()

      otherwise
           Login()

  endcase

return nil

//----------------------------------------------------------------------------//

function Login()

   local oDlg, oImg
   local oGetName, cUserName := Space( 30 )
   local oGetPass, cPassword := ""

   DEFINE DIALOG oDlg TITLE "Login" SIZE 650, 400

   @  30,  30 IMAGE oImg FILENAME "../images/user.png" SIZE 120, 120 OF oDlg

   @  69, 190 SAY "User" SIZE 110, 40 OF oDlg

   @ 124, 190 SAY "Password" SIZE 110, 40 OF oDlg

   @  66, 315 GET oGetName VAR cUserName SIZE 300, 40 OF oDlg

   @ 124, 315 GET oGetPass VAR cPassword SIZE 300, 40 OF oDlg PASSWORD

   @ 265, 189 BUTTON "Ok" SIZE 110, 40 OF oDlg ;
      ACTION ( "document.location = '" + AppName() + "?login:' + " ) + ;
             'oGetName.value + ":" + oGetPass.value'

   @ 265, 335 BUTTON "Cancel" SIZE 110, 40 OF oDlg ;
      ACTION ( oDlg:End() ) // Executed in the server in advance

   ACTIVATE DIALOG oDlg NOWAIT

return nil

//----------------------------------------------------------------------------//

function CheckLogin( aParams )

   // ? aParams[ 2 ]  username
   // ? aParams[ 3 ]  password 
   
   BuildMenu()

return nil

//----------------------------------------------------------------------------//

function BuildMenu()

   local oMenu
   
   MENU oMenu
      MENUITEM "About"
      MENU
         MENUITEM "This app..." ;
            ACTION MsgAbout( "My FiveWeb app", "(c) FiveTech Software" )
      ENDMENU
      
      MENUITEM "Files"
      MENU
         MENUITEM "Users" ;
            ACTION ( 'document.location = "' + AppName() + '?users"' ) 
            
         MENUITEM "Clients" ;
            ACTION ( 'document.location = "' + AppName() + '?clients"' ) 
      ENDMENU
      
      MENUITEM "Operations"
      MENUITEM "Help"
   ENDMENU
   
return oMenu

//----------------------------------------------------------------------------//

function Users()

   local oDlg, oServer, oBrw
   
   BuildMenu()
   
   oServer = TDolphinSrv():New( "mysql.fivetechsoft.net", "fiveweb", "fiveweb" )

   if oServer:hMySQL == nil
      MsgInfo( "can't connect to the database" )
      return nil
   endif
         
   oServer:SelectDB( "fiveweb" )
   
   DEFINE DIALOG oDlg TITLE "Users" SIZE 1000, 600
   
   @ 10, 10 BROWSE oBrw SIZE 900, 100 OF oDlg ;
      ARRAY oServer:Query( "SELECT * FROM users LIMIT 0, 30" )
   
   ACTIVATE DIALOG oDlg NOWAIT
   
   oServer:End()
   
return nil   

//----------------------------------------------------------------------------//

function Clients()

   local oDlg, oServer, oBrw
   
   BuildMenu()
   
   oServer = TDolphinSrv():New( "mysql.fivetechsoft.net", "fiveweb", "fiveweb" )

   if oServer:hMySQL == nil
      MsgInfo( "can't connect to the database" )
      return nil
   endif
         
   oServer:SelectDB( "fiveweb" )
   
   DEFINE DIALOG oDlg TITLE "Clients" SIZE 1200, 650
   
   @ 5, 2 BROWSE oBrw SIZE 1150, 100 OF oDlg ;
      ARRAY oServer:Query( "SELECT * FROM clients LIMIT 0, 30" )
   
   ACTIVATE DIALOG oDlg NOWAIT
   
   oServer:End()
   
return nil   

//----------------------------------------------------------------------------//   
regards, saludos

Antonio Linares
www.fivetechsoft.com
benjiben143
Posts: 113
Joined: Wed Mar 11, 2009 7:32 pm
Location: Obregon, Sonora, Mexico

Re: FiveWeb y Dolphin juntos!

Post by benjiben143 »

que bonito

saludos
Benjamin Casarrubias Moreno
Cd. Obregon, Sonora, Mexico
chino72vale@hotmail.com
Fivewin 16.05, Harbour 3.2, xharbour 1.2.1, Fivelinux, visual estudio 2013
User avatar
sysctrl2
Posts: 833
Joined: Mon Feb 05, 2007 7:15 pm
Contact:

Re: FiveWeb y Dolphin juntos!

Post by sysctrl2 »

Excelente, Antonio,
! Felicidades !
Para los que estamos ya familiarizados con Dolphin, nos gusta esto,

Como seria un ABC en FIVEWEB Y DOLPHIN?

Saludos.
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
hmpaquito
Posts: 1200
Joined: Thu Oct 30, 2008 2:37 pm

Re: FiveWeb y Dolphin juntos!

Post by hmpaquito »

Antonio,

Impresionante !

Felicidades.
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FiveWeb y Dolphin juntos!

Post by Antonio Linares »

Cesar,

En mi mensaje anterior está publicado el código fuente y se puede ver que es muy simple la creación del browse:

1. Se conecta al servidor mysql:
oServer = TDolphinSrv():New( "mysql.fivetechsoft.net", "fiveweb", "fiveweb" )

2, Se selecciona la base de datos a usar:
oServer:SelectDB( "fiveweb" ) // casualmente la he llamado igual que el usuario "fiveweb"

3. Se realiza un query y el resultado se le dá al browse. La tabla usada es "users":

Code: Select all

   @ 10, 10 BROWSE oBrw SIZE 900, 100 OF oDlg ;
      ARRAY oServer:Query( "SELECT * FROM users LIMIT 0, 30" )
4. Se desconecta de la base de datos:
oServer:End()

Hay que entender que FiveWeb funciona cliente/servidor, luego cada vez que el usuario pide algo, se prepara y se le envia. ya implementaremos "sesiones" para que el servidor sepa con que usuario esta conversando :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
sysctrl2
Posts: 833
Joined: Mon Feb 05, 2007 7:15 pm
Contact:

Re: FiveWeb y Dolphin juntos!

Post by sysctrl2 »

Antonio, si se ve muy sencillo, gracias,

podriamos hacer una combinacion, FIVEWEB,DOLPHIN,PHP ?

es decir en la pantalla donde muestra el catalogo de usuarios o clientes

colocar un BOTON que ejecute un codigo PHP y con este dar de alta, consultar o modificar un u registro

y posteriormente refreascar el Browse. Es una idea,,

veo muy interesante esta combinacion ya que se puede usar FIVEWEB para darle una apariencia bonita

a nuestra APP. ya que en esta parte es donde normalmente los desarrolladores nos quejamos mucho,

y usar DOLPHIN, PHP para el manejo de nuestros datos.


saludos..
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
User avatar
ruben Dario
Posts: 986
Joined: Thu Sep 27, 2007 3:47 pm
Location: Colombia

Re: FiveWeb y Dolphin juntos!

Post by ruben Dario »

Antonio,

Excelente

Felicitdades
Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FiveWeb y Dolphin juntos!

Post by Antonio Linares »

Cesar,

Al usar Dolphin la idea es que no nos haga falta usar PHP y que todo el código de nuestra aplicación se implemente en nuestros PRGs.

Aún asi, FiveWeb permite usar PHP sin problemas. Aunque entendemos que muchos programadores lo que quieren es no tener que aprender otros lenguajes :-)

En el mundo web se pueden facilmente combinar datos que pueden proceder de orígenes distintos, y FiveWeb permite esa capacidad.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Enrrique Vertiz
Posts: 440
Joined: Fri Oct 07, 2005 2:17 pm
Location: Lima - Peru
Contact:

Re: FiveWeb y Dolphin juntos!

Post by Enrrique Vertiz »

Antonio

Excelente !!!

De acuerdo contigo, lo ideal es que no sea necesario usar mas que FiveWeb, claro con Harbour y en este caso con TDolphin para la conexión MySQL, con eso debería bastar, nuevamente felicitaciones ...

Desde mi punto de vista, ya se pueden realizar las consultas, faltaría poder imprimirlas, directamente o a PDF y seria genial, espero que a eso se apunte a futuro ...
Enrrique Vertiz Pitta
Lima-Peru
xHb 1.23, Fwh 20.04, MySQL 5.7 - 8.0, SQLLIB 1.9m, SQLRDD
User avatar
sysctrl2
Posts: 833
Joined: Mon Feb 05, 2007 7:15 pm
Contact:

Re: FiveWeb y Dolphin juntos!

Post by sysctrl2 »

Deacuerdo Maestro,
ya vamos entendiendo un poco mas sobre las app.webs,
gracias.
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
User avatar
cmsoft
Posts: 653
Joined: Wed Nov 16, 2005 9:14 pm
Location: Mercedes - Bs As. Argentina

Re: FiveWeb y Dolphin juntos!

Post by cmsoft »

Muy interesante realmente!!! Felicidades y gracias por el aporte!!
Antonio: Que versión de FW necesitamos para poder tener FiveWeb, o es un producto aparte?
Gracias!
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FiveWeb y Dolphin juntos!

Post by Antonio Linares »

Cmsoft,

FiveWeb es un producto aparte de FiveWin, aunque en su sintaxis se parecen mucho :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Bayron
Posts: 815
Joined: Thu Dec 24, 2009 12:46 am
Location: Philadelphia, PA

Re: FiveWeb y Dolphin juntos!

Post by Bayron »

Probando en LocalHost, no logro conectarme a la base de datos y obtengo el siguiente error:

Code: Select all

FiveWeb error

Application 
=========== 
Path and name: C:\xampp\cgi-bin\myapp1.exe (32 bits) 
Time from start: 0 hours 0 mins 20 secs 
Error occurred at: 04/30/13, 06:53:53 
Error description: Error MYSQL/2013 
Lost connection to MySQL server at 'waiting for initial communication 
packet', system error: 0 

Stack Calls 
=========== 
Called from DOLPHIN_DEFERROR(2807) 
Called from TDOLPHINSRV:CHECKERROR(793) 
Called from TDOLPHINSRV:NEW(340) 
Called from USERS(109) 
Called from MAIN(19) 

Variables in use 
================ 
Procedure Type Value 
========================== 
DOLPHIN_DEFERROR 
Param 1: O Class: ERROR 
TDOLPHINSRV:CHECKERROR 
Param 1: O Class: TDOLPHINSRV 
Param 2: N 2013 
Param 3: L .F. 
Param 4: C "" 
Local 1: C "" 
Local 2: O Class: ERROR 
TDOLPHINSRV:NEW 
Local 1: N 2013 
Local 2: U nil 
Local 3: L .F. 
USERS 
Param 1: C "mysql.fivetechsoft.net" 
Param 2: C "fiveweb" 
Param 3: C "fiveweb" 
Local 1: N 3306 
Local 2: U nil 
Local 3: C "" 
Local 4: U nil 
Local 5: U nil 
Local 6: B {|| ... } 
MAIN 
Local 1: U nil 
Local 2: U nil 
Local 3: U nil 

Linked RDDs 
=========== 
DBF 
DBFFPT 
DBFBLOB 
DBFNTX 

DataBases in use 
================ 

Classes in use: 
=============== 
1 ERROR 
2 HBCLASS 
3 HBOBJECT 
4 TMENU 
5 TMENUITEM 
6 TDOLPHINSRV 

Memory Analysis 
=============== 
32 Static variables 

Dynamic memory consume: 
Actual Value: 0 bytes 
Highest Value: 0 bytes
Si coloco la dirección directamente en el browser, si logro entrar a phpMyAdmin...
=====>

Bayron Landaverry
(215)2226600 Philadelphia,PA, USA
+(502)46727275 Guatemala
MayaBuilders@gMail.com

FWH12.04||Harbour 3.2.0 (18754)||BCC6.5||UEstudio 10.10||
Windows 7 Ultimate

FiveWin, One line of code and it's done...
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Re: FiveWeb y Dolphin juntos!

Post by Antonio Linares »

Bayron,

La base de datos está configurada para que solo se pueda acceder desde la aplicación que se ejecuta en dreamhost (el hosting en el que estamos publicando las demos de FiveWeb).

Consigues acceder a phpMyAdmin con la base de datos fiveweb ?
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Bayron
Posts: 815
Joined: Thu Dec 24, 2009 12:46 am
Location: Philadelphia, PA

Re: FiveWeb y Dolphin juntos!

Post by Bayron »

Desde el navegador conseguía hacerlo escribiendo:
mysql.fivetechsoft.net
y luego autenticandome, pero eso ya cambió....
=====>

Bayron Landaverry
(215)2226600 Philadelphia,PA, USA
+(502)46727275 Guatemala
MayaBuilders@gMail.com

FWH12.04||Harbour 3.2.0 (18754)||BCC6.5||UEstudio 10.10||
Windows 7 Ultimate

FiveWin, One line of code and it's done...
Post Reply