In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

Browser uno a muchos

Foro público de Xailer en español
Responder
Avatar de Usuario
Carlos Ortiz
Mensajes: 873
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Browser uno a muchos

Mensaje 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.
Avatar de Usuario
jasm
Mensajes: 447
Registrado: Mar Jul 08, 2008 8:12 pm

Browser uno a muchos

Mensaje 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
Avatar de Usuario
Carlos Ortiz
Mensajes: 873
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Browser uno a muchos

Mensaje 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.
Avatar de Usuario
jasm
Mensajes: 447
Registrado: Mar Jul 08, 2008 8:12 pm

Browser uno a muchos

Mensaje 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
Rene Flores
Mensajes: 620
Registrado: Jue Mar 23, 2006 2:39 am

Browser uno a muchos

Mensaje 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.
>
>
Avatar de Usuario
Carlos Ortiz
Mensajes: 873
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Browser uno a muchos

Mensaje 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.
>
Avatar de Usuario
Carlos Ortiz
Mensajes: 873
Registrado: Mié Jul 01, 2009 5:44 pm
Ubicación: Argentina - Córdoba
Contactar:

Browser uno a muchos

Mensaje 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.
Responder