Apúntate a la Zona De Descargas Reservadas (ZDDR). Solo son 20 Euros
Con solo 20€ ayudarás
a mantener el foro.





Todo lo que sueñas, se puede diseñar.
We build your dreams.

 - Principal - Responder - Estadísticas - Registrarse - Buscar - Lista de usuarios -  - Zona de Descargas
 -Privacidad y política de cookies -
llevamos 20 años contigo

Ayuda al foro con tu donación


Búsqueda en los foros

Foros en Udias.com / FileMaker / Mostrar en una variable de fusion el valor obtenido por SQL, pero por cada registro
Autor Mensaje

Miembro

Ocasional

  Karma   0

#1 Publicado: 8 Jun 2022 22:02



Saludos

Por favor si me ayudan...

Estoy empezando con filemaker, vengo de programar en lenguajes que usan como base SQL, y en estos yo hago una consulta y el resultado lo presento en un campo de visualización, pero no tengo que crear ningun campo adicional en la base de datos.

Quisiera hacer algo similar en Filemaker: presentar la suma de ventas entre dos fechas, obtenido mediante una sentencia SQL, para cada uno de los clientes que tengo seleccionados con filtros. Pero sin crear un campo sumario!!!


Gracias


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hernando

Moderador


  Karma               11245

#2 Publicado: 9 Jun 2022 14:43 - Editado por: flusheddata



Hola.
En FileMaker tendrías que crear un campo de cálculo (no almacenado) para que la consulta ExecuteSQL se actualice con el parámetro correspondiente a cada registro. Al cambiar de registro se actualiza en tiempo real.

Existen variables globales, pero tendrías que actualizar su valor con el cambio de registro con una nueva consulta mediante un activador de guión OnRecordLoad.

Yo suelo usar el primer enfoque, ya que no es necesario guión alguno.

Y si no quieres poner el campo de cálculo en la presentación siempre puedes insertarlo como campo de fusión: <<NombreDelCampo>>.


Sls.


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hay 10 tipos de personas: las que saben binario y las que no. Windows 10 + FileMaker Pro 11/19

Miembro

Ocasional

  Karma   0

#3 Publicado: 9 Jun 2022 21:25



Mil gracias por tu respuesta flushddata

En realidad no quisiera aumentar campos en la base de datos y por ello quisiera irme por poner un campo de fusión.

Pero como hago con el campo de fusión, cuando pongo un campo de fusión este se llena con una variable global, $$variable, y cuando cambio de registro, la variable al ser global, en cada registro se actualiza pero pone el valor del calculo del ultimo registro.

Por favor me puedes indicar como hacerlo


Gracias


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hernando

Moderador


  Karma               11245

#4 Publicado: 9 Jun 2022 21:50



Hernando:
En realidad no quisiera aumentar campos en la base de datos y por ello quisiera irme por poner un campo de fusión.

En FileMaker Pro un campo de fusión no es algo distinto de un campo. Se llama campo de fusión a una de las formas de insertarlo en la presentación y que solo se usa a modo de Label o Caption. Ejemplo: Escribir <<MiCampo>> en una presentación es la versión de fusión de insertar el campo MiCampo en la misma.

Una variable global tendrá el mismo valor para todo el archivo por lo que no hace lo que quieres a no ser que crees un guión que se ejecute con el activador OnRecordLoad y que hará la consulta SQL poniendo el resultado en la variable.

En FileMaker tratar de crear campos solo para datos es un error típico. Se usan campos para muchas más cosas.

Asimismo ten en cuenta que FileMaker Pro no es un lenguaje de programación; es un gestor de bases de datos relacionales altamente programable que tiene sus propias reglas.

Sls.


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hay 10 tipos de personas: las que saben binario y las que no. Windows 10 + FileMaker Pro 11/19

Miembro

Ocasional

  Karma   0

#5 Publicado: 10 Jun 2022 19:36



Gracias flusheddata por tomarte el tiempo de ayudarme!!!

ME ha quedado claro el uso del campo de fusión, gracias por aclararme

Por otro lado he realizado la implementación con el campo de fusión con un valor calculado por SQL, pero en la Presentación que desplego varios registros a la vez, tengo que dar un click en el registro para que se dispare OnRecordLoad y corra el guion.

Como puedo hacer para que se llenen todos los campos a la vez?

Gracias


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hernando

Moderador


  Karma               11245

#6 Publicado: 11 Jun 2022 10:32 - Editado por: flusheddata



Hernando:
Por otro lado he realizado la implementación con el campo de fusión con un valor calculado por SQL

