1. Usar el api hb_GtInfo, organiza tu código para mejor la presentación
métele colores, mejora los BOX, etc. (programación estructurada)
y pruébalo con una pantalla de 50 pulgadas. Leer la información
de la api hb_GtInfo y
2. Conviértelo a cliente/servidor, con la librería NETIO de la
librería de contribución
3. Aprovecha la librería CURL, para la comunicación, intercambio
de datos con otros servicios, web, web servicies, etc.
4. Luego si deseas lo pasas a base datos con la librería SDDODBC en
forma directa cliente/servidor o de tres niveles con NETIO - SDDODBC
5. Para la interoperabilidad con WINDOWS y OFFICE la librería
HBWIN de contribución
6. Creo que las librerías de contribución gtwvg y gtwvw te permite
pasar a modo gráfico con relativo esfuerzo. Con las otras que
se basan en Harbour tienes que hacerlo de nuevo no vale la pena.
En Ultimo caso aprovecha la lógica de tu programa y realízalo en
Excel-VB (permite crear ventanas) y Harbour-OLE, además ahora viene con un robot
incluido (copilot). Es una joda ahora, anda pensando que los programitas de aqui
en adelante deberán de tener un ayudante apenas lo ejecutas deberá de saludar
al usuario, preguntara si desea un cafecito, etc.
EJEMPLO
*
* compilar
*
* hbmk2 myprog.prg -gtwvt -lhbwin
*
#include "
hbgtinfo.ch"
#include "Inkey.ch"
#include "Dbinfo.ch"
REQUEST HB_GT_WIN
REQUEST HB_GT_WVT_DEFAULT
REQUEST HB_CODEPAGE_ESWIN
REQUEST DBFCDX, DBFFPT
FUNCTION Main()
LOCAL cFileName, cColor
hb_cdpSelect( "ESWIN" ) // tildes
hb_SetTermCP( "ESWIN" ) // ,lBoxChar
hb_GtInfo( HB_GTI_WINTITLE, "Sistema de Inventario" )
hb_Gtinfo( HB_GTI_FONTNAME, "Lusida console" )
SET CENTURY ON
SET DATE TO BRITISH
SET SCOREBOARD OFF
MSETCURSOR( .T. )
SET EVENTMASK TO INKEY_ALL
// set autoopen .f. fox
hb_RDDINFO( RDDI_AUTOOPEN, .F. )
// 30 rows x 100 columns
SetMode(30,100)
cColor := "N/W,B/GR*,,,W/N"
@ 0,0, MAXROW(), MAXCOL() BOX REPLICATE(CHR(176),9) COLOR "N/N*"
SetColor(cColor)
// pantalla principal, menu, etc ..
ALERT("Identificación")
RETURN nil
Saludos
Teodoro