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


Seguir a udias en Twitter
Directorio de Empresas de Foros de informática


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
 -
Ayuda al foro con tu donación
Foros en Udias.com / FileMaker / ::: TRUCO ::: Cálculos Anidados utilizando If
Autor Mensaje

Administrador


  Karma               5429

#1 Publicado: 14 Jun 2011 18:46



El concepto de un cálculo utilizando las secuencias condicionales IF anidadas, es una buena manera de procesar resultados desde un campo o un grupo de campos para conseguir el resultado deseado. La mejor forma de hacer esto es tener claro el resultado deseado antes de empezar a crear un cálculo. Una buena manera de crear una cálculo IF anidado es probar de dibujarlo.

La sintaxis del cálculo IF en FileMaker Pro es:

If ( prueba, resultado 1, resultado 2)

Puede parecer más fácil pensar en la secuencia IF como una pregunta si/no que determina la siguiente acción , por ejemplo:

IF ( pregunta, haz esto si la respuesta es si, has esto si la respuesta es no). El truco está en especificar el cálculo de manera que sólo haya la respuesta posible verdadero o falso ( Si ó no), por ejemplo:

If ( 2+4= 5, "verdad", "falso")

FileMaker primero calcula 2+3= 5, después procesa el resultado apropiado, que será mostrar " verdadero". La manera más sencilla de describir una secuencia anidada IF es pensar en una condición dentro de una condición.

En un cálculo IF anidado, primero se evalúa la prueba. Basándose en el resultado de la prueba ( normalmente con un resultado falso), se evalúa la siguiente. El resultado deseado se consigue a través del proceso de eliminación desde la primera condición IF en el cálculo.

Vamos a poner que el resultado 2 ( cuando obtiene que el resultado de la prueba es falso) se reemplaza por otra secuencia condicional IF. En este caso, el resultado 2 es igual a otro condicional. Esto quedaría así:

If ( prueba, resultado uno, If ( resultado uno, resultado dos ))
Esto leído sería: Si la primera prueba, el resultado es verdad, procesa resultado uno, o sinó procesa el resultado dos, que es otra condición. Imaginamos ahora que tanto el resultado uno como el dos son condiciones

If ( prueba, If (prueba, resultado 1, resultado 2), If ( prueba, resultado 1, resultados 2))

Al crear cálculos utilizando secuencias condicionales IF anidadas, es importante tener en cuenta que no importa cómo de complejas parezcan, siempre pueden separarse en secuencias IF individuales.

Vamos a ver un ejemplo real:

Vamos a utilizar esta técnica para construir una cálculo anidado para clasificar las facturas en las 4 categorías siguientes:

30 días o menos
31-60 días
61-90 días
Más de 90 días

Si miramos a la fecha de la factura, la primera pregunta será: " es la factura con fecha a 30 días o menos? Esto en términos FileMaker Pro sería:

If ( Hoy – Fecha factura<=30, "30 días o menos", resultado 2)

Pero qué pasa si la diferencia entre la fecha de hoy y la factura no es menor de 30 días, entonces al saber que no es igual o menor a treinta días, le podemos preguntar si es menor o igual a 60 días:

If ( Hoy- Fecha factura<=30, "30 días o menos", If ( hoy- Fecha factura >=60, "31-60 días", resultado 2 )).

Qué pasa si la fecha de factura es anterior a 60 días? Añadimos otro condicional al resultado 2 de la prueba 2,

If (Hoy – Fecha factura <= 30, "30 días o menos",If (Hoy Fecha factura <= 60, "31 - 60 días",If (Hoy - Fecha factura <= 90, "61 - 90 días", resultado 2)))

Es importante apreciar que cada condición anidada, está diseñada para eliminar las respuestas potenciales hasta que sólo nos quede un resultado posible. Si la diferencia no es menor de 30 días, ni igual o o menor que 60 días, ni menor o igual a 90 días, sólo hay un resultado posible:

If (Hoy – Fecha factura <= 30, "30 días o menos",If (Hoy Fecha factura <= 60, "31 - 60 días",If (Hoy - Fecha factura <= 90, "61 - 90 días", "Más de 90 días")))

Sacado del boletín de noticias de FileMaker


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Todo lo que sueñas, se puede diseñar. FM 11 * VV 6 * PHP 5 * MySQL * Win 8.

Miembro

Ocasional

  Karma     20

#2 Publicado: 4 Nov 2012 16:37



en ese caso me parece meor utilizar la funcion case que te ofrece opciones en caso de que el valor sea a b o c es deceir Case(prueba1,valor1,prueba2,valor2,.....,pueban,va lorn,....,otro)


Si este mensaje te ha servido de ayuda dale tu voto Voto positivo, si quieres penalizarlo Voto positivo
Jorge Saud Mac y Windows FMpro Adv
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 ::: TRUCO ::: Cálculos Anidados utilizando If

If Anidados y velocidad de cálculos
Cálculos anidados o Case
::: TRUCO ::: ABRIR UNA BASE DE DATOS FILEMAKER UTILIZANDO UN HIPERVÍNCULO.
::: TRUCO ::: COMO FILTRAR FACILMENTE UNA LISTA EN FILEMAKER UTILIZANDO LOS ACTIVADORES DE GUION.
::: TRUCO ::: Optimizar los gráficos FileMaker con sencillos cálculos


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

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