Das Notes Forum

Domino 9 und frühere Versionen => ND7: Entwicklung => Thema gestartet von: masseur81 am 24.11.06 - 12:26:25

Titel: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 24.11.06 - 12:26:25
Ich möchte folgendes realisieren:

Es sollen Dokumente mit Personenprofilen erstellt werden, incl. Passfoto. Dazu soll eine Ansicht erstellt werden, die diese Passfotos in der ersten Spalte anzeigt.

Ich bekomme folgendes hin:
1. Importieren von Bildern per LotusScript als Attachment eines Rich Text Feldes im Dokument
2. Anzeigen von Bildern, die in den Shared Resources untergebracht sind.

Mir fehlt nun die Verknüpfung, also

1. Importieren von Bildern als Shared Resource zur "Laufzeit", nicht im Domino Designer ODER
2. Zugriff auf Dokumenten-Attachments in einer View.

Ist sowas möglich und wenn ja, wie?
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: m3 am 24.11.06 - 12:53:05
1) Ja, DXL
2) Nein (Falls Du eine Notes-View meinst)
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 24.11.06 - 13:10:35
DXL: Hab ich es richtig verstanden: Ich müsste dann nach der Auswahl der Bilddatei einen XML-String generieren, die ich dann per DXLImporter einlese? Klingt recht umständlich.  :-:
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: umi am 24.11.06 - 16:10:10
ist es auch :-)

Ist gar nicht so wild. Musst nur darauf achten, das der Agent / bzw. der Ausführende des Skripts mind. Designer Rechte benötigt, damit er die Image Resourcen erstellen darf.

Was machst Du wenn ein Benutzer das Attachment wieder löscht? soll es dann auch aus den Resourcen gelöscht werden?

Wie sieht es mit Namenskonflikten aus?

Da gibts noch einiges zu bedenken, bevor man überhaupt an DXL kommt :-)=
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 24.11.06 - 16:35:56
Diese Fragen sind schon lange abgeklärt, mir fehlt nur diese eine Funktionalität. Das mit den Designerrechten ist natürlich wichtig, und ich werd mir da nochmal Gedanken machen müssen.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: m3 am 24.11.06 - 16:39:05
Jake Howlett hat einen sehr guten "Rough Cut" zum Thema "Managing Domino File Resources Using WebDAV" online. Ev. hilft Dir der auch weiter.
http://www.codestore.net/store.nsf/unid/FISR-6U8SN7
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 08:17:02
Danke schonmal für den DXL-Tip. Eine Frage ist da noch.

Code
	' dxl_in ist ein String im XML-Syntax, der nur ein Bild enthält.
	Set importer = session.CreateDXLImporter(dxl_in, session.CurrentDatabase)
	importer.DesignImportOption=DXLIMPORTOPTION_REPLACE_ELSE_CREATE
	importer.DocumentImportOption=DXLIMPORTOPTION_REPLACE_ELSE_CREATE
	importer.InputValidationOption=0
	importer.Process

Diesen Code verwende ich zum DXL-Import. Beim ersten Aufruf klappt das, aber wenn das Element schon existiert, bekomm ich die Fehlermeldung "DXL importer operation failed". Woran kann es liegen? Die Imageresource hat einen eindeutigen Namen, sodass ein bereits importiertes Element überschrieben werden soll.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 08:36:03
Hab's selbst entdeckt, es lag an der fehlenden Zeile

Code
<!DOCTYPE database SYSTEM 'xmlschemas/domino_7_0_1.dtd'>

(fehlte, weil ich das Bild aus einem Richtext-Feld eines Dokumentes in die Shared Resources kopieren wollte und daher ein anderer DOCTYPE generiert wurde)
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Glombi am 28.11.06 - 09:01:12
Das Problem, ein Bild (zunächst als Attachment im Dokument gespeichert) in der View anzuzeigen habe ich in einem Projekt wie folgt gelöst:
- Umwandeln in eine definierte Größe (mittels Image Magick und API Schnittstelle)
- Import in ein Rich Text Feld
- Setzen der Eigenschaft "IsSummary" für das Rich Text Feld.

Wenn Rich Text Felder diese Eigenschaft haben, kann der Inhalt in einer Ansichtsspalte angezeigt werden.

Andreas
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 10:00:52
Hallo,

danke für diesen Tipp. Das sind mal wieder so versteckte Eigenschaften im Notes, die meiner Meinung nach schwer zu finden sind.

Image Magick werd ich mir ansehen, hab aber zur Not eigenen Quelltext.

Ein Problem hab ich bei der Sache: Die Ansicht funktioniert nicht immer, und auch nicht bei jedem Bild. Schau mal unter http://www.keysolutions.com/notesfaq/howcustom.html, da steht, man soll das Bild als Shared Resource importieren, also wieder das, was ich nicht unbedingt möchte.

Hat es bei dir so funktioniert, wie von dir beschrieben?
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Glombi am 28.11.06 - 10:08:27
Die reden doch von Icons, die als Symbole in der Spalte angezeigt werden sollen. Das meine ich nicht.

Ich habe weder Image Resourcen noch Icons verwendet. Sondern ganz normale Bilder, die in einem RTF Feld sind. Entweder importiert man die direkt in das Feld oder man wandelt - bspw. per Image Magick - Anhänge in ein Bild um.

Das hat alles wunderbar funktioniert.

