Page 4 of 6

Re: FiveWin Web Interface

PostPosted: Wed Oct 19, 2011 9:00 pm
by Bayron
Sabían que PHP puede leer e interactuar con archivos dBase .DBF????

http://www.php.net/manual/es/intro.dbase.php

http://www.php.net/manual/es/ref.dbase.php

Seguramente ya lo sabias Antonio, pero nunca está de mas mencionarlo... (Si no; Hay te va mi Medio Centavito)

Re: FiveWin Web Interface

PostPosted: Wed Oct 19, 2011 9:17 pm
by Bayron
En el navegador de mi BlackBerry Curve, se muestra el menu, pero no ejecuta ninguna acción...

Re: FiveWin Web Interface

PostPosted: Thu Oct 20, 2011 8:47 am
by Antonio Linares
Bayron wrote:Sabían que PHP puede leer e interactuar con archivos dBase .DBF????

http://www.php.net/manual/es/intro.dbase.php

http://www.php.net/manual/es/ref.dbase.php

Seguramente ya lo sabias Antonio, pero nunca está de mas mencionarlo... (Si no; Hay te va mi Medio Centavito)


Bayron,

Si, de hecho esas son las funciones que estamos usando en estas demos :-)

De todas formas no estan completas, en el sentido de que no soportan índices ni campos memo, ni bloqueos. Por lo por ahora, nos sirven solo para pruebas. La idea es pasar a mysql facilmente y de ahi llegar a interactuar con EXEs construidos con Harbour y FWH.

Re: FiveWin Web Interface

PostPosted: Thu Oct 20, 2011 8:48 am
by Antonio Linares
Bayron wrote:En el navegador de mi BlackBerry Curve, se muestra el menu, pero no ejecuta ninguna acción...


Bayron,

Si, igual pasa en el iPad/iPhone. Lo iremos solucionando poco a poco :-)

Re: FiveWin Web Interface

PostPosted: Thu Oct 20, 2011 10:59 pm
by RodolfoRBG
A ver jovenes,

Estoy entendiendo que al usar Web Interface se volveria practicamente una aplicacion universal? Que se podria correr desde Windows, Windows Mobile, Mac, IPad, IPhone, BlackBerry, etc sin tener que hacer una aplicacion diferente para cada uno de estos casos?

Entiendo que el unico requisito seria que el ejecutable y la informacion estubieran en algun servidor de internet y que para operarlo pues por supuesto solo lo podrian hacer estando conectados a internet.

Es esto asi de maravilloso?

Re: FiveWin Web Interface

PostPosted: Thu Oct 20, 2011 11:09 pm
by Enrrique Vertiz
Saludos Ruben y demas amigos del foro.

Solo para acopañar tu comentario, Yo estoy dando por sentado lo que tu indicas, pues es la forma basica de trabajo de cualquier aplicacion Web.

Re: FiveWin Web Interface

PostPosted: Thu Oct 20, 2011 11:46 pm
by lucasdebeltran
Antonio,

¿Este producto soportará la sintáxis actual de Fivewin?.

Gracias

Re: FiveWin Web Interface

PostPosted: Thu Oct 20, 2011 11:50 pm
by Bayron
Rodolfo... Es lo que tu indicas y muchísimo mas...

Podrás ejecutarlo desde un servidor web y en una computadora en red de manera local en LOCALHOST...

Un .EXE sera creado, pero solo para ser ejecutado en modo CGI para acceder a archivos .DBF

El resto de la aplicacion sera codigo HTML, JavaScript, PHP, y otros mas...

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 6:43 am
by Antonio Linares
Salvando y recuperando opciones de configuración:

Ya podeis cambiar el color del menú y se restaurará automaticamente cada vez que accedais:
"Options", Menu background color (solo este por el momento)

http://www.fivetechsoft.com/fiveweb

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 9:22 am
by Antonio Linares
Sandbox: una utilidad para probar html, javascript, etc.

Selecciona "Tools", "SandBox":
http://www.fivetechsoft.com/fiveweb

Image

Fijate de que forma tan sencilla lo hemos construido usando el FiveWin Web Interface:
Code: Select all  Expand view
var oDiv, oMemo;

function SandBox()
{
   oDlg = new Dialog( "SandBox", 1000, 600 );
   
   Say( 50, 10, "Result:", oDlg );
   oDiv = Div( 75, 10, oDlg, 480, 460 );

   Say( 50, 500, "Input:", oDlg );
   oMemo = TextArea( 75, 500, "", oDlg, 480, 460 );
   oMemo.value = "<html>" + CRLF +
                 "<head>" + CRLF +
                 "<link rel='stylesheet' type='text/css' href='styles.css'>" + CRLF +
                 "<script type='text/javascript' src='fivewin.js'></script>" + CRLF +
                 "</head>" + CRLF +
                 "<body>" + CRLF +
                 "<h1>FiveWin Web Interface</h1>" + CRLF +
                 "<h3>Hello world!</h3>" + CRLF +
                 "</body>" + CRLF +
                 "</html>";
   
   oDiv.innerHTML = oMemo.value;
   
   Button( 550, 380, "Run", oDlg, 100, 40, "oDiv.innerHTML = oMemo.value" );  
   Button( 550, 510, "End", oDlg, 100, 40, "oDlg.End()" );  
}      

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 12:22 pm
by dbzap
Antonio.
Disculpa pero al parecer me he perdido de algo y es el codigo del browse que estas ejecutando.
Podrias incluirlo?

