Requisitos para poder Migrar un programa en vfp9 a cliente-servidor?

Que necesito hacer para migrar un programa en VFP9 que utiliza tablas y no bases de datos de VFP a cliente-servidor, ya que cuento con un enlace inalambrico de cambium networks, y se me alenta demasiado el transito de información de las tablas, ya que es un enlace halfduplex, en enlaces fullduplex, como cable rj-45 me trabaja bien.

1 respuesta

Respuesta
1

Partiendo desde el punto que tu BD VFP esta bien diseñada. Es decir,
-Tablas
-Consultas
-Indices
-Relaciones
-Integridad referencial
1.Requisitos:
  Conocimiento de DBRMS (MS SQLServer)
2.Debes crear con el diseñador de MSSqlserver Studio, todos los componentes de tu base de datos VFP Mencionados Arriba.
3.En tu proyecto vfp, creas una conexión que va a ser el vinculo a tu BD SQLServer
4. Puedes dejar tablas y vistas locales para uso local.
5. Puedes accesar a las tablas de sqlserver mediante "Remote Views", que te permitirán usar las tablas SQL como si fueran tablas VFP
6. Usas la funciones SQLCONNECT(), SQLEXEC()
7. Te recomiendo que comiences con una tabla sql, y creando códigos aislados de prueba. Así comencé yo, hace una pila de años...
8. Puedes usar las tablas mediante el código de ejemplo de VFP:
9. SUERTE!
Clear
LOCAL lnConn
LOCAL lnPercent AS Int  && Input parameters must be typed.
LOCAL lnOutput
lnPercent = 50
lnOutput = 0
* Make connection, assuming a local trusted connection.
lnConn = SQLCONNECT('local')
IF m.lnConn > 0  && Success.
   * Set the active database to PUBS.
   SQLEXEC(m.lnConn, 'use pubs')
   * Execute SELECT statement.
   SQLEXEC(m.lnConn, 'SELECT * FROM authors', 'PubAuthors')
   BROWSE
   * Execute INSERT statement, get value of identity field.
   SQLEXEC(m.lnConn, "INSERT INTO JOBS (job_desc, min_lvl, max_lvl);
       VALUES ('Developer',75,150)")
   SQLEXEC(m.lnConn, "SELECT SCOPE_IDENTITY()", "job_id")
  ? "ID for added Job is " + LTRIM(STR(job_id. Exp))
   * Execute DELETE statement. Get number of records affected.
   SQLEXEC(m.lnConn, "DELETE FROM JOBS WHERE job_desc ='Developer'")
   SQLEXEC(m. LnConn, "SELECT @@ROWCOUNT", 'rowcount')
  ? Rowcount. Exp, "record(s) deleted"
   * Call a stored procedure with no parameters.
   SQLEXEC(m.lnConn, 'sp_who', 'activeusers')
   BROWSE
   * Execute stored procedure with an INPUT parameter.
   SQLEXEC(m.lnConn, 'exec byroyalty ?lnPercent','HalfOffAuthors')
   * Create temp stored procedure with OUTPUT parameter and call it.
   SQLEXEC(m.lnConn, "CREATE PROCEDURE #MyProc @outparam int OUTPUT AS;
   SELECT @outparam=100")
   SQLEXEC(m.lnConn, "exec #myProc ?@lnOutput")
   ? m.lnOutput
   * Create a temp stored procedure with INPUT and OUTPUT parameters
   * and call it.
    SQLEXEC(m.lnConn, "CREATE PROCEDURE #MyProc2 " + ;
                      "@inputparam INT, " + ;
                      "@outparam int OUTPUT " + ;
                      "AS SET @outparam=@inputparam*10")
    SQLEXEC(m. LnConn, "exec #myProc2 ?lnPercent, ?@lnOutput")
   ? m.lnOutput
   * Get version information.
   SQLEXEC(m. LnConn, 'SELECT @@VERSION','SQLVersion1')
  ? STRTRAN(SQLVersion1.Exp,CHR(0))  
   * Disconnect.
   SQLDISCONNECT(m.lnConn)
ELSE
  ? "Unable to connect to SQL Server"
Endif
RETURN

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas