Page 1 of 1

Ordscope

Posted: Sat Mar 11, 2023 8:51 pm
by JoseLuis
Buenas

Tengo que usar 3 xbrowse en un dialogo, el primero está asociado a una base de datos de conductores.
El segundo y el tercero estan asociados a la base de datos de los vehiculos.
Mi idea es cada vez que cambio de conductor me tiene que mostrar en el segundo xbrowse los vehiculos que utiliza ese conductor, y en el tercer xbrowse el resto de vehiculos.
para ello había pensado en poner en el primer xbrowse :

Code: Select all | Expand

:bChange := {|| PonerScope(cAlias1,cAlias2,cAlias3,oBrw1) }
que llama la la function:

Code: Select all | Expand

Function PonerScope(cAlias1,cAlias2,cAlias3,oBrw)
(cAlias2)->(OrdScope(TOPSCOPE,(cAlias1)->Codigo))
(cAlias2)->(OrdScope(BOTTOMSCOPE,(cAlias1)->Codigo))
(cAlias2)->(DbGotop())
(cAlias3)->(OrdScope(TOPSCOPE,<>(cAlias1)->Codigo))
(cAlias3)->(OrdScope(BOTTOMSCOPE,<>(cAlias1)->Codigo))
(cAlias3)->(DbGotop())
 oBrw:Refresh()
Return nil


Aqui lo que hago es:
que me filtre cAlias2 (Utilizado por el segundo xbrowse) que sea igual al codigo del primer xbrowse (conductor)
que me filtre cAlias3 (Utilizado por el tercer xbrowse) que sea distinto al codigo primer xbrowse (conductor)
Pero no functiona.
Como puedo poner en un scope como condicion, que sea distinto a (<>)

Re: Ordscope

Posted: Sun Mar 12, 2023 12:32 am
by Jimmy
if your 2nd Browse depend on 1st Browse than i would use SET RELATION

i guess every "Driver" have a "ID" and DBF "UsedCars" and "MoreCars" also have FIELD "ID" with Index

Code: Select all | Expand

SET RELATION DRIVER->ID INTO USEDCARS ,;
             DRIVER->ID INTO MORECARS
... not sure about "MoreCars" as you want "Cars" which User have "not used"

Re: Ordscope

Posted: Sun Mar 12, 2023 11:28 am
by JoseLuis
Buenos dias
Todas las pruebas que he hecho funcionan solo para relacionar el primer xbrowse con el segundo, pero yo lo que quiero es que el tercer xbrowse muestre todo lo contrario, es decir los manifiestos que NO pertenecen al conductor seleccionado:
Image3 xbrowses

Tambien he probado con indices temporales, pero no doy con la forma de hacerlo

Re: Ordscope

Posted: Sun Mar 12, 2023 7:49 pm
by JoseLuis
Bueno, lo estoy haciendo con arrays

Parece que funciona, ahora lo probaré con datos reales, a ver si es mucho más lento o no.