Saludos

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 2:03 pm
by Antonio Linares
Julio,

Aqui está el código del browse. Es solo para ir haciendo pruebas en esta etapa ya que luego usaremos MySQL y tambien acceso a los EXEs via WebSockets:

browse.php
Code: Select all  Expand view
<html>
<title>FiveWin Web Interface</title>

<head>
<link rel="stylesheet" type="text/css" href="styles.css">
<script type="text/javascript" src="fivewin.js"></script>
</head>

<body>

<?php
   $db = dbase_open( 'customer.dbf', 0 );  // open in read-only mode
 
   echo '<table id="browse" class="browse">';
   
   if( $db )
   {
      $fields = dbase_get_header_info( $db );

      // paint field names
      echo "<thead>";
      echo "<tr>";
      echo "<th></th>";
      foreach( $fields as $field )
         echo "<th>".$field[ 'name' ]."</th>";
      echo "</tr>";  
      echo "</thead>";
      echo "<tbody>";
     
      $record_numbers = dbase_numrecords( $db );

      for( $i = 1; $i <= $record_numbers; $i++ )
      {
         if( $i % 2 == 0 )
            echo "<tr class='odd' onMouseOver=".'"'."this.className='over'".'"'." onMouseOut=".'"'."setRowColor( this, 'odd' )".'"'.'>';
         else
            echo "<tr class='even' onMouseOver=".'"'."this.className='over'".'"'." onMouseOut=".'"'."setRowColor( this, 'even' )".'"'.'>';

         echo "<td width=10px;>"."<input type='checkbox' name='".strval( $i )."' onclick=".'"'."toggleRowSelected( this )".'"'."</td>";

         $row = dbase_get_record( $db, $i );
         
         for( $n = 0; $n < count( $row ) - 1; $n++ )
            echo "<td>".Trim( $row[ $n ] )."</td>";

         echo "</tr>";
      }
      echo "<tbody>";
      dbase_close( $db );
    }
   
    echo "</table>";
?>
</body>
</html>

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 2:37 pm
by dbzap
Antonio.
Muchos de nosotros estamos atentos a esto que creo que sera un cambio MUY ESPERADO ( casi tan grande como las bases de datos ).
Mis compañeros de oficina son viejos desarrolladores de aplicaciones Java/JavaScript y se ponen a tu disposición, sobre todo indican por las "hojas de estilos" ( que creo tiene que ver con el "look & feel" del asunto )
Espero no molestar ( solo lo necesario ) y gracias por publicar el código.
Saluidos

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 2:44 pm
by Antonio Linares
Julio,

Muchas gracias por el ofrecimiento de ayuda. Todos los comentarios, sugerencias y ayudas son bienvenidos y muy necesarios :-)

La idea de este proyecto es poder usar los navegadores como interface alternativo a nuestras aplicaciones. Igual que tenemos un GUI en Windows, disponer de un GUI via Web, lo que nos permite acceder a servidores remotos, EXEs, php, etc.

Re: FiveWin Web Interface

PostPosted: Fri Oct 21, 2011 9:52 pm
by dbzap
Antonio
Segun mi compañero esta funcion "si despliega el menu en casi cualquier navegador"
Habria que cambiar "FIles"...

Code: Select all  Expand view

   <ul>
      <li>
         Files
         <ul>
              <a href="#" onclick="MsgInfo( 'New' )"><li>New</li></a>
              <a href="#" onclick="Open()"><li>Open</li></a>
              <li>Save</li>
         </ul>
      </li> 
   </ul>
 


por algo asi...

Code: Select all  Expand view

<a href="#productos" class="popmenu">Productos</a>                         
                            <ul>
                                <li><a href="#pcomercial" class="summary">Gestión comercial</a></li>                                  
                                <li><a href="#pproduccion" class="summary">Gestión de la producción</a></li>                                                         
                                <li><a href="#pcontabilidad" class="summary">Contabilidad y presupuestos</a></li>                                  
                                <li><a href="#pfacturaelectronica" class="summary">Factura electrónica</a></li>                                   
                                <li><a href="#premuneraciones" class="summary">Personal y remuneraciones</a></li>                                  
                            </ul>
 


quedando...

Code: Select all  Expand view

 <ul>
      <li>
         <a href="#" class="popmenu">Files</a>
         <ul>
              <li><a href="#" onclick="MsgInfo( 'New' )">New</a></li>
              <li><a href="#" onclick="Open()">Open</a></li>
              <li>Save</li>
         </ul>
      </li> 
   </ul>
 

Donde el evento de despliegue del menu queda enlazado (bind) con la clase popmenu.
El comportamiento de menú desplegable también puede conseguirse con CSS3
Me comentas si te parece
Saludos