Ver Mensaje Individual
  #5  
Antiguo 18-11-2009
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.000
Reputación: 25
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
A ver si lo he entendido:

Lo que pretendes es que "qryPagosIdTipPag2.Value" sea capaz de contener más de un valor al mismo tiempo, ¿no?

Pues si es sí, entonces entonces tienes que usar SET OF o bien campos de bit. Elegir una u otra opción depende de dónde obtienes el contenido de "qryPagosIdTipPag2.Value", aunque por el nombre supondré que es de una consulta SQL. Si es el caso te recomiendo el uso de campos de bit.

Los campos de bit, como el nombre indica, son estructuras en los que cada campo ocupa un sólo bit, por lo que permite almacenar valores binarios. Por ejemplo:

Código Delphi [-]
TYPE
    TCampoDeBit: BYTE; (* Permite hasta ocho campos. *)
CONST
    cdbUNO    = $01; { 00000001 }
    cdbDOS    = $02; { 00000010 }
    cdbTRES   = $04; { 00000100 }
    cdbCUATRO = $08; { 00001000 }
    cdbCINCO  = $10; { 00010000 }
    cdbSEIS   = $20; { 00100000 }
    cdbSIETE  = $40; { 01000000 }
    cdbOCHO   = $80; { 10000000 }
VAR
   Valor: TCampoDeBit;
BEGIN
{ Asignar 1 a un campo: }
    Valor := Valor OR cdbTRES;
{ Asignar 0 a un campo: }
   Valor := Valor AND (NOT cdbSIETE);
{ Comprobar si un campo es 1: }
   IF (Valor AND cdbCINCO) <> 0 THEN
      ...
{ Comprobar si más de un campo es uno: }
   IF (Valor AND (cdbUNO OR cdbDOS)) <> 0 THEN
      ...
END:

Si no lo entiendes, busca información sobre matemáticas binarias.
__________________
Proyectos actuales --> Allegro 5 Pascal ¡y Delphi!|MinGRo Game Engine
Responder Con Cita