Domino 9 und frühere Versionen > Entwicklung
Felder löschen
Rob Green:
Felix,
das "Löschen" leerer Felder ist in jeder Hinsicht irgendwie ein falscher Ansatz. Ich weiß nicht, aus welcher DB technischen Ecke dieser Gedanke kommt (Du denkst hierbei sicherlich an leere Datenfelder zB in einer Oracle Db die natürlich Platz verbrauchen oder ganz simpel in Access, oder?).
Aber: Notes benötigt für nicht besetzte Datenfelder 0 Byte. Daher spielt das Lschen keine Rolle in diesem Bezug, wenn es um irgendwelche vermeintlichen Vorteile geht.
Wenn Du nun meinst, daß dem nicht so ist, weil Du im Lesemodus über Dokumenteneigenschaften die Felder dennoch einsehen kannst (wenn auch leer), dann täuscht Du Dich, da hierbei Notes lediglich die zugrundeliegende Form Just in Time zieht und dem User anzeigt. Feld für Feld, unabhängig ob gesetzt oder nicht. So zB Felder mit der Eigenschafte Displayed for View werden im Frontend zur Laufzeut gezogenund berechnet. Aber, datentechnisch verbrauchen sie nix.
Axel:
Hi,
versuch's doch mal mit der Scriptlösung im QuerySave-Event:
Dim doc As NotesDocument
Set doc = source.Document
If doc.Feld1(0) = "bestimmter Wert" Then
Call doc.RemoveItem("Feld2")
Call doc.RemoveItem("Feld3")
Call doc.RemoveItem("Feld4")
Call doc.RemoveItem("Feld5")
End If
Das sollte aber jetzt funktionieren.
Axel
Rob Green:
Alex, sind diese anderen Felder berechnet und abhängig von Feld 1 oder wie ist das ?
Axel:
@Rob
Es wird, beim Speichern der Wert des Feldes Feld1 geprüft. Ist er, wie im Beispiel "bestimmter Wert", so werden die Felder Feld2, Feld3, Feld4 und Feld5 aus dem Dokument entfernt.
Das ist was Felix haben wollte. Allerdings in Script, da ja die Formellösung nach seinen Angaben nicht funktioniert hat. Warum auch immer, das kann ich im Moment nicht nachvollziehen.
--- Zitat ---Formellösung:
beim speichern des Doks soll geprüft werden ob Feld1 einen
bestimmten Wert enthält falls ja sollen die Felder 2 bis 5
gelöscht werden ansonsten nichts tun.
--- Ende Zitat ---
Felix:
Andere Formulierung,
der User hat die möglichkeit über die Dialogliste einen
Wert auszuwählen.
Leider geht der User von hinten nach vorne vor und wählt
somit Werte in die Felder die auch im Feld übernommen werden.
Bei Auswahl des Feld1 werden die anderen Felder
ausgeblendet aber die Werte bleiben stehen.
So, ich möchte bei Auswahl von Feld1 bei bestimmtem Wert die
anderen Felder löschen da diese nicht leer sind.
Leider funzt bis jetzt keine Lösung.
Felix
Navigation
[0] Themen-Index
[#] Nächste Seite
[*] Vorherige Sete
Zur normalen Ansicht wechseln