Se puede usar un campo normal con una auto introducción de cálculo o un campo de cálculo. Son dos cosas totalmente distintas. Mientras un campo normal con resultado de cálculo introduce un valor el cual puedes modificar tecleando en el campo o mediante un guión, un campo de cálculo tendrá un valor fijo y no modificable de ninguna manera. Ese valor fijo queda establecido sin necesidad de guión alguno.
Un campo de cálculo tiene dos comportamientos distintos. Almacenado y no almacenado. Si quieres un valor de cálculo que se evalúe solo una vez (durante la creación del registro por ejemplo) tienes que dejarle desmarcada la opción No almacenar los resultados de los cálculos. Calcular cuando sea necesario. Si por el contrario quieres que se evalúe cada vez que se redibuja la ventana o haya un cambio en cualquier operando del cálculo, marca la opción. En tu caso, con la consulta ExecuteSQL deberías marcarlo.

Entiendo que tu SQL usa parámetros (los argumentos opcionales de la función) que hacen referencia a algún campo del registro actual (ya sea por ruptura del literal o usando el operador de inserción ?). Con un campo de cálculo, marcando que el resultado sea tipo texto por cierto, no tienes que hacer nada, ni usar guión siquiera. Al cambiar de registro se mostrará el resultado de la consulta directamente.
El único punto en contra es que si usas un listado con muchos registros afectará bastante al rendimiento. Para eso recomiendo no usar este tipo de cálculos no almacenados en listados, sino en formularios de un único registro cada vez.

Hay bastante confusión con estos conceptos, aunque en la ayuda del programa lo aclara bastante bien.

Espero que este ladrillo te haya servido.

Sls.


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hay 10 tipos de personas: las que saben binario y las que no. Windows 10 + FileMaker Pro 11/19

Miembro

Ocasional

  Karma   0

#7 Publicado: 24 Jun 2022 19:16



Gracias Flushedata por tu explicación

Si me sirve mucho gracisa nuevamente


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hernando

Moderador


  Karma               11245

#8 Publicado: 25 Jun 2022 18:18



Si quieres sube tu archivo sin datos sensibles poniendo en él un texto que explique lo que necesitas. A ver si te podemos ayudar sobre el propio archivo.
Sls.


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hay 10 tipos de personas: las que saben binario y las que no. Windows 10 + FileMaker Pro 11/19

Moderador


  Karma               11245

#9 Publicado: 13 Jul 2022 17:45



Hola.
Suponiendo que te encuentres en la tabla CLIENTE y quieras el sumario de ventas de la tabla VENTA

ExecuteSQL ( "
select sum(Importe) from VENTA where FechaVenta >=? and FechaFenta <=? and IdCliente =?
" ; "" ; "" ; CLIENTE::FiltroFechaInicio ; CLIENTE::FiltroFechaFin ; CLIENTE::IdCliente )


Suponiendo que en la tabla VENTA existan los campos Importe e IdCliente. Si no existe este último siempre podrás usar un JOIN. En esta función de FileMaker solo existen left join (por defecto) e inner join.

Sls.


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Hay 10 tipos de personas: las que saben binario y las que no. Windows 10 + FileMaker Pro 11/19
Su respuesta

Estilo Negrillas  Estilo Italico  Estilo Subrayado  URL De La Imagen  URL De La Web  Preformatted Text  YouTube URL  Sin código BB
Emoticones
:) ;) :up: :down: :biglol: :confused :cool: :mad: :sad: :shame: :smirk: :tongue: ... Más  Emoticones desactivados
Color de texto
Texto en negro Texto en blanco Texto en gris Texto en rojo Texto en azul Texto en verde Texto en rojo oscuro Texto en cian Texto en azul oscuro Texto en púrpura Texto en amarillo Texto en rosa Texto en naranja Texto en verde oliva Texto en marrón



 » Usuario  » Contraseña 
Solo Usuarios Registrados Pueden Postiar Aqui.
 

Tópicos relacionados con Mostrar en una variable de fusion el valor obtenido por SQL, pero por cada registro

Se puede mostrar el valor de una variable??
Variable Guardar el registro del ultimo valor de un campo
Mostrar datos del registro segun el valor seleccionado en un campo de lista despelgable
Guardar dato de lista desplegable pero mostrar otro en la presentacion
RESTAR UN VALOR DEL REGISTRO ACTUAL DE UN VALOR DEL REGISTRO ANTERIOR


Conectados: Invitados - 2
Miembros - 0
En verde usuarios ZDDR

Realizado con miniBB © 2001-2022
Para Udias.com © 1996-2022
Hosting con Interdominios