DBMemo Text durchstreichen

Alles zum Thema Zeugnisse und Zeugnisdruck

Moderatoren: Raffenberg, A. Schüller, Pfotenhauer

anna.linnhoff
Beiträge: 6
Registriert: Donnerstag 9. Dezember 2021, 15:25
Schulform: Berufskolleg

DBMemo Text durchstreichen

Beitrag von anna.linnhoff »

Hallo zusammen,
wie kann ich bei einem DB Memo den Text durchstreichen, wenn in einem anderen Feld ein bestimmter Wert steht? Also, wie kann ich das unter den Berechnungen programmieren? Hat jemand eine Lösung dafür?

Viele Grüße
Anna Linnhoff
Benutzeravatar
Gerhards
Fachberater*in
Beiträge: 308
Registriert: Montag 1. Oktober 2018, 16:19
Schulform: Gesamtschule

Re: DBMemo Text durchstreichen

Beitrag von Gerhards »

Hallo,
wenn Sie den Report anhängen und die Stelle benennen, kann man sich das genauer ansehen.
Viele Grüße

Hans-Gerd Gerhards
Städtische Gesamtschule Stolberg
D.Jakel
Beiträge: 998
Registriert: Sonntag 2. Dezember 2018, 18:13
Schulform: Gymnasium

Re: DBMemo Text durchstreichen

Beitrag von D.Jakel »

Guten Tag, es gab da doch die Eigenschaft "strikeout":
viewtopic.php?f=16&t=4075&p=23673&hilit ... out#p23673
Hatte das nicht geklappt? Statt LAbelXY steht da dann wohl "memo1"
Zuletzt geändert von D.Jakel am Mittwoch 1. Juni 2022, 18:01, insgesamt 1-mal geändert.
mfG, D.Jakel
anna.linnhoff
Beiträge: 6
Registriert: Donnerstag 9. Dezember 2021, 15:25
Schulform: Berufskolleg

Re: DBMemo Text durchstreichen

Beitrag von anna.linnhoff »

Hallo Herr Gerhards,
vielen Dank für die schnelle Antwort.
Ich möchte in der Zeile, in der der Report jetzt "blabla + Zeugnisbezeichnung" berechnen würde, gerne die Zeugnisbezeichnung durchgestrichen haben. Oder muss ich das gar nicht im DB Memo selbst programmieren, sondern in den Details?
Screenshot der Stelle und Report sind angehangen.

Viele Grüße
Anna Linnhoff
EQJ-2016- BS(Anl A1.7).rtm
(78.74 KiB) 27-mal heruntergeladen
Programmierung DBMemo.PNG
Programmierung DBMemo.PNG (66.06 KiB) 663 mal betrachtet
D.Jakel
Beiträge: 998
Registriert: Sonntag 2. Dezember 2018, 18:13
Schulform: Gymnasium

Re: DBMemo Text durchstreichen

Beitrag von D.Jakel »

:shock: Ich sehe soeben an Ihrem Beispiel, dass das sogar noch spezifisch für Teile des Textes sein soll, oh je, da bin ich raus. Ich könnte mir aber vorstellen, dass man dann zwei Felder braucht, die formatiert werden und je nach Bedingung noch zusätzlich eingeblendet werden.
mfG, D.Jakel
Benutzeravatar
Gerhards
Fachberater*in
Beiträge: 308
Registriert: Montag 1. Oktober 2018, 16:19
Schulform: Gesamtschule

Re: DBMemo Text durchstreichen

Beitrag von Gerhards »

Hallo,
in der Tat sehe ich das genauso wie Herr Jakel: Da müssten vermutlich im Report zwei Felder definiert werden.
Viele Grüße

Hans-Gerd Gerhards
Städtische Gesamtschule Stolberg
anna.linnhoff
Beiträge: 6
Registriert: Donnerstag 9. Dezember 2021, 15:25
Schulform: Berufskolleg

Re: DBMemo Text durchstreichen

Beitrag von anna.linnhoff »

Hallo,
eigentlich nicht. Wenn ich das mit einem DBText mache, ist es ganz einfach:
DBText8.Font.StrikeOut:=BKAbschlussFaecher_BUE['NoteAbschlussBA']= 'NE'
in den Details programmiert und es funktioniert wunderbar. Das liegt an diesem verflixten DBMemo. Da geht das irgendwie nicht.
Bzw. ich weiß nicht an welcher Stelle ich das Font.StrikeOut einfügen soll.
D.Jakel
Beiträge: 998
Registriert: Sonntag 2. Dezember 2018, 18:13
Schulform: Gymnasium

Re: DBMemo Text durchstreichen

Beitrag von D.Jakel »

Ich würde anstelle von DBtext8. eben DBMemo4. einsetzen. Allerdings würde ich erwarten, dass dann der komplette Text gestrichen wird. Es kann aber auch sein, dass Memo-Felder diese Eigenschaft nicht haben. Das weiß vielleicht Herr Sprung.
Muss es denn ein Memo-Feld sein?
mfG, D.Jakel
Benutzeravatar
Gerhards
Fachberater*in
Beiträge: 308
Registriert: Montag 1. Oktober 2018, 16:19
Schulform: Gesamtschule

Re: DBMemo Text durchstreichen

Beitrag von Gerhards »

Hallo,
ich habe hier keine entsprechenden Testdaten und kann das daher nicht vernünftig testen, aber evtl. funktioniert so etwas in der Art:

Code: Alles auswählen

procedure DBMemo4OnGetMemo (Line: TStrings);
begin
   DBMemo4.Lines.Text:=BKBerufsuebergreifend['Zeugnisbezeichnung']; 
    if BKBerufsuebergreifend['Notenkrz'] = 'NE' then DBMemo4.Lines.Text:=BKBerufsuebergreifend['Zeugnisbezeichnung'];
    if BKBerufsuebergreifend['Notenkrz'] <> 'NE' then DBMemo4.Font.StrikeOut:=BKBerufsuebergreifend['Zeugnisbezeichnung'];
end;
Da ich nicht am BK bin, kann ich die Logik nicht nachvollziehen, daher muss man daran sicher noch feilen, aber m. E. gibt es die Eigenschaften, wenn ich mir das links im Container unten ansehe (unter Text > Font > Style > fsStrikeOut). Die Syntax scheint jedenfalls ok zu sein.
Viele Grüße

Hans-Gerd Gerhards
Städtische Gesamtschule Stolberg
A. Schüller
Beiträge: 943
Registriert: Mittwoch 10. Februar 2021, 21:30
Schulform: Gymnasium

Re: DBMemo Text durchstreichen

Beitrag von A. Schüller »

Klappt das vielleicht:

DBMemo4.Font.StrikeOut:=true; ?

Nach dem Befehl mit DBMemo4.Lines.Text:='blabla....
Mit freundlichen Grüßen
Anne Schüller
Antworten