Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-10-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Ayuda con un Algoritmo

Hola a tod@s !

Tengo la mente bloqueada y necesito vuestra ayuda para encontrar un método.

Después de hacer un Select, obtengo un set de datos con dos campos :
1. Tipo de Persona (puede ser 1, 2 o 3)
2. Tipo de Pensión Alimenticia (puede ser Null o cualquier Integer de 6 posiciones).

Necesito obtener sólo SI o NO a una pregunta con las siguientes condiciones:
A. No puede haber más de un mismo Tipo de Persona con Pensiones Alimenticias diferentes (ya sea Null u otro valor).
B. No puede haber más de un Tipo de Persona diferente con algún tipo de Pensión.
C. Si hay Adultos (Tipo de Persona = 1) no puede haber otro tipo de persona diferente con algún tipo de Pensión Alimenticia

Cual sería el mejor método (algoritmo) para sacar la respuesta ??

Ejemplos :

Tipo Pers Tipo Pens VALIDO
========= ========= ======
.. 1 ........ 1
.. 1 ........ 2 ..... NO

.. 1 ........ 1
.. 1 ........ - ..... NO

.. 1 ........ 1
.. 2 ........ 1 ..... NO

.. 1 ........ 1
.. 2 ........ 2 ..... NO

.. 1 ........ 1
.. 2 ........ - ..... SI

.. 1 ........ -
.. 2 ........ 1 ..... NO

.. 1 ........ 1
.. 2 ........ -
.. 3 ........ - ..... SI

.. 1 ........ 1 ..... SI


Gracias por vuestra ayuda y consejos
__________________
Piensa siempre en positivo !

Última edición por gluglu fecha: 24-10-2007 a las 16:59:07.
Responder Con Cita
  #2  
Antiguo 24-10-2007
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Poder: 21
gluglu Va por buen camino
Después de seguir comiéndome el coco creo haber encontrado una solución satisfactoria :

Código Delphi [-]
Aux_Si_No := 0;
IBDataSet.First;
while not IBDataSet.Eof do begin

  if (not IBDataSet.FieldByName('BOARDTYPE').IsNull) or
     (IBDataSet.FieldByName('PAXTYPE').AsInteger = 1) then
    Inc(Aux_Si_No);

  if Aux_Si_No > 1 then begin
    // La respuesta es NO
    Exit;
  end;

  IBDataSet.Next;

end;
 
if Aux_Si_No <= 1 then ... // La respuesta es SI
__________________
Piensa siempre en positivo !
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Algoritmo Quickhull juanchi Varios 14 13-10-2016 11:57:16
[Ayuda] Algoritmo Allege RC4 nelostanley Varios 5 29-06-2007 22:14:44
Algoritmo!!! Ledian_Fdez C++ Builder 7 18-06-2007 22:17:50
AYUDA! no puedo terminar un algoritmo de resalto de texto en un RichEdit! Black_Ocean Varios 2 05-06-2007 10:54:00
Algoritmo MD5 tbolzan Varios 1 19-10-2004 15:13:47


La franja horaria es GMT +2. Ahora son las 15:29:51.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi