Autor Thema: Agent zum Aufräumen alter Variablen  (Gelesen 2846 mal)

Offline two7

  • Aktives Mitglied
  • ***
  • Beiträge: 116
Agent zum Aufräumen alter Variablen
« am: 15.05.06 - 23:36:50 »
Hallo,

habe mich dem Thema Entwicklung mit Lotus angenommen. Bin allerdings noch am Anfang.

Nun ist mir aufgefallen, dass wenn ich in einer Maske Felder anlege und später diese umbennene, dass noch die alten Feldnamen vorhanden sind.

Ein Kollege in der Firma hat mir erzählt, dass man diese durch einen Agenten löschen lassen kann, allerdings hab ich keinen Plan wie ich dies realisieren kann.

Würd mich über eine Hilfe von den Forumusern hier erfreuen.

Danke. two7

Offline Untitled

  • Senior Mitglied
  • ****
  • Beiträge: 364
    • Musiker24.ch - Musiker und Bands finden
Re: Agent zum Aufräumen alter Variablen
« Antwort #1 am: 16.05.06 - 08:44:10 »
Hallo two7 und willkommen im Forum

Das geht ganz einfach mit einem Formelagenten. Den lässt du über alle Dokumente in der aktuellen View laufen (am Besten die View "AllDocuments" o.ä., damit du alle erwischst).

Die Formel lautet dann:
Code
FIELD zuloeschendesfeld := @DeleteField

Damit wird in jedem Dokument der View, das betreffende Feld gelöscht.

Grüsse
Moritz

Offline Lossa

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.404
  • Geschlecht: Männlich
    • alphaTrain
Re: Agent zum Aufräumen alter Variablen
« Antwort #2 am: 16.05.06 - 09:04:32 »
hi,

wichtig ist aber das die Datenbank mittels compact -c komprimiert werden muss, sonst verschwinden die Felder nicht. Auch wenn Sie in keiner Maske, Ansicht u. Dokument mehr vorhanden sind.
Viele Grüße

Ulrich Lossa
Aktiv als Notes Admin und Entwickler seit Version 1.
Freier Trainer und Berater.
Zertifiziert für alle Versionen SA und DB.
HCL Certified Administrator
IBM Certified Advanced Application Developer (PCLP AD)
IBM Certified Advanced System Administrator (PCLP SA)
IBM Certified Instructor for System Administration and Application Development ( CLI)
IBM Certified Instructor for Websphere Software
IBM Certified Instructor for DB2
http://www.alphatrain.de
Lossa@alphatrain.de

Offline Untitled

  • Senior Mitglied
  • ****
  • Beiträge: 364
    • Musiker24.ch - Musiker und Bands finden
Re: Agent zum Aufräumen alter Variablen
« Antwort #3 am: 16.05.06 - 09:07:05 »
Hi,

Was heisst "verschwinden nicht"? Also der Speicherplatz wird nicht freigegeben... oder?

Offline umi

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.062
  • Geschlecht: Männlich
  • one notes to rule'em all, one notes to find'em....
    • Belsoft AG
Re: Agent zum Aufräumen alter Variablen
« Antwort #4 am: 16.05.06 - 09:11:45 »
Der Speicherplatz wird schon freigegeben, aber in der Referenz Spalte aller Felder (z.B. in einer Ansicht) sind die Felder dann immer noch sichtbar wenn du compact -c nicht machst
Gruss

Urs

<:~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Jegliche Schreibfehler sind unpeabischigt
http://www.belsoft.ch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~:>

Offline two7

  • Aktives Mitglied
  • ***
  • Beiträge: 116
Re: Agent zum Aufräumen alter Variablen
« Antwort #5 am: 16.05.06 - 10:36:11 »
vielen dank für die hilfe. werd das dann mal gleich ausprobieren.

schönen tag noch.

two7

Offline LohCon

  • Junior Mitglied
  • **
  • Beiträge: 76
  • Geschlecht: Männlich
  • 42 ...
Re: Agent zum Aufräumen alter Variablen
« Antwort #6 am: 15.08.06 - 18:00:41 »
dieses Thema würde ich gerne noch einmal kurz aufgreifen:

