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 15-11-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Lepe, me puedes explicar que es un campo persistente?
No entiendo el concepto?
Es cuando el campo esta en el query y no se modifica?
Perdon por la pregunta de novato, pero si no la hago no aprendo.
El resto esta genial, impresionas Maestro.
Saludos
Responder Con Cita
  #2  
Antiguo 15-11-2007
Petolansa Petolansa is offline
Miembro
 
Registrado: jul 2005
Posts: 159
Poder: 19
Petolansa Va por buen camino
Gracias tanto como a Caral como a Lepe, realmente da gusto haya personas como Uds con la predisposicion para ayudar a la gente que le gusta aprender este lenguaje. Yo las ganas de ayudar las tengo pero me faltan los conocimientos todavia. Pero ni bien pueda sin dudas estar ayudando.

En este momento me da un error en otra parte del codigo, asi que ni bien termine eso, me meto de lleno con esto y por supuesto avisare como me fue.

Gente, muy agradecido.
Responder Con Cita
  #3  
Antiguo 15-11-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
Cuando le das doble clic a un TTable, aparece la ventana editor de campos, botón derecho y Add All Fields.

A eso se le llama campos persistentes porque en tu Form aparece:
Código Delphi [-]

Type TForm1 = Class(TForm)

  query1NombreCliente :TStringField;
Al crear la ventana, se crea ese campo como si se tratara de un panel, un edit, etc.

Al usar FieldbyName esto es lo que ocurre:
Código Delphi [-]
function TFields.FieldByName(const FieldName: WideString): TField;
begin
  Result := FindField(FieldName);
  if Result = nil then DatabaseErrorFmt(SFieldNotFound, [FieldName], DataSet);
end;

Y aquí está la madre del borrego:

function TFields.FindField(const FieldName: WideString): TField;
var
  I: Integer;
begin
  for I := 0 to FList.Count - 1 do  Un bucle por todos los campos que tiene la tabla
  begin
    Result := FList.Items[i];
    if WideCompareText(Result.FFieldName, FieldName) = 0 then Exit;
  end;
  Result := nil;
end;
Si tu tabla tiene 10 campos, al usar FieldByName:
- En el mejor de los casos, lo encuentras al primer intento de ese bucle.
- En el peor de los casos, tendrás que dar 10 vueltas en ese bucle For

Al usar campos persistentes, tienes ese campo como si fuera un panel o un Edit, no hay que realizar bucle alguno.

En el caso que nos ocupa, nosotros tenemos otro bucle más:
while not frmfactura.MDtemporal.Eof do

si tenemos 20 registros en la tabla, 10 campos, usamos 2 veces fieldbyname dentro de nuestro bucle:
-En el peor de los casos, 390 ciclos
-En el mejor de los casos: 60 ciclos

Usando campos persistentes: 20 ciclos

No hay que meterse en paranoias , pero si tenemos los campos persistentes, es preferible usarlos .

Petolansa: Si no entiendes algo de ese código usa la tecla F1, es la única forma de aprender, si aún así tienes dudas, avisa.


Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #4  
Antiguo 15-11-2007
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
Hola
Lepe, me puedes explicar que es un campo persistente?
No entiendo el concepto?
Es cuando el campo esta en el query y no se modifica?
Perdon por la pregunta de novato, pero si no la hago no aprendo.
El resto esta genial, impresionas Maestro.
Saludos
es cuando agregas los campos en el field editor del query.
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #5  
Antiguo 16-11-2007
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Me imaginaba que era eso, pero como tenéis nombres raros para todo, pues no sabia este.
Gracias Maestros, como aprendo aquí, da gusto.
Saludos
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
Articulo similar al de Paradox en red, pero para Access Wonni Conexión con bases de datos 0 17-05-2007 14:51:03
Codificar para el cambio: Mi primer articulo en BDN!!! mamcx Noticias 11 22-09-2006 01:37:20
Articulo -> Ventas - Borrar Articulo hmoner Conexión con bases de datos 7 14-10-2005 18:24:54
Artículo de Paradox en red Mariana Conexión con bases de datos 4 22-12-2004 04:23:27
Duda para crear índice de artículo Tio Firebird e Interbase 2 10-06-2003 01:00:14


La franja horaria es GMT +2. Ahora son las 06:57:17.


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