Hola vtdeleon te cuento que cambie mi código pero no visualiza nada.
Ahora te detallo lo que estoy usando ya que buscaba solucionar mi problema con una sola cuenta pero en realidad tengo que buscar cuatro cuentas a la vez y validar mediante el periodo y situacion si esta vacio o no, pero debo mostrar en los 48 edit su situacion. Si situacion es vacio el edit es PPP sino EEE y si no existe la cuenta que este en blanco, supongamos que en Febrero no existe la cuenta 1000000001 su periodo era igual a 02 pero como no existe, su edit estará en blanco es decir sin ningun caracter y por ultimo que me muestre el nombre de la cuenta en un edit diferente para cada cuenta
FDM=Datamodule
QCC=Tquery que esta conectada con mi base de datos
TCC=tabla CCCLIENTES
mis registros estan de las siguiente manera
cuenta nombre periodo situacion
1000000001 A 01 PPP
1000000002 B 01 ppp
1000000003 C 01
1000000004 D 01..... EEE
................ .. .. ..... vacio 1000000001 periodo=02
1000000002 B 02 PPP
1000000003 C 02 PPP
1000000004 D 02..... PPP......
.
.
.
.....y asi hasta periodo =12
osea tendremos la cuenta 1000000002 doce veces
"El campo situacion esta vacio hasta que asignemos un valor"
los valores PPP y EEE son caracteres que me serviran para hacer comparaciones despues
ene feb mar abr.............................................
CUENTA1 |NOM| |PPP||PPP|| ||EEE|| || || || || || || || |
CUENTA2 |NOM| |PPP|| ||PPP||PPP|| || || || || || || || |
CUENTA3 |NOM| |EEE|| || || || || || || || || || || |
CUENTA4 |NOM| | || || || || ||PPP|| || || || || || |
|EEE|,| |,|PPP| representan un edit
Luego no se como comparar el PPP que asigné, ya que ese valor debo guardar en el campo SITUACION en los 12 periodos y de las cuatro cuentas
todo esto ya lo logre de la siguiente manera pero sin sql
IF (FDM.TCCCUENTA.VALUE = CUENTA1.TEXT) AND
(FDM.TCCGESTION.Value = GEST.Text) THEN
begin
NAME3.TEXT:= FDM.TCCNOMBRE.Value;
end;
lo tuve que hacer 4 veces para las 4 busquedas, esto solo es para el nombre.
Para validar su situación fue de la siguiente manera
If (FDM.TCCCUENTA.Value = CUENTA1.Text) AND
(FDM.TCCGESTION.Value = GEST.Text) AND
(FDM.TCCPERIODO.Value = '01') AND
(FDM.TCCSITUACION.Value = '')
THEN C1C1.TEXT:= 'P'
else
If (FDM.TCCCUENTA.Value = CUENTA1.Text) AND
(FDM.TCCGESTION.Value = GEST.Text) AND
(FDM.TCCPERIODO.Value = '01') AND
(FDM.TCCSITUACION.Value <> '')
THEN C1C1.Text:='E';
(no pongo el codigo porque es largo, y porque está mal desarrollado)
como veras esta la tuve que hacer 12 veces para cada periodo por cuatro cuentas pero como son 150.000 registros tarda mucho la busqueda pero funciona.
Nuevamente agradeceré mucho a todos los expertos que vi en este foro cuando me den una manito
Saludos.
|