Alte Feldnamen bekämpfe ich auf die gleiche Weise, wie hier beschrieben.
Also Löschagent schreiben, über alle Dokumente laufen lassen und die Datenbank komprimieren mit der -c Option.

Trotzdem sind die Feldnamen noch z. B. in der Referenz für Datenbankfelder sichtbar.

Mir ist aufgefallen, dass die alten Feldnamen in den Eigenschaften des Gestaltungsdokumentes auftauchen, teilweise mit ein oder zwei Dollarzeichen davor. Das hängt wohl damit zusammen, das die Feldnamen in einem Scriptagenten in der Maske verwendet wurden oder ein Code in den Feldevents vorhanden war.

Da hilft nur noch: Neue Maske erstellen, Inhalt kopieren alte Maske löschen.
Danach verschwinden auch die Feldnamen endgültig aus der Datenbank.

Oder gibt es da noch einen Kniff???

LG, - Jörg

Offline ata

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 5.092
  • Geschlecht: Männlich
  • drenaiondrufflos
    • Anton Tauscher Privat
Re: Agent zum Aufräumen alter Variablen
« Antwort #7 am: 22.08.06 - 13:03:36 »
... zum grundsätzlichen Verständnis:

Es gibt einen Unterschied zwischen Feldern auf Masken und Feldern in Dokumenten.

Wird ein Feld aus einem Dokument gelöscht, dann hat das Dokument kein Feld mehr. Öffnest du es mit einer Maske, die dieses Feld hat, dann kann das Dokument natürlich wieder das Feld haben.

Beim compact wird das Feld erst dann aus der Referenz genommen, wenn kein Dokument und keine Maske mehr ein Feld mit diesem Namen haben...

Toni
Grüßle Toni :)

Offline LohCon

  • Junior Mitglied
  • **
  • Beiträge: 76
  • Geschlecht: Männlich
  • 42 ...
Re: Agent zum Aufräumen alter Variablen
« Antwort #8 am: 23.08.06 - 17:21:47 »
Hallo Toni,

mein Posting zielte in eine etwas andere Richtung, ich versuche es mal anders ...

Wenn ich ein Feld aus einer MASKE lösche, und dann im Designer die Eigenschaften des Gestaltungsdokumentes öffne, wird das Feld noch aufgeführt. Teilweise doppelt und dreifach mit einem oder zwei $ - zeichen davor.
Ich habe mal einen Screenshot angehängt, der das verdeutlicht.
Die Felder al01_01 ff. gibt es in der Maske nicht mehr...

Hast Du eine Idee, woran das liegt?

Gruss, - Jörg

Offline Lossa

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.404
  • Geschlecht: Männlich
    • alphaTrain
Re: Agent zum Aufräumen alter Variablen
« Antwort #9 am: 23.08.06 - 19:24:07 »
Hi,

wenn du in dem Feld in einen LS Script Event z.B. Entering etwas Programmiert hasst, dann wird das $$DeinFeldName angelegt, dort steht quasi der ScriptCode drin. Wenn du nun "einfach" das Feld löschst wird nicht der ScriptCode gelöscht sondern eben nur das Feld. Der Code alleine macht dann zwar nichts mehr, aber er ist in der Maske drin.

Also erst den Code löschen, den kompletten Event Inhalt markieren incl. Sub und end und dann löschen, speichern, dann erst das Feld löschen. Danach hast du keine $$DeinFeldName Felder mehr.

Viele Grüße

Ulrich Lossa
Aktiv als Notes Admin und Entwickler seit Version 1.
Freier Trainer und Berater.
Zertifiziert für alle Versionen SA und DB.
HCL Certified Administrator
IBM Certified Advanced Application Developer (PCLP AD)
IBM Certified Advanced System Administrator (PCLP SA)
IBM Certified Instructor for System Administration and Application Development ( CLI)
IBM Certified Instructor for Websphere Software
IBM Certified Instructor for DB2
http://www.alphatrain.de
Lossa@alphatrain.de

Offline LohCon

  • Junior Mitglied
  • **
  • Beiträge: 76
  • Geschlecht: Männlich
  • 42 ...
Re: Agent zum Aufräumen alter Variablen
« Antwort #10 am: 28.08.06 - 18:07:59 »
Das war's, danke Ulrich-Thomas ...

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz