Das Notes Forum
Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: igor1166 am 25.07.03 - 13:11:22
-
mich beschäftigt seit Tagen folgendes Problem:
ich habe in einer Maske ein Feld erstellt.
Leider habe ich erst später gemerkt, dass ich mich bei der Namensvergebenung des Feldes "vertippt" habe.
Nachdem ich den Namen in den Eigenschaften geändert habe,
erscheint mir der "vertippte" Feld-Name trotzdem noch in den Datenbankfeldern.
Wie kann man solch ein Feld aus der Liste der Datenbankfeldern löschen??
Wäre über Hilfe/Script, etc. dankbar.
Gruß
igor1166
-
Gibt es Items in älteren Doks, die mit dem alten Feldnamen erstellt wurden ?
Wenn ja, Agent schreiben und @DeleteField verwenden.
Anschliessend auf der Server-Konsole
Load compact datenbankname -C
Man kann sich von einem Win-Server auch das Programm ncompact.exe besorgen und dann das ganze lokal ausführen.
HTH,
Bernhard
-
Hi,
ist aber auch keine 100% Garantie, dass das Feld dann weg ist.
Ich hatte Fälle da hat auch eine neue Kopie ohne Dokumente und anschließendes compact nichts gebracht.
Einen Versuch ist's wert.
Axel
-
Ich kann hierzu auch nur sehr wenig Erfahrungen - und diese wenigen waren positiv - beitragen.
Ausserdem sind wenige überzählige Felder in der UNK table ja wirklich völlig bedeutungslos - der DB tut es keinen Schaden, der User sieht es nicht, also, was solls ...
Ciao,
Bernhard
-
...wenn das Feld in keinem anderen Dokument mehr verwendet wird, es aus der Maske gelöscht wurde, einfach eine Replic anlegen, die "alte" löschen, so sind die nicht verwendeten Felder weg, meiner Erfahrung nach klappt das 100%ig.
nur durch einen Compact kriegt man das nicht hin.
-
Der "promovierte Bäcker" hat (fast) recht ;-)
Ich habe eben mit einer Mini-DB beide Wege probiert: Kein Dok mehr, das das alte Item enthält, keine Maske, in der dies als Feld vorkommt.
Dann compact -C -> Feld ist weg (ätsch, Doc Torte ;-)
Unter gleichen Bedingungen neue Kopie angelegt - Feld ist auch weg.
Unter gleichen bedingungen neue REPLIK angelegt - Feld ist nicht weg - wie denn auch, ist ja eine REPLIK.
Vulgo: Warum es kompliziert machen und load compact oder ncompact bemühen - eine Kopie tut es auch.
Man müsste aber schauen, was bei grösseren Mengen an Design-Elementen passiert. Wir haben das letztens mit 'ne DB gemacht, die wir versehentlich automatisch mit ein paar hundert Design-Elementen (Items) gefüllt haben. compact - und weg war das Zeug.
HTH,
Bernhard
-
Wenn man einfach nur über die List im Designer prüft, ob das Feld noch vorhanden ist, würde ich vorschlagen, nach dem Compact auf jeden Fall noch den Workspace zu komprimieren (und/oder die Cache.dsk zu löschen). Wer weiß, ob der Designer sich die liste wirklich frisch aus der Datenbank holt.
Ich denke, die Methode mit dem Komprimieren hat immer noch ihre Berechtigung, denn es gibt ja durchaus Szenarien, in denen sich die Replik-ID tunlichst nicht ändern sollte. O.K., dafür gibt es immer noch Antrid, ich weiß, aber trotzdem ...
-
Genau - das hatte ich vergessen. In cache.dsk und desktop.dsk "merkt" sich Notes alle mögliche ... Also: In vielen Fällen "merkwürdigen Verhaltens" Symbol(e) vom Desktopf löschen, Notes beenden, cache.dsk wegknallen, und Notes erneut starten und Symbol(e) erneut hinzufügen.
Ähnliches gilt auch für den Server - da wird soviel gecachet, kein Vergleich mit dem Client ;-) Nach Änderungen in Server-Doks, Gruppen und und und ist häufig ein "dbcache flush" auf der Konsole erforderlich, ggf. sogar mehrfach (manchmal hat der Server eben keine Zeit ;-)
HTH,
Bernhard