| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Lun 07 Sep, 2009 2:09 pm Asunto: Ayuda con sodigo de cara oculta de c++ |
|
|
Hola amigos del foro.
He estado buscando algo de ayuda en la cara oculta de c++ y me he topado con un ejemplode filtro en bases de datos que me interesa mucho pero al pegar el codigo me ha salido con varios errores aca les dejo en codigo y los errores... Capitulo 16 del libro Metodos de busquedas (Filtros)
Codigo
| Código: | void __fastcall TForm1::Filtrar(TObject *Sender)
{
Set<TFieldType> TiposConComillas;
TiposConComillas << ftString << ftDate << ftTime <</Extraer>SelectedField->FieldName;
// Extraer y dar formato al valor seleccionado
if (TiposConComillas.Contains(DBGrid1->SelectedField->DataType))
Valor = QuotedStr(DBGrid1->SelectedField->AsString);
else
{
Valor = DBGrid1->SelectedField->AsString;
for (int i = 1; i <Valor>Filter == "")
Table1->Filter = Format("[%s] %s %s",
ARRAYOFCONST((Campo, Operador, Valor)));
else
Table1->Filter = Format("%s AND [%s] %s %s",
ARRAYOFCONST((Table1->Filter, Campo, Operador, Valor)));
// Activar directamente el filtro
miActivarFiltro->Checked = True;
Table1->Filtered = True;
Table1->Refresh();
} |
Errores
[C++ Error] Unit1.h(37): E2451 Undefined symbol 'miIgual'
[C++ Error] Unit1.h(3 : E2451 Undefined symbol 'miMayorIgual'
....y asi sucesivamente con esos valores en especifico....
Por favor amigos del foro podrian sugerirme una solucion para estos errores?
gracias y mis saludos _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
Tor Master


Registrado: 22 Mar 2005Mensajes: 269Ubicación: obera, misiones, argentina
|
Publicado: Lun 07 Sep, 2009 4:55 pm Asunto: |
|
|
Pagina 344
Para el menú desplegable especificamos las siguientes opciones:
Comando de menú Nombre del objeto de menú
| Cita: |
Igual a (=) miIgual
Distinto de (<miDistinto>=) miMayorIgual
Menor o igual (<=) miMenorIgual
Activar filtro miActivarFiltro
Eliminar filtro miEliminarFiltro |
esto es para un PopupMenu1, el metodo Filtrar es un código común a los métodos Action de cada opción del menu.
Espero no haberte liado mas.
saludos Tor _________________ Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr) |
|
| Volver arriba |
|
 |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Lun 07 Sep, 2009 5:41 pm Asunto: Agradecido |
|
|
Tor mil gracias, sabes que? De apurado no me lei las instrucciones, es cierto lo que me dices y amire la pagina que burrada
Muchas gracias de veras
Pero me gustaria hacer una pregunta ahora si cabe en este tema:
Como le hago para al dar clic derecho sobre una columna poder obtener el caption de dicha columna?
gracias y saludos _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
Tor Master


Registrado: 22 Mar 2005Mensajes: 269Ubicación: obera, misiones, argentina
|
Publicado: Lun 07 Sep, 2009 9:19 pm Asunto: |
|
|
Aqui en esta linea
| Código: | Valor = DBGrid1->SelectedField->AsString; |
es conveniente que la opcion dgRowLines este en false, de lo contrario puede ser un poco confuso la interpretacion.
Recuerda que en la propiedad MenuPopup del DBGrid debe estar el MenuPopup que tiene las condiciones de filtrado.
saludos tor _________________ Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr) |
|
| Volver arriba |
|
 |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Lun 07 Sep, 2009 9:28 pm Asunto: |
|
|
Gracias Tor por responder , pero en cual evento...? _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
Tor Master


Registrado: 22 Mar 2005Mensajes: 269Ubicación: obera, misiones, argentina
|
Publicado: Lun 07 Sep, 2009 11:56 pm Asunto: |
|
|
No es un evento es una propiedad, se encuentra arriba de la propiedad ReadOnly en CB6 _________________ Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr) |
|
| Volver arriba |
|
 |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Mie 09 Sep, 2009 11:51 am Asunto: |
|
|
Hola Tor.
Cuando me refiero a cual es el evento, lo digo refiriendome a la linea que dejas, en cual evento va
citando
| Código: | Valor = DBGrid1->SelectedField->AsString; |
voy nuevamente:
recuerda que lo que necesito es que el DBGrid este enlazado a un popupmenu, pero cuando le de clik derecho al dbgrid a demas de mostrar el popup tambien obtener el nombre de la columna.
gracias _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
Tor Master


Registrado: 22 Mar 2005Mensajes: 269Ubicación: obera, misiones, argentina
|
Publicado: Mie 09 Sep, 2009 12:16 pm Asunto: |
|
|
Solo debes crear el PopupMenu exactamente como lo describe el libro, tambien debes tener creado el método Filtrar tal cual lo describe el libro, luego seleccionas una opción del menu, la primera por ej, vas al Object Inspector en la parte de eventos busca el evento Action y asignale el metodo filtrar así para las cuatro primeras opciones, eso es todo.
saludos tor _________________ Un experto es aquel que ya ha cometido todos los errores posibles en una materia muy concreta.
(Niels Bohr) |
|
| Volver arriba |
|
 |
|