Página 1 de 1

Browser uno a muchos

Publicado: Vie Ene 12, 2007 7:51 am
por Carlos Ortiz
Habra un ejemplito de un encabezado->detalle, quiero armar un browse de una
tabla que tiene datos de clientes y debajo otro browse con el detalle de
comprobantes emitidos pero no con array y no seran ediatables los datos,
solo mostrar y si presiona doble click le muestro un form con los datos de
los campo a modificar, esa ultima parte no hay problema ya hice un monton de
abms, el tema es mostrar un browse para ciertos registro que cumplen una
condicion While.
Muchas gracias.

Browser uno a muchos

Publicado: Vie Ene 12, 2007 8:09 am
por jasm
Carlos,
Ejemplo no te puedo dar por que no se que motor de datos usar, pero....
en el evento OnChange del browse de clientes programa lo siguiente:
* Captura el código de cliente
* Filtra los datos de la tabla del segundo browse por código del cliente.
* Refresca el segundo browse
* A tu elección, deja el foco sobre el primer browse o muévelo al segundo.
Se supone que tienes sincronizados los browses con las tablas
correspondientes. Si no es así­ tendrás que recargar los datos filtrados
sobre el segundo browse.
Saludos,
José A. Suárez

Browser uno a muchos

Publicado: Vie Ene 12, 2007 8:25 am
por Carlos Ortiz
Gracias José,
estoy usando tablas con indices CDX, antes usaba los NTX, y por lo que vi
existe lo de SetScope aunque no se como pasarle los parametros creo que por
ahi va la mano. En realidad los estaba buscando mal por que me focalice en
el objeto browse y en realidad era por el lado del tdbdataset.
Muchas gracias.

Browser uno a muchos

Publicado: Vie Ene 12, 2007 8:47 am
por jasm
Carlos,
Para establecer un scope debes tener un indice asociado, en tu caso, la
tabla de comprobantes de clientes debera tener un indice por codigo de
cliente y comprobante.
Si ese es el caso el setscope será, suponiendo que el tag que esta por
cliente+comprobante se llama "clientes":
::oDbfComprobantes:OrdSetFocus( "clientes" ) // selecciona el orden
cliente+comprobate
::oDbfComprobantes:ClearScope( .F. ) // limpia el scope anterior
::oDbfComprobantes:SetScope( ::oDbfClientes:Codigo + "00000",
::oDbfClientes:Codigo + "99999", .T., .T. ) // establece el nuevo scope
(No recuerdo, pero creo que así­ tambien funciona:
::oDbfComprobantes:SetScope( ::oDbfClientes:Codigo,
::oDbfClientes:Codigo, .T., .T. ) // establece el nuevo scope )
Esto lo pones en el método OnChange del primer browse.
Saludos,
Jose Alfonso Suarez

Browser uno a muchos

Publicado: Vie Ene 12, 2007 6:16 pm
por Rene Flores
Carlos:
Bajate este programita:
http://www.ciber-tec.d2g.com/ads/demos/aisxailer.zip
Ahi hay un ejemplo de lo que quieres hacer, incluye el proyecto Xailer y
el ejecutable, y es la segunda opcion del menu.
Si el programa no te funciona, quita el firewall de windows o cualquier
firewall que impida el paso por internet de programa.
Este un demo que hicimos del Advantage Internet Server para Xailer, que
se conecta con nuestros DBFs/CDX en la ciudad de Mexico, pero te vale
para lo que quieres hacer, fuciona con SCOPES.
Saludos
Rene Flores
http://www.ciber-tec.com
Ortiz escribió:
> Habra un ejemplito de un encabezado->detalle, quiero armar un browse de una
> tabla que tiene datos de clientes y debajo otro browse con el detalle de
> comprobantes emitidos pero no con array y no seran ediatables los datos,
> solo mostrar y si presiona doble click le muestro un form con los datos de
> los campo a modificar, esa ultima parte no hay problema ya hice un monton de
> abms, el tema es mostrar un browse para ciertos registro que cumplen una
> condicion While.
>
> Muchas gracias.
>
>

Browser uno a muchos

Publicado: Vie Ene 12, 2007 9:15 pm
por Carlos Ortiz
Gracias José y René, voy a probar sus recomendaciones.
"Carlos Ortiz" <cortiz@assistinfo.com.ar> escribió en el mensaje
news:[email=45a7300a@news.xailer.com...]45a7300a@news.xailer.com...[/email]
> Habra un ejemplito de un encabezado->detalle, quiero armar un browse de
> una tabla que tiene datos de clientes y debajo otro browse con el detalle
> de comprobantes emitidos pero no con array y no seran ediatables los
> datos, solo mostrar y si presiona doble click le muestro un form con los
> datos de los campo a modificar, esa ultima parte no hay problema ya hice
> un monton de abms, el tema es mostrar un browse para ciertos registro que
> cumplen una condicion While.
>
> Muchas gracias.
>

Browser uno a muchos

Publicado: Sab Ene 13, 2007 8:00 am
por Carlos Ortiz
José / René ... justo lo que necesitaba, probado y anda ok.
Gracias a ambos por vuestra ayuda tan precisa como siempre.
Saludos desde Córdoba / Argentina con mucho calor y humedad, pero para
combatir eso pileta-cerveza helada-nachos picantes y Xailer por un rato
largo.