Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Wenn Datenbankfeld = leer dann Variable auch leer


Babbelgei - Mi 30.03.22 18:35
Titel: Wenn Datenbankfeld = leer dann Variable auch leer
Hallo zusammen,

ich bin keine wirkliche Programmiererin auch wenn ich Assistentin für Wirtschaftsinformatik mal gelernt habe, kann eigentlich nur alte Sprachen und VBA.
Ich muss aber nun einen Report in einer ERP-Software so gestalten, dass eine Variable leer bleibt, wenn ein Datenbankfeld leer oder ungefüllt ist.

z.B. Variable4

Delphi-Quelltext
1:
2:
3:
4:
5:
begin
  if Lines['Geburtsdatum  ( EY1_DATA_133 )'] <> '' then
    Value := Master['Geburtsdatum  ( EY1_DATA_133 )']+':' else
    Value := '';
end;

in "Lines" ist der Wert des Feldes, in Master die Bezeichnung des Feldes.... zumindest so wie ich es verstehe und die Bezeichnung soll nicht erscheinen, wenn das Datenbankfeld leer ist...

Ich habe es auch schon andersherum getestet wie z.B.

Delphi-Quelltext
1:
2:
if Lines['Geburtsdatum  ( EY1_DATA_133 )'] = '' then
  Value := '';

ich brauch nur einen kleinen Tipp....dann gehts bestimmt

Statt '' habe ich auch schon Null und nil probiert.

Moderiert von user profile iconTh69: Delphi-Tags hinzugefügt


Andreas_500 - Do 31.03.22 09:25

Hallo Babbelgei,
ich tippe auf eine Verwechslung von " mit '':
Versuch es mal anstelle von " (Anführungszeichen) mit ZWEI Hochkommas ''.

Grüße, Andreas


Babbelgei - Do 31.03.22 09:46

Hi

Nein es sind zwei Hochkommatas die ich verwendet habe…


Gausi - Do 31.03.22 10:29

Ist der String wirklich komplett leer, oder sind ggf. Leerzeichen o.ä. drin? Falls das der Fall ist, könnte ein Trim helfen, also


Delphi-Quelltext
1:
if trim(Lines['Geburtsdatum ( EY1_DATA_133 )']) <> '' then                    


Damit werden aus dem String Leerzeichen, Tabs und einiges anderes entfernt.


Babbelgei - Mi 18.01.23 16:51

Vielen Dank!

Es hat funktioniert!