Autor |
Mensaje |
Administrador

|
#1 Publicado: 28 Feb 2012 09:15 - Editado por: jcu
Con este truco vamos a poder seleccionar múltiples líneas de un portal.
Para poder entenderlo bien podéis descargaros el archivo adjunto.
La clave del ejemplo está en el campo "Lista Ventas". Éste es un campo de texto que va a ir guardando una lista con todos los ID's, de la tabla relacionada "Ventas", que se vayan seleccionando en el portal que muestra los registros relacionados de esa tabla.
Para ello se coloca un botón que ocupe cada fila del portal y que desencadene el único guión que se precisa: "Seleccionar Venta", con un parámetro de guión que es el "IdVenta" del registro relacionado correspondiente a esa fila del portal.
El guión, en su primera instrucción, le asigna a una variable ("$IdVenta") ese parámetro de guión. Posteriormente comprueba, mediante la función PatternCount, si "$IdVenta" está ya en la lista que tiene el campo "Lista Ventas". Si es así, mediante la función Substitute elimina ese valor de la lista (para deseleccionar esa fila del portal), y si no se lo añade. Ya sólo tenemos que crear una relación con la tabla "Ventas" entre el campo "Usuarios::Lista Ventas" y el campo "Ventas::IdVenta". Si el campo "ListaVentas" contiene los valores 4,6 y 8, a través de esta nueva relación sólo estarán vinculados con este registro aquellos registros de la tabla Ventas cuyos Ids sean 4,6 y 8. Con la función "Sum" podemos obtener la suma de los campos "Cantidad" de estos registros, que es el cálculo que obtiene el campo "Suma Ventas.
Para que las filas del portal se muestren resaltadas si el valor del "IdVenta" del registro relacionado correspondiente está incluido dentro de los valores de "Lista Ventas", al botón que colocamos en cada fila del portal le añadimos un formato condicional, de tal manera que si el IdVenta correspondiente a ese registro está en la lista, tomará un color de relleno, y si no seguirá transparente.
Gracias a JotaEme por su TRUCO y explicación del mismo.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Todo lo que sueñas, se puede diseñar.
FM 11 * VV 6 * PHP 5 * MySQL * Win 8.
|
Administrador

|
#2 Publicado: 22 Mar 2012 18:06
nueva variante donde se pueden seleccionar varias filas del portal con la tecla mayúscula.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Todo lo que sueñas, se puede diseñar.
FM 11 * VV 6 * PHP 5 * MySQL * Win 8.
|
Administrador

|
#3 Publicado: 23 Mar 2012 20:48
Una modificación más, esta vez realizada por surfer. Gracias.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Todo lo que sueñas, se puede diseñar.
FM 11 * VV 6 * PHP 5 * MySQL * Win 8.
|
Miembro
Asiduo
 
|
#4 Publicado: 20 Abr 2012 21:08 - Editado por: luisloa
El ejemplo es buenisimo, lo malo es que en mi proyecto no consigo insertarlo. Lo que me hace es que pincho y me da un pantallazo pero no selecciona nada.
Lo he probado sin que sea con la mayuscula el seleccionar y me funciona pero solo me suma no consigo que me quite una selección, vamos que no me resta.
Una pregunta ¿Las tablas han de estar en el mismo archivo? ¿Pueden ser 2 archivos diferentes relacionados?.
Gracias
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
windows xp, Filemaker 11 Advanced
|
Moderador
Adicto
   
|
#5 Publicado: 21 Abr 2012 02:17
He probado con 2 archivos distintos, uno con una sola tabla "Clientes" y otro con una tabla"Ventas", por supuesto relacionadas, y funciona correctamente. Saludos
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Windows 8 y Filemaker 11
|
Miembro
Asiduo
 
|
#6 Publicado: 21 Abr 2012 09:57
Gracias JotaEme por tu respuesta. Debo estar haciendo algo mal nose. Pero el tema que no me quite la selección porque puede ser. es que cuando selecciono una fila luego no me deja quitarla por lo tanto tampoco me resta. Se te ocurre que puede ser???
Gracias
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
windows xp, Filemaker 11 Advanced
|
Moderador
Adicto
   
|
#7 Publicado: 21 Abr 2012 10:32
No sé. El eliminar un registro dentro de los seleccionados los hace el paso de guión: Establecer campo[Usuarios::ListaVentas; "¶" & LeftWords(Substitute("¶" & Usuarios::Lista Ventas & "¶"; "¶" & $IdVenta & "¶"; "¶");9999)] Comprueba que están bien escritos el nombre del campo. Si no, no se me ocurre porqué falla sólo eso. Saludos.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Windows 8 y Filemaker 11
|
Miembro
Asiduo
 
|
#8 Publicado: 21 Abr 2012 14:58
Pues esta bien puesto, nose, voy a borrar todo y volveré hacerlo paso a paso haber si consigo que vaya, ya te contaré, de todas formas gracias por la respuesta.
Un saludo
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
windows xp, Filemaker 11 Advanced
|
Miembro
Asiduo
 
|
#9 Publicado: 24 Abr 2012 18:18
Ya esta lo hice de nuevo y funciona bien, lo único que cada vez que selecciono me da un pantallazo y no se muy bien porque, pero vamos mas se perdió en la guerra jeje.
Muchas gracias por el truco es muy útil.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
windows xp, Filemaker 11 Advanced
|
Moderador
Adicto
   
