Domino 9 und frühere Versionen > ND8: Entwicklung

String rückgabewert

<< < (3/4) > >>

iukhdh:
Das ist natürlich auch möglich und ja wohl die einzige Lösung.

Was mir halt nicht klar ist, vielleicht steh ich ja aufm Schlauch:

Mit @setfield(Textfeld;"") setze ich ein Textfeld auf Nix, oder? Also kein Leerzeichen, sondern einfach ... nix, kein anderer Stringwert. Oder ist "" auch ein Stringwert?

Warum geht das mit einem Zahlenfeld nicht, wenn ich da keinen Zahlenwert drin haben möchte?

Wenn ich @Setfield(Zahlenfeld;"") eingebe, dann wird aus dem Zahlenfeldinhalt ja ein String.

Mich täts jetzt einfach mal interessieren, wie die Profis hier im Forum ein Zahlenfeld, in dem z.B. ein falscher Wert drin steht, wieder auf nix zurückstellen, und nicht auf 0.

koehlerbv:
"" ist natürlich auch ein String und als solcher im Speicher gekennzeichnet (mit Länge = 0).

Und ein zahlenfeld ist nur dann ein Zahlenfeld, wenn darin auch eine Zahl steht. Dass es Notes zulässt, dass man im Backend den Datentyp wieder ändern kann als auch bei nicht vorhandenem Item einen Leerstring zurückgibt, steht auf einem ganz anderen Blatt und hat mit dieser Fragestellung überhaupt nichts zu tun (ausser, dass es verwirren kann).

Bernhard

Thomas Schulte:
Es gibt eine Variante mit der man, zugegebenermaßen unsicher, aber möglich dieses Dilemma umgehen könnte.

1. Man kann ein Feld mit @isavailable auf vorhandensein prüfen.
und
2. Ein Feld muss ja im Gegensatz zu Relationalen Sprachen NICHT zwingend vorhanden sein.
außerdem kann man
3. mit @deleteField ein Feld auch löschen

Allerdings erfordert diese Kombination ein hohes Maß an Disziplin beim Entwickeln der Anwendung. Eine Routine die das Feld einfach nicht löscht oder sich selst überlässt darf es da nicht geben.

iukhdh:
Na das ist ja nun eine Auskunft mit der ich was anfangen kann  ;)

@deletfield hört sich doch mal gut an, wenn ich die Hilfe dazu anschaue, dann scheint das ja genau das zu sein was ich brauche (i.V. mit @isavailable)

Danke für die Geduld mit mir und meinen Fragen

koehlerbv:
Davon kann ich aus den bereits hier im Thread genannten Gründen nur abraten: Es ist unsauber und unsicher.
Und ob Du Dich an diesen Stunt bei einer anstehenden Erweiterung in einem Jahr noch erinnerst? Von einem Kollegen, der da weiter machen soll, mal ganz angesehen.

Bernhard

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln