FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour O.T. xBrowse con MySQL [SOLUCIONADO]
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM

O.T. xBrowse con MySQL [SOLUCIONADO]

Posted: Sat Apr 09, 2016 10:15 AM
Estimados;
Tengo una Tabla de personas en la que la estructura esta definida de manera que los campos de Apellido, Nombre y otros datos estan repetidos.
Para clarificar. la Tabla corresponde a Tutores de alumnos. Y seria mas o menos así:
IDTutor1,ApellidosT1, NombresT1, DctoT1..., IDTutor2,ApellidosT2, NombresT2, DctoT2
La implemente de esta manera porque a uno de ellos es a quien se le factura, esto se define mediante un campo Tinyint (1,0)
De manera que al ingresar al Facturador, cuando se va capturar un cliente (o Tutor), se despliega un xbrowse donde, ahora si, en esta lista se presentan, en dos columnas: Dcto y, Apellidos y Nombres
Este browse lo hago mediante un select definido así:
Code (fw): Select all Collapse
"SELECT id_tutor,tutor1 AS TUTORFAC,dniT1 AS DNI,doctipot1 AS DOCTIPO,direcnrot1 AS DIREC,totcuotas " + ;
               "FROM tutores WHERE FacAfipT1=" +Str( nFiltro,1,0 )+" "+ ;
               "UNION SELECT id_tutor,tutor2 AS TUTORFAC,dniT2 AS DNI,doctipot2 AS DOCTIPO,direcnrot2 AS DIREC,"totcuotas " + ;
               "FROM tutores WHERE FacAfipT2=" +Str( nFiltro,1,0 )+" ORDER BY TutorFac"
Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM

Re: O.T. xBrowse con MySQL

Posted: Sat Apr 09, 2016 10:28 AM

Disculpas, (en lugar de Vista Previa pulse Enviar :oops: )
sigo...
El xBrowse en dos columnas, se muestra de acuerdo a lo esperado, en 2 columnas de Dcto y, Apellidos y Nombres
El problema que se me plantea es cuando pulso sobre la cabecera de una de estas para activar la búsqueda (y realizar busquedas incrementales), se produce el mensaje de error: You have an erro en your syntax... "ORDER BY TUTORFAC"
Esto es correcto debido a que esta columna esta en UNION
Entonces la pregunta es: No puedo implementar la busqueda, mediante tal función de xBrowse?
Si se puede, como?

gracias

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM

Re: O.T. xBrowse con MySQL

Posted: Sat Apr 09, 2016 12:15 PM
hola

en MySql yo creo "Vistas"..(Views), que son instrucciones SQL que generan una "vista" como si fuera una tabla mas de MySql, después la llamo desde el programa con las clausulas Where que necesito en el momento de llamarlas..., yo utilizo Navicat para hacerlo, pero estuve viendo Workbench (se descarga desde el sitio www.mysql.com ..comunity, y es gratis) y se puede hacer lo mismo de forma sencilla.
te muestro unas imagenes...



este es el resultado de esa vista



y asi lo llamo desde el programa

Code (fw): Select all Collapse
   oDbf  := oApp:oConnect:Query("SELECT * FROM V_PALLET_SIN_INSPECCION_DETALLE WHERE GRUPO='"+cGrupo+"' AND ESPECIE='"+cEspecie+"' AND FOL_INTERNO='"+cFolio+"' ")


la clausula where hago el filtro para hacer mas pequeña la consulta

viendo tu código lo sería algo asi

Code (fw): Select all Collapse
CREATE 
    ALGORITHM = TEMPTABLE 
    DEFINER = `root`@`%` 
    SQL SECURITY DEFINER
VIEW `vista_tutores` AS

        SELECT id_tutor, tutor1 AS TUTORFAC,dniT1 AS DNI,doctipot1 AS DOCTIPO,direcnrot1 AS DIREC,totcuotas FROM tutores 
        UNION SELECT id_tutor,tutor2 AS TUTORFAC,dniT2 AS DNI,doctipot2 AS DOCTIPO,direcnrot2 AS DIREC,totcuotas
               FROM tutores ORDER BY TutorFac


y lo llamas desde tu programa algo asi...

Code (fw): Select all Collapse
"SELECT * FROM vista_tutores WHERE FacAfipT1=" +Str( nFiltro,1,0 )+" AND "+ "FacAfipT2=" +Str( nFiltro,1,0 )


la verdad es solo un tip...que te puede ayudar

saludos
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM

Re: O.T. xBrowse con MySQL

Posted: Sat Apr 09, 2016 12:17 PM

Armando; muchas gracias por contestar
Lo voy a estudiar con cuidado y te comento

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM

Re: O.T. xBrowse con MySQL

Posted: Mon Apr 11, 2016 10:02 PM

Armando;
muchisimas gracias!
Evidentemente aún me queda mucho por leer y aprender de MariaDB/MySQL
De lo que estoy seguro es que cada día amo mas a MariaDB/MySQL :D

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM

Re: O.T. xBrowse con MySQL [SOLUCIONADO]

Posted: Mon Apr 11, 2016 10:07 PM

mario:

me alegro de que hayas solucionado tu problema, cualquier cosa estaré al pendiente.

saludos

SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com

Continue the discussion