Andreas
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: S2000 am 28.11.06 - 10:14:04
... Das mit dem isSummary funktioniert einwandfrei (gibt immer wieder große Augen bei den Kollegen  ;) ).
Es gibt hierzu auch ein Beispiel aus der Sandbox (pictures.nsf), da wird das schön gezeigt.

Gruß
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 10:15:29
Auf dieser Seite wird nicht von Icons geredet, wo liest du das? Die Rede ist von "Custom Images".

Mit welcher Notes-Version hat das funktioniert?
In der Spalte im View muss ich doch das "Display values as icon" ankreuzen, richtig?

Ich sehe nichts, die Spalte bleibt leer. Das Feld ist aber auf SUMMARY gesetzt.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 10:26:25
Es gibt hierzu auch ein Beispiel aus der Sandbox (pictures.nsf), da wird das schön gezeigt.

Und ich bin mal wieder zu blöd, es zu finden...  ???
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Glombi am 28.11.06 - 10:30:52
Zitat
In der Spalte im View muss ich doch das "Display values as icon" ankreuzen, richtig?
NEIN, eben nicht !!!

Vergiss den Keysolution Artikel. Die meinen etwas anderes.

Andreas
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 10:32:34
Wenn ich das Häkchen wegnehme, dann seh ich in der Spalte aber nur Fragezeichen.

"For example, a rich text item whose IsSummary property is True generally appears as a question mark." (Auszug aus der Doku)
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Glombi am 28.11.06 - 11:00:59
Stimmt.

Es hat aber mal funktioniert. Ich schaue mal nach ob ich noch ein Beispiel habe.

Andreas
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Thomas Schulte am 28.11.06 - 11:03:40
Also das würde ich jetzt auch gerne wissen wie das mit ganz normalen Bildern funktioniert. Mit Ressourcen ist mir das ja klar.
 
Aber dann müssen die Bilder zumindest in irgendeiner anderen Datenbank als Ressourcen vorhanden sind.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 11:07:16
Es gibt hierzu auch ein Beispiel aus der Sandbox (pictures.nsf), da wird das schön gezeigt.

Und ich bin mal wieder zu blöd, es zu finden...  ???

Ok, hab es, es steht unter "Images in Notes Views"

Und wie erwartet - steht es ja groß und breit da - soll man das Bild als Image Resource importieren... Anders scheint es also wirklich nicht zu gehen.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Thomas Schulte am 28.11.06 - 11:11:09
Ja aber das arbeitet mit Ressourcen. Und nicht wie Andreas erklärt hat mit Bildern aus RT Feldern.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: masseur81 am 28.11.06 - 11:14:32
Es hat aber mal funktioniert. Ich schaue mal nach ob ich noch ein Beispiel habe.

Ich habe auch gelesen, dass es wohl in Version 5 "not a bug, but a feature" gewesen sein könnte. Also in V7 (siehe Threadtitel) scheint dies behoben worden zu sein.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: koehlerbv am 28.11.06 - 11:29:50
Ich habe das von Andreas vorgeschlagene Verfahren schon mit mehreren Notes-Versionen probiert - ohne Erfolg (bestenfalls das Fragezeichen war zu sehen). In einschlägiger Literatur bzw. im Web fand sich auch nur: "Geht nicht".

Mit bestimmten Notes-Clients kann man dafür einen prachtvollen Crash erzeugen, wenn man in den Column properties noch einträgt, dass Werte als Symbole angezeigt werden sollen. Damit kamen nicht mal die bekannten Notes-Killer mehr klar  ;)

Bernhard
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: Thomas Schulte am 28.11.06 - 11:37:43
Was funktioniert und was ich auch schon gemacht habe ist, wenn man Bilder braucht, diese als Ressourcen in eine zentrale DB zu packen. Diese Ressourcen kann man dann in ein RTFeld in einer anderen Datenbank einfügen und zwar ohne das sie als Ressourcen in der Datenbank in der sie eingefügt werden auftauchen. Dann noch IsSummary gesetzt und man kann tatsächlich das Bild, welches im RTFeld gespeichert ist, in der Ansicht betrachten.

Bei allen anderen Vorgehensweisen, und ich hab das genauso wie Bernhard schon mehrfach ausprobiert, bekomme ich entweder ein Fragezeichen zu sehen oder der Client schmiert mittelprächtig bis gnadenlos ab.

Deswegen Andreas, wenn du das irgendwo wirklich, so wie du es beschrieben hast, lösen konntest und es funktioniert, dann hast du einen Ehrenplatz im Olymp der Notes Entwickler sicher.
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: S2000 am 28.11.06 - 17:53:08
Hallo,

das Beispiel aus der Sandbox arbeitet mit Resourcen als auch mit Bildern in RT-Feldern. Von Notes2Paper hat ich auch mal ne Demo. Es hat bis jetzt bei mir mit fast allen R5 Versionen funktioniert, R6 und R7.
Kann man hier was hochladen?
Titel: Re: Knifflig: Bild per LotusScript importieren und in Ansicht darstellen
Beitrag von: koehlerbv am 28.11.06 - 18:00:05
Welches Beispiel aus der Sandbox? pictures.nsf? Dieses ganz bestimmt nicht. Schon die Eingabemaske weist darauf hin:
Zitat
Insert a Image Resource below (no imported or pasted pictures, otherwise Notes will crash)

Oder hast Du doch was anderes gefunden? Wie Thomas schon sagte: Es ginge um einen Platz im Olymp der Notes-Entwickler  ;D

Bernhard