Incluyendo el SQLRDD

Re: Incluyendo el SQLRDD

Postby Joaquim Ferrer » Fri Aug 25, 2023 7:02 am

wilsongamboa wrote:mi experiencia
intente cuando apenas salio este producto pero me fallaba cuando hacia use \sistemas\siste001\empre001\ventas\ventas.dbf index \sistemas\siste001\empre001\ventas\ventas.ntx alias ventas
intente con una funcion que ellos tenian para estos casos pero no me funciono
hasta alli llegue eso unido a mis escasos conocimientos de sql en esa epoca ( y ahora ) me detuvieron no me atrevi a comprar la lib por mi falta de conocimiento del campo sql
saludos
wilson
pd: me cai del asiento cuando vi que estaban disponibles los fuentes ja ja ja
gracias a don Marcelo Lombardo y al equipo de xharbour.com !!


Wilson
No entiendo muy bien lo que pretendías al 'abrir' una tabla de la forma 'tradicional' con su ruta al fichero para SQLRDD
El concepto de Sistema Gestor de Bases de Datos es el de conectar a una BD, normalmente con un dominio, IP y luego accesar a sus tablas, sin importarte dónde están físicamente los ficheros ni sus índices
Fivewinner desde 1.9, programador PHP y Javascript, PWA & HTML5 evangelista
User avatar
Joaquim Ferrer
 
Posts: 105
Joined: Sat Jan 14, 2012 3:46 pm
Location: Barcelona

Re: Incluyendo el SQLRDD

Postby Joaquim Ferrer » Fri Aug 25, 2023 8:38 am

carlos vargas wrote:se necesita además un campo para controlar el borrado de fila, por defecto es sr_deleted


Muchas gracias Carlos por el aporte

No consigo dominar este tema, he probado lo siguiente
Code: Select all  Expand view  RUN

SR_UseDeleteds(.T.)

   ? "Test SQLRDD"
   ? ""
   ? "Connecting to database..."

   cRDD := "SQLRDD"
   nCnn := SR_AddConnection( CONNECT_MYSQL, cConnString )

   cTable := "test"
   USE ( cTable ) EXCLUSIVE VIA ( cRDD )

   ? SR_DeletedName(), ordkeycount()

   ? "Delete", field->First, field->Last
   dbdelete()

 

Aunque cambie el valor de SR_UseDeleteds() con T o F, hace siempre lo mismo, elimina el registro

Si añado el campo sr_deleted a la tabla, tal como indicas, me produce error
Code: Select all  Expand view  RUN

Error BASE/1109  Argument error: $
Called from SR_WORKAREA:GETBUFFER(3072)
Called from SR_WORKAREA:FIRSTFETCH(1777)
Called from SR_WORKAREA:SQLGOTOP(3589)
Called from MAIN(77)
 


En el codigo de METHOD GetBuffer( lClean, nCache ) CLASS SR_WORKAREA
Code: Select all  Expand view  RUN

3071      If ::hnDeleted > 0 .and. ::aLocalBuffer[ ::hnDeleted ] != NIL
3072         ::aInfo[ AINFO_DELETED ] := ::aLocalBuffer[ ::hnDeleted ] $ "T*"
3073      Else
         ::aInfo[ AINFO_DELETED ] := .F.
      EndIf
 


Si le cambio el nombre del campo con SR_DeletedName( "deleted" ), no produce error, pero no hace nada, el registro se elimina, no se actualiza

Gracias por la ayuda !
Fivewinner desde 1.9, programador PHP y Javascript, PWA & HTML5 evangelista
User avatar
Joaquim Ferrer
 
Posts: 105
Joined: Sat Jan 14, 2012 3:46 pm
Location: Barcelona

Re: Incluyendo el SQLRDD

Postby Joaquim Ferrer » Fri Aug 25, 2023 9:18 am

Descubriendo más misterios...

Si se usa SR_UseDeleteds(.F.) ANTES de la apertura con USE ( cTable ) EXCLUSIVE VIA ( cRDD ), SQLRDD crea el campo sr_deleted, si no lo tiene, de forma automática

Entiendo que SR_UseDeleteds(.F.) no conserva el valor globalmente, si no se define inmediatamente antes de USE

El campo sr_deleted o el que podamos definir con SR_DeletedName("deleted"), hay que crearlo con el tipo de datos CHAR, longitud 1 y que contiene una T o F simulando una variable lógica

Creo que el error anterior era que definia al campo deleted con INT i TYNINT creyendo que podia ser 0 o 1 y por eso no funcionaba

Vamos avanzando :)
Fivewinner desde 1.9, programador PHP y Javascript, PWA & HTML5 evangelista
User avatar
Joaquim Ferrer
 
Posts: 105
Joined: Sat Jan 14, 2012 3:46 pm
Location: Barcelona

Re: Incluyendo el SQLRDD

Postby wilsongamboa » Fri Aug 25, 2023 3:57 pm

Joaquim buenos dias yo intentaba abrircon todo el camino y ellos tenian una funcion global que usaba ejemplo
use \sistemas\empre001\ventas\cliente
se transformaba en una tabla en la base de datos asi

_sistemas_empre001_ventas_cliente

con eso cliente en cualquier empresa se diferenciaba dentro de la base de datos pero en mi caso habia un limite de caracteres y no pude hacer la migracion
lo voy a intentar una vez este ya compilado a Harbour totalmente

saludos

Wilson
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
User avatar
wilsongamboa
 
Posts: 595
Joined: Wed Oct 19, 2005 6:41 pm
Location: Quito - Ecuador

Re: Incluyendo el SQLRDD

Postby Rossine » Sat Aug 26, 2023 4:44 pm

Hello,

See this project for harbour and Harbour++

https://github.com/marcosgambeta/sqlrddpp
Obrigado, Regards, Saludos

Rossine.

Harbour and Harbour++
Rossine
 
Posts: 344
Joined: Tue Oct 11, 2005 11:33 am

Re: Incluyendo el SQLRDD

Postby russimicro » Sun Aug 27, 2023 10:41 pm

Buena tarde...
Les cuento mi experiencia con SQLRDD, uso la versión comercial hace más de 10 años, desde hace unos meses decide abandonarlo, adelantándome a lo que paso... y he probado MySQL y MARIADB nativo con fivewin , y he obtenido mejor rendimiento ..

Saludos

JONSSON RUSSI T.
Colombia
russimicro
 
Posts: 261
Joined: Sun Jan 31, 2010 3:30 pm
Location: Bucaramanga - Colombia

Re: Incluyendo el SQLRDD

Postby Joaquim Ferrer » Mon Aug 28, 2023 5:59 am

russimicro wrote:Buena tarde...
decide abandonarlo, adelantándome a lo que paso...


Y qué pasó ?
Fivewinner desde 1.9, programador PHP y Javascript, PWA & HTML5 evangelista
User avatar
Joaquim Ferrer
 
Posts: 105
Joined: Sat Jan 14, 2012 3:46 pm
Location: Barcelona

Re: Incluyendo el SQLRDD

Postby paquitohm » Mon Aug 28, 2023 7:23 am

Especulando... supongo que lo que pasó es que el producto se hizo open source y así dejó de ser comercial y así (probablemente) dejó de tener soporte empresarial
paquitohm
 
Posts: 266
Joined: Fri Jan 14, 2022 8:37 am

Re: Incluyendo el SQLRDD

Postby José Luis Sánchez » Fri Sep 01, 2023 7:45 am

Buenos días,
¿ se puede usar SQLRDD con una base de datos SqLite ?

Saludos,
User avatar
José Luis Sánchez
 
Posts: 556
Joined: Thu Oct 13, 2005 9:23 am
Location: Novelda - Alicante - España

Re: Incluyendo el SQLRDD

Postby Joaquim Ferrer » Fri Sep 01, 2023 9:17 am

José Luis Sánchez wrote:Buenos días,
¿ se puede usar SQLRDD con una base de datos SqLite ?


Buenos dias

Hasta donde sé y basándome sólo en lo que dice sqlrdd.ch, no lo acepta
Code: Select all  Expand view  RUN

#define CONNECT_ODBC                   1
#define CONNECT_RPC                    2
#define CONNECT_MYSQL                  3
#define CONNECT_POSTGRES               4
#define CONNECT_ORACLE                 5
#define CONNECT_FIREBIRD               6
#define CONNECT_MARIA                  7
#define CONNECT_ORACLE2                8
#define CONNECT_FIREBIRD3              9
 

Saludos
Fivewinner desde 1.9, programador PHP y Javascript, PWA & HTML5 evangelista
User avatar
Joaquim Ferrer
 
Posts: 105
Joined: Sat Jan 14, 2012 3:46 pm
Location: Barcelona

Re: Incluyendo el SQLRDD

Postby mgsoft » Fri Sep 01, 2023 12:53 pm

José Luis,

Puedes acceder via ODBC, como también a Access, que quizás sería lo más adecuado porque en este caso no hay que instalar el driver ODBC.

Saludos cordiales
Saludos,

Eduardo
User avatar
mgsoft
 
Posts: 422
Joined: Mon Aug 17, 2009 12:18 pm
Location: España

Previous

Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: George and 31 guests