| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
MarioMarieti Cmdr

Registrado: 28 Dic 2004Mensajes: 144Ubicación: Murcia (España)
|
Publicado: Vie 04 Abr, 2008 1:26 pm Asunto: Como se puede saber si una Query ya ha sido creada |
|
|
Existe alguna manera de comprobar si un Objeto TQuery ya ha sido creado en tiempo de ejecución.
Gracias de antemano.!!! |
|
| Volver arriba |
|
 |
tronxx Lt JG


Registrado: 30 May 2003Mensajes: 56Ubicación: Merida, Yucatan, Mexico
|
Publicado: Sab 05 Abr, 2008 5:25 pm Asunto: |
|
|
No se eintiende mucho tu mensaje
Si sabes el nombre del query puees hacer algo como
| Código: |
if (*nombre_qry == NULL) {
nombre_qry = ne TQuery(this);
}
|
Si lo que quieres sabes es si ya esta abierta ( activa ) usa esto:
| Código: |
if (nombre_qry->State == dsInActive ) {
// Query inactiva
nombre_qry->Close();
nombre_qry->Open();
}
|
_________________ La caja decía, requiere Win95 o superior así que instalé Linux. |
|
| Volver arriba |
|
 |
MarioMarieti Cmdr

Registrado: 28 Dic 2004Mensajes: 144Ubicación: Murcia (España)
|
Publicado: Sab 05 Abr, 2008 7:36 pm Asunto: |
|
|
Gracias TRONXX!!!
Pero ya lo solucione de la siguiente manera:
PNL es un panel, y es el padre de las querys que voy creando
sNomObjeto es el nombre de la query
sNomClase es "TQuery" , para que solamente me compruebe esos
for(int i=0;i<PNL>ComponentCount;i++)
{
if( String(PNL->Components[i]->ClassName())!= sNomClase)
continue;
if(PNL->Components[i]->Name==sNomObjeto)
{
nIndexObj=i;
break;
}
}
EL MOTIVO ES EL SIGUIENTE:
TENGO UNOS CLIENTES UN POCO GANDULILLOS, Y LES CUESTA ESCRIBIR, ENTONCES LO HAGO ES CADA VEZ QUE ENTRO EN UN CAMPO TIPO DBEDIT, Y QUIERO QUE ESTE SE AUTORRELLENE AL ESCRIBIR ES HACER UN PREPARE CON UNA QUERY, QUE CREARÉ TANTAS COMO CAMPOS DEL FORMULARIO QUIERA AUTORRELLENAR AL ESCRIBIR.
ENTONCES LA PRIMERA LETRA QUE SE ESCRIBE EN EL CAMPO ES CON LA QUE SE CREA LA QUERY, Y LAS SUCESIVAS VECES YA NO LA CREO SOLO HAGO EL OPEN, EVITANDO ASI HACER TANTOS PREPARES. |
|
| Volver arriba |
|
 |
|