Autor Thema: JAVA-API => zugriff auf doppelte Items?  (Gelesen 2922 mal)

Offline Fraiser

  • Frischling
  • *
  • Beiträge: 8
JAVA-API => zugriff auf doppelte Items?
« am: 12.11.07 - 16:23:19 »
Hallo erstmal :)

Bin neu im Forum und werd ich sicherlich ab jetzt oft mit Fragen nerven.
Arbeite derzeit an einem Projekt wo ich per Java-Api auf Notes zugreife.

Hier nun meine erste Frage:

Ich habe ein Notes Document und entsprechende Items.
Per appendItemValue() kann man Items hinzufügen.

Zitat
If an item of the same name already exists in a document, appendItemValue creates a second item of the same name

Das heißt es gibt Items mit dem selben Namen mehrfach.

Wie ist die Lotus Notes Sicht auf diesen Sachverhalt? Wozu ist dies nützlich?

Wenn ich nun mit der API ein Item überschreiben will, wie kann ich unterscheiden welches er nehmen soll?

Danke für eure Hilfe

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: JAVA-API => zugriff auf doppelte Items?
« Antwort #1 am: 12.11.07 - 16:48:10 »
Nützlich ist das nur unter absolut trickreichen Umständen.

Aus der DesignerHelp:
Zitat
If multiple items in a document have the same name, programmatic access is limited to the first item. The remaining items yield invalid data. A work-around is to get the first item, process it, remove it, again get the first item (which was the second item), and so on until you process and remove all the items of a particular name. If you do not save the document, the items are not actually removed. However, the recommendation is that you avoid creating multiple items with the same name.

HTH,
Bernhard

PS: Willkommen bei AtNotes!

Offline Fraiser

  • Frischling
  • *
  • Beiträge: 8
Re: JAVA-API => zugriff auf doppelte Items?
« Antwort #2 am: 12.11.07 - 17:10:03 »
Welches Item liefert  getItemValueString( "xxx")?
Immer dass zuletzt erstellte?

Nur mal so zum, Beispiel:
Ich hab im Lotus Notes eine Mail erstellt.
Nun appende ich per Java API ein Item EnterSendTo. (welche ja schon existiert)

Meine Notes-Mail hat nun 2x das Item EnterSendTo.

Lotus Notes zeigt mir weiter die alten Empfänger an, nicht aber den neuen.
Aber bei Zugriff auf die Java API bekomm ich nur das neue Item.

Find ich sehr unkonsequent...

Heißt für mich, das die API eine andere Sicht auf die Documente hat wie Lotus Notes selber.

Offline koehlerbv

  • Moderatoren
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re: JAVA-API => zugriff auf doppelte Items?
« Antwort #3 am: 12.11.07 - 17:28:07 »
Nein, die API ist das, was Notes intern auch selber macht. Und im geposteten Zitat steht "limited to the first item" (im Sinne: was er zuerst findet).
Warum verwendest Du denn überhaupt AppendItemValue?? Du stellst Dir da doch selber ein Bein.

Bernhard

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Re: JAVA-API => zugriff auf doppelte Items?
« Antwort #4 am: 12.11.07 - 19:03:18 »
Nimm document.replaceItemValue(java.util.Vector).
Das in einem Datensatz (Dokument) 2 Items den gleichen Namen haben können ist richtig beobachtet.
Ich äußer mich jetzt dazu nicht.
Die Sicht der Api stimmt schon mit Lotus Notes überein. Ein Datensatz (Dokument) kann einfach 2 Items mit gleichen Namen haben.

UND WICHTIG: Wenn du dich mit Notes selbst nicht so gut auskennst, kannst du sehr leicht memory leaks verursachen, sobald du von draussen auf Notes zugreifst. NIMM BESSER DAS: http://domingo.sourceforge.net/
Da werden zwar nicht alle Features der Notes Api unterstützt, da du aber vermutlich eh nix notes-fancy machst, erspart dir das vermutlich eine Menge Ärger.

Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz