Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: RvM am 05.05.03 - 11:32:30

Titel: Textfeld in Leserfeled umwandeln
Beitrag von: RvM am 05.05.03 - 11:32:30
Ich habe nachträglich in eine Maske ein Leserfeld  eingefügt. Nun wollte ich mit einem Agenten in allen vorhandenen Doks dieses feld mit entsprechenden Lesern füllen. Leider hat mir der Agetn aus dem feld keine Leser- sondern nur ein "normales" Textfeld gemacht.
Wie kann ich im Nachhinein aus dem Text- ein Leserfeld machen?
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Obrac am 05.05.03 - 11:36:51
Die Namen müssen auf jeden Fall in einer bestimmten Form in dem Feld stehen. Und zwar so :
@Name([Canonicalize];"Username/Domäne"

Ich würde das Feld nochmal neu anlegen und dann vielleicht im Lotus Script Agenten die @function reinsetzen.
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Jörg P. am 05.05.03 - 11:38:44
Hi,

hast du die Namen mit dem Agenten im kanonischem Format eingetragen, also z.B.:
"CN=Vorname Nachname/O=Organisation"

Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Axel_Janssen am 05.05.03 - 11:43:02
Alle upzudatenden Dokumente in eine Ansicht.

Und dann hinter eine Schaltfläche:
@Command([ToolsRefreshAllDocs])

Das berechnet alle Felder des Dokumentes neu.

Wahlweise könntest Du im Agenten die Methode computeWithForm von NotesDocument ausprobieren. Bin mir da aber nicht 100% sicher.
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Performance am 05.05.03 - 11:56:59
möchtest du mit dem gleichen Feld arbeiten ?
 -> dann  wird der Inhalt in eine variable gespeichert, das Feld gelöscht und neu angelegt mit - Der Wert sollte aber schon vorher in kanonischer Form gespeichert werden

temp = document.ReaderFeldName(0)
Set item = document.GetFirstItem( "ReaderFeldName" )
Call item.Remove

Set item1 = New NotesItem( document, "ReaderFeldName", temp, READERS )
item1.IsSummary = True  

document.save true, false


## und in der Maske den Typ des Feldes ändern sonst wird beim nächsten speichern wieder Text genommen ##

cu
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: ghost am 05.05.03 - 12:08:30
Reicht es denn nicht die IsReaders-Property auf true zu setzen?
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Performance am 05.05.03 - 12:14:25
Reicht es denn nicht die IsReaders-Property auf true zu setzen?

eindeutig nein


cu
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: ghost am 05.05.03 - 12:29:28
Weshalb? Ich dachte, wenn man einen LS-Agenten laufen läßt, der durch alle Dokumente läuft, sich das Textitem holt, dann die IsReaders-Property auf true setzt und dann das Dokument speichert wird daraus ein Readerfeld. Warum kann das so nicht funktionieren?

Viele Grüße
ghost
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: ata am 05.05.03 - 13:35:19
... also ich habe das wie Ghost vorschlägt gemacht, und es reicht aus. Man zieht sich das Item, setzt IsReaders und IsSummary auf True und das Feld ist anschließend definitiv ein Leserfeld das funktioniert...

... wäre dem nicht so, würde einiges in bestehenden Datenbanken bei mir aus dem Ruder laufen, und davon kann keine Rede sein.

ata
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: harkpabst_meliantrop am 05.05.03 - 14:21:55
... also ich habe das wie Ghost vorschlägt gemacht, und es reicht aus. Man zieht sich das Item, setzt IsReaders und IsSummary auf True und das Feld ist anschließend definitiv ein Leserfeld das funktioniert...

Das kann ich eindeutig bestätigen.

Wäre ja auch schlimm, wenn nicht. Was sollte die IsReaders-Eigenschaft auch sonst darstellen?
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: ata am 05.05.03 - 14:26:15
... wichtig ist die IsSummary, da sonst keine Auflösung der Leserfelder statfinden kann...

ata
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: ghost am 05.05.03 - 14:37:04
Ja, das ist bei Leserfeldern absolut wichtig. Es gibt einen Bug, dass bei vielen Leserfeldern ohne gesetzem Summary-flag der Server abkachelt. Ist auch so in der KB dokumentiert.
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Performance am 05.05.03 - 14:51:42
ok, ok mag ja stimmen, weil ich mit der vorgeschlagenen Vorgehensweise -- im backend eine Textfeld in ein Readerfeld umwandeln -- bei einem Projekt(na gut es war noch die 4er Version) massiv Probleme hatte, bin ich den sicheren Weg gegangen -- Wert holen, Item löschen, Item vom Typ Reader erzeugen, Wert einsetzen --

Tja, und was sich einmal bewährt hat das nehme ich immer wieder  ;D ;D ;D


cu
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Till_21 am 05.05.03 - 15:44:04
Die Namen müssen auf jeden Fall in einer bestimmten Form in dem Feld stehen. Und zwar so :
@Name([Canonicalize];"Username/Domäne"

Ich würde das Feld nochmal neu anlegen und dann vielleicht im Lotus Script Agenten die @function reinsetzen.

geruecht !!!
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: cpo am 06.05.03 - 09:40:33
Nix "Gerücht", pure Wahrheit!
Leser- und Autorennamenfelder verweigern ihren Job, wenn da nicht der komplette Name drinsteht. Als CN="Willi Wichtig"/O=" usw..
CPO
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Performance am 06.05.03 - 09:50:51
@cpo

stimmt die Lese-/Autorenfelder müssen in kanonischer Form gespeichert werden - sonst klappt's nicht. In der 4er Version reichte die abbreviated form.


cu
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: Till_21 am 06.05.03 - 14:08:44
arbeite auf R5er Servern - hier kann der Name in jeder Form aufgeloest werden !!!!!!!
Da ich nur Entwickler bin : vielleicht ist das eine administrative Einstellung des Servers...

Gruss
Titel: Re:Textfeld in Leserfeled umwandeln
Beitrag von: ata am 06.05.03 - 21:59:19
... wenn die Namen anders eingegeben werden kann es zu Problemen kommen. Der sicherste Weg ist der beschriebene...

ata