|
#10 Publicado: 25 Abr 2012 21:19
Hola a todos,
Viendo el ejemplo he visto algo que es nuevo para mi y me ha llamado la atención.
En el campo lista de ventas se guardan los id´s de las fichas seleccionadas de la tabla de ventas. Lo que me llama la atención es que un solo campo de un registro tiene muchos id´s y se puede relacionar con todos esos id´s independientes de la otra tabla.
Siempre había pensado que un campo por su contenido único se enlaza a otra tabla en la que coincide ese contenido. Pero aquí el campo lista de ventas puede tener de 0 a n valores y por cada uno de esos valores crea una relación en la tabla de ventas.
¿Me podéis dar más información o donde conseguirla sobre esta sorpendente y potente característica? (Al menos para mi, en otros lenguajes no existe)
Un saludo y gracias por este magnífico y útil aporte.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
El más tonto es aquel que no pregunta por no quedar como un tonto.
Mac y Filemaker 13 pro advance
|
Moderador
Adicto
   
|
#11 Publicado: 25 Abr 2012 22:00
En la Ayuda de FM 11, tema "Campos coincidentes en relaciones", lo explica:
"Aumente el número de valores coincidentes posibles introduciendo varios valores en el campo coincidente, separados por retornos de carro. Puede acceder a los datos relacionados al hacer coincidir cualquier línea del campo coincidente, en función de sus criterios de relación. Este procedimiento se denomina en ocasiones campo multiclave o campo clave complejo.
Por ejemplo, suponga que tiene una relación simple que une registros de la TablaA con los de la TablaB, basándose en los contenidos de un único campo de cada tabla y el campo coincidente de la TablaA contiene los valores siguientes:
rojo verde azul
separados por retornos de carro. FileMaker Pro hará coincidir cualquier registro de la TablaB cuando el campo coincidente correspondiente contenga el valor único rojo, verde o azul. Sin embargo, FileMaker Pro no devolverá registros si el campo coincidente contiene el valor rojo verde azul. El retorno de carro indica a FileMaker Pro que trate cada línea como un valor independiente."
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Windows 8 y Filemaker 11
|
Moderador
Adicto
   
|
#12 Publicado: 26 Abr 2012 16:26
Muchas Gracias por tu aclaración.
Esto me va ha ser muy util.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
El más tonto es aquel que no pregunta por no quedar como un tonto.
Mac y Filemaker 13 pro advance
|
Miembro
Habitual

|
#13 Publicado: 5 Dic 2013 16:57
excelente... muchas gracias por el aporte.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Win 7 - filemaker pro 12
|
Miembro
 Habitual

|
#14 Publicado: 16 Jun 2014 23:51
Hola.
Reviviendo el tema
Baje el ejemplo y me di cuenta de que si utilizamos la tecla Ctrl podemos seleccionar aleatoriamente los renglones.
Saludos
Pedro
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Win 10 x64 FM pro 15 pro adv
Un abrazo, mil bendiciones
win 10 x64 FMPA 15
|
Miembro
Habitual

|
#15 Publicado: 21 Jul 2014 21:31
Alguien sabe si con este truco se pueden imprimir solo las lineas del portal seleccionadas? es que no he podido descifrar cómo hacerlo. Saludos
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
|
Moderador
Adicto
   
|
#16 Publicado: 21 Jul 2014 21:51
Si en la presentación donde está el portal, ejecutas un guion con un solo paso:
Ir al Registro relacionado[Mostrar sólo registros relacionados; Desde la tabla "Ventas 2"; Usando la Presentación "TuPresentacióndeImpresión"]
Te llevará a la presentación que tú quieras mostrándote sólo los registros seleccionados, y desde ahí los puedes imprimir. Por supuesto, la presentación debe estar basada en la tabla ventas.
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Windows 8 y Filemaker 11
|
Miembro
Ocasional
|
#17 Publicado: 29 Ene 2015 06:37
como hago para lo que selecciono en el portal lo pueda ver en un informe para imprimir ycomo hago para agregar un nuevo campo en el portal? gracias
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
Johan David Gómez
windows ios 8 android
|
Miembro
Ocasional
|
#18 Publicado: 16 Feb 2016 00:04
hola tengo un problema, quiero sumar solo algunos campos del portal, con el sum me suma todos y no hay problema pero quiero que solo sean algunos con un condicional de fecha actual, si podrían ayudar por favor
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
|
Moderador
Adicto
   
|
#19 Publicado: 16 Feb 2016 11:42
Hola Fatima14
Para lo que quieres crea en la tabla del portal un campo calculado con:
Case ( Fecha = Get ( currentDate) ; Campo a sumar ; 0 )
De esta forma ese campo solo tiene contenido si cumple tu condición.
Luego haces un sum() desde la tabla donde incluyes el portal a ese campo del portal y ya lo tendrás.
Un saludo
Si este mensaje te ha servido de ayuda dale tu voto
, si quieres penalizarlo
El más tonto es aquel que no pregunta por no quedar como un tonto.
Mac y Filemaker 13 pro advance
|