![]() |
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! |
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: Saludos |
Prueba con esto:
|
| La franja horaria es GMT +2. Ahora son las 05:35:59. |
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