Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Go Back   Foros Club Delphi > Principal > Conexión con bases de datos
Register FAQ Members List Calendar Guía de estilo Search Today's Posts Mark Forums Read

Conexión con bases de datos

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 07/06/2010
leian1306 leian1306 is offline
Registrado
 
Join Date: Jun 2010
Posts: 1
Poder: 0
leian1306 Va por buen camino
Unhappy Fieldbyname ADOTable

Buenas tardes!
Tengo una aplicación con un Data Module (DM) que tiene varias tablas y una que se llama "tabla_ejercicios" con varios campos.

Yo tengo esta función:

Function CantEjerciciosPublicados():integer;
var
total,POS:integer;
begin
total:=0;
POS:=DM.tabla_ejercicios.Fieldbyname('idejercicio').AsInteger;
DM.tabla_ejercicios.First;
while NOT(DM.tabla_ejercicios.Eof) do begin
if(DM.tabla_ejerciciospublicadoenpractica.Value=TRUE)then
Inc(total);
DM.tabla_ejercicios.Next;
end;
DM.tabla_ejercicios.Locate('idejercicio',POS,[]);
RESULT:=total;
end;


La tabla_ejercicios tiene un campo "publicadoenpractica" con valores TRUE o FALSE, y en la línea esta: if(DM.tabla_ejerciciospublicadoenpractica.Value=TRUE)then
... por alguna razón no entra nunca en el IF,siempre lo saltea,tengo abierta la base de Access y efectivamente tiene valores en TRUE,de manera q tendria q entrar en ciertos momentos.
El campo de la tabla tiene la propiedad "DisplayValues=Si;No",para que muestre Si en lugar de TRUE y No en lugar de FALSE. Intente incluso haciendo lo siguiente: if(DM.tabla_ejercicios.Fieldbyname('publicadoenpractica').AsString='Si')then
...pero tampoco funciona.

Si alguien me pudiera decir que puede llegar a estar andando mal se lo agradecería muchísimo. Saludos!
Reply With Quote
  #2  
Old 07/06/2010
Caral's Avatar
[Caral] Caral is offline
Miembro Premium
 
Join Date: Aug 2006
Posts: 7,659
Poder: 28
Caral Va por buen camino
Hola
Aveces el (true, false) en access hace lo que quiere, es mejor un (N, Y) o (1, 2).
Puede ser que salte por la falta de un begin, intentalo asi:
Código Delphi [-]
Function CantEjerciciosPublicados():integer;
var
total,POS:integer;
begin
total:=0;
POS:=DM.tabla_ejercicios.Fieldbyname('idejercicio').AsInteger;
DM.tabla_ejercicios.First;
while NOT(DM.tabla_ejercicios.Eof) do begin
if DM.tabla_ejerciciospublicadoenpractica.Value = TRUE then
begin
Inc(total);
DM.tabla_ejercicios.Next;
end;
end;
DM.tabla_ejercicios.Locate('idejercicio',POS,[]);
RESULT:=total;
end;
Saludos
__________________
Siempre Novato
Reply With Quote
  #3  
Old 07/06/2010
defcon1_es's Avatar
defcon1_es defcon1_es is offline
Miembro
 
Join Date: Mar 2004
Location: Cuenca - España
Posts: 533
Poder: 23
defcon1_es Va por buen camino
Prueba con esto:
Código Delphi [-]
Function CantEjerciciosPublicados():integer;
var total,POS:integer;
begin
  total:=0;
  POS:=DM.tabla_ejercicios.Fieldbyname('idejercicio').AsInteger;
  DM.tabla_ejercicios.First;
  while NOT(DM.tabla_ejercicios.Eof) do 
  begin
    if DM.tabla_ejercicios.FieldByName('publicadoenpractica').AsInteger = 1 then
    begin
      Inc(total);
      DM.tabla_ejercicios.Next;
    end;
  end;
  DM.tabla_ejercicios.Locate('idejercicio',POS,[]);
  RESULT:=total;
end;
__________________
Progress Openedge
https://abevoelker.com/progress_open...dered_harmful/


Delphi forever...
Reply With Quote
Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Ni idea!!!! Problema con DateTimePicker y FieldByName Raynel Varios 4 24/01/2008 00:54
Cuando Usar FieldByname IcebergDelphi Varios 4 08/06/2007 16:44
Fieldbyname se cae ilichhernandez Conexión con bases de datos 4 27/03/2007 23:09
Fieldbyname diferencias jlrbotella Conexión con bases de datos 1 06/03/2007 19:20
curiosidad de FieldbyName Lepe Conexión con bases de datos 18 15/05/2003 19:25


All times are GMT +2. The time now is 06:46.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi