Lazreport tfrcheckboxObject

Für Fehler in Lazarus, um diese von anderen verifizieren zu lassen.
Antworten
arturx
Beiträge: 140
Registriert: Fr 21. Nov 2008, 11:29
OS, Lazarus, FPC: Winux (L 1.0.6.xy FPC 2.6.z)
CPU-Target: 32/64Bit

Lazreport tfrcheckboxObject

Beitrag von arturx »

1.auf dem Formular: frReport,frCheckboxObject,frdbdataset,frpreview , dbf {table mit boolean Feld "checkboole"} , datasource
2.Reportdesigner : Band=Masterdaten, checkboxobject
     Nach Doppelclick auf auf das Checkboxobject wurde eingetragen : [Dbf1."CHECKBOOLE"]
3.Beim Aufruf von frreport1.showreport reagiert das Checkboxobject des Reports nicht auf das Datenbankfeld.
(ein zur Kontrolle eingefügtes roundrect-object zeigt brav true bzw false an, je nach Datenlage)

----> Wie kann man das Checkboxobject zur Reaktion bringen <----

starkard
Beiträge: 87
Registriert: Mi 31. Okt 2007, 10:44

Re: Lazreport tfrcheckboxObject

Beitrag von starkard »

Hallo arturx,
mit frCheckboxObject hab ich noch keine erfahrung. Vielleicht hilft folgendes. Rechteckobject einfügen, Texeditor öffnen, unter Memo [[Dbf1."CHECKBOOLE"]=1] eintragen (evtl. Scipt aktivieren), unter Format noch "Wahrheitswerte" einstellen.

arturx
Beiträge: 140
Registriert: Fr 21. Nov 2008, 11:29
OS, Lazarus, FPC: Winux (L 1.0.6.xy FPC 2.6.z)
CPU-Target: 32/64Bit

Re: Lazreport tfrcheckboxObject

Beitrag von arturx »

starkard hat geschrieben: [[Dbf1."CHECKBOOLE"]=1] eintragen (evtl. Scipt aktivieren), unter Format noch "Wahrheitswerte" einstellen.

Danke für die Anregung !
Ich habs ausprobiert, aber leider gabs keine Reaktion im Report.
-1.Script wurde beim Abspeichern automatisch abgeschaltet
(eigentlich klar, da ich kein Script eingetragen hatte)
-2.Vielleicht ist die Anregung zielführend, aber ich sehe bis jetzt noch nicht wie..-
-3.Wenn man einen Ausdruck (s.o:) einträgt, muss report.storeindfm=false sein,
da sonst ein eListerror ausgelöst wird beim streamen der Form

Hat denn noch niemand ein frCheckobxobject ausprobiert und ans Laufen gebracht ?

starkard
Beiträge: 87
Registriert: Mi 31. Okt 2007, 10:44

Re: Lazreport tfrcheckboxObject

Beitrag von starkard »

Ich möchte ungerne den Thread mit meinem Unwissen zuspamen, aber ich habe noch einmal nachgeschaut.
Kann es sein, dass in DBFs boolische Werte als "true" und "false" gespeichert werden (nicht 0,1)? Falls ja müsste die Abfrage daraufhin geändert werden.
[[Dbf1."CHECKBOOLE"]="True"]
Habe damals einfach einen benutzerdef. wahrheitswert genommen (□;■) und so eine checkbox simuliert.

arturx
Beiträge: 140
Registriert: Fr 21. Nov 2008, 11:29
OS, Lazarus, FPC: Winux (L 1.0.6.xy FPC 2.6.z)
CPU-Target: 32/64Bit

Re: Lazreport tfrcheckboxObject

Beitrag von arturx »

Mittlerweile weiß ich die Lösung :

Code: Alles auswählen

procedure frReport1EnterRect(Memo: TStringList; View: TfrView);
begin
If view is TfrCheckBoxView  then
   begin with (view as TfrCheckBoxView) do.....//<---- Über diese Typecasting kann man alles abfragen oder zuweisen
         .....
    end;   
end;
Es ist wie fast immer in Lazarus : wenn man es erstmal weiß, ist es ganz einfach....

der Vollständigkeit halber noch die Frage an Starkard :
starkard hat geschrieben:Kann es sein, dass in DBFs boolische Werte als "true" und "false" gespeichert werden (nicht 0,1)? ....
[[Dbf1."CHECKBOOLE"]="True"]
Habe damals einfach einen benutzerdef. wahrheitswert genommen (□;■) und so eine checkbox simuliert.

?? Wie/wo definierst Du einen boolenschen Wahrheitswert ?


Zum Schluss nocheinmal Danke an alle, die sich an der Diskussion beteiligt haben !

Antworten