Das Notes Forum
Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: Schnulli am 08.09.04 - 13:37:50
-
Hallo!
Gibt es eine Möglichkeit, Datei-Anhänge (im Rich-Text-Feld) vor dem Speichern alphabetisch zu sortieren?
@Sort(@AttachmentNames) ist mir für ein berechnetes Feld bekannt, ich möchte aber wissen, ob ich die Anhänge selbst "sortieren" kann.
Hintergrund:
Wir haben eine gekaufte Software mit einer DB, in der wir unsere Informationsblätter einpflegen. Auf diese DB greift unsere Homepage zu.
In der DB ist entspricht ein Dokument einer Info-Blatt-Sammelbox mit Überbegriff (z.B. Videorekorder), die einzelnen Info-Blätter (z.B. Infos über verschiedene Modelle) sind Dateianhänge im Dokument.
Leider erscheinen die Info-Blätter unsortiert, so daß der Kunde lange suchen muss, bis er sein Blatt gefunden hat. Unser Softwarelieferant sagt uns, eine alphabetisch sortierte Möglichkeit gäbe es nicht. (Geht nicht, gibt's nicht, dachte ich eigentlich! ;-))
Da die Anwendung natürlich "gesperrt" ist, kann ich nicht genau nachvollziehen, wie die Daten von der Homepage gezogen werden.
Deshalb hier mal zunächst die Frage: Lassen sich die Anhänge selbst sortieren, oder nur ein Text-Feld mit den Namen der Anhänge?
Für Info vielen Dank
Viele Grüße
-
Wenn du die Namen der Anhänge in einem Textfeld hast, kannst du die Einträge in diesem Textfeld natürlich sortieren.
Wenn du mehrere Anhänge in einem Dokument hast, und diese sorteirt eingehängt sein sollen, mußt du ggf alle lösen und entfernen und danach in der gewünschten Reihenfolge wieder einfügen.
-
Hallo,
klar lassen die sich sortieren. Was mir sofort einfällt, ohne Notes-6 Kentnisse mit RT-Methoden, Alle Dateien abhängen -> Namen in eine Liste -> Liste sortieren, alle Dateien wieder dem Namen nach anhängen.
Vielleicht geht's auch einfacher.
Gruß von Ekki
-
@elajen: manuell sortieren ist mir bekannt :)
Die Listen sind aber dynamisch, d.h. es kommen immer mal Info-Blätter dazu und es fallen welche weg.
Normalerweise könnte man ja einfach einmal alles sortieren und dann die dazukommenden Dateien entsprechend "zwischendrin" oder wo auch immer einfügen.
Aber leider ist das Attachment-Feld selbst von uns nicht bearbeitbar. Wir können nur über Button attachen und detachen, d.h. wir haben auf die Reihenfolge keinen Einfluß. :P
Es geht mir hauptsächlich darum, ob die Behauptung unseres Software-Lieferanten wahr ist, oder ob ich da etwas hartnäckiger nachfragen kann...
-
Wie du aus den bisherigen Beiträgen ersehen kannst, ist da durchaus was zu machen.
Es kommt natürlich noch auf ein paar Parameter an, die evtl eine Rolle spielen können.
Z.B. gehen beim automatischen Abhängen, Anhängen die anwendungsspezifischen Icons der Anhänge verloren, und werden durch ein Standart-Icon ersetzt.
-
Man müßte ja nicht gleich lösen, genauso könnte man die Items erstmal in ein temporäres RTF schießen, aus dem ursprünglichen RTF alle Items löschen und in sortierter Reihenfolge wieder ins Original-RTF packen.
-
@Diri
Wie schiebst du embedded objects von einem RTItem in ein anderes ohne zu lösen und neu anzuhängen.
Wäre eine tolle Sache wenn das ginge
-
Hi,
Du erzeugst ein neues, leeres RichTextItem und kopierst aus dem bestehenden RichTextItem per AppendRTItem den Inhalt des Originals in das neue RTItem. Wenn das leer ist, ist Append ja quasi wie eine Kopie.
-
Ja, aber wie sortierst du dabei die einzelnen Elemente um?
Du machst ja eine Kopie von allem auf einen Schlag und kopierst nicht die Anhänge eines nach dem anderen, und kannst soweit ich das sehe die Reihenfolge der Anhänge nicht beeinflussen. 8)
Zudem: @AttachmentNames hält sich sehr streng an die Reihenfolge, in der die Anhänge eingefügt worden sind und die kann von der Reihenfolge der Anhänge im RTItem auch noch abweichen. :P ??? ;D
-
Die Idee war eh noch nicht ganz ausgereift, hab ich gerade in nem kleinen Test festgestellt ;)
Aber machbar müßte das trotzdem sein, zur Not eben über ein temporäres Dokument.
- RTF kopieren
- Namen der EmbeddedObejcts ermitteln, in Array packen, sortieren
- EmbeddedObjects im Original killen
- ersten Namen aus Array lesen, entsprechendes EmbeddedObject holen und in Original packen
usw.
Ist nur ne Idee, hab leider keine Zeit, das zu testen ::)
-
Der Ansatz ist schon richtig, aber ohne Abhängen und wieder Anhängen wirds nicht gehen. ::)
-
Aus Mangel an Zeit zum Testen will ich nicht das Gegenteil behaupten ;)
Aber vermutlich hast Du Recht, bei der Methode EmbedObject kann ich ja nur ein File angeben, kein Notesobjekt.
-
Verstehe ich Dich richtig, dass die Dateianhänge in einem Web-Dokument sortiert angezeigt werden sollen ?
Wenn Du ein Notes-Dokument mit Dateianhängen im Web anzeigen möchtest und einfach Download-Links auf die Attachments brauchst -
dann kannst Du Dir das Sortieren im eigentlichen Dokument komplett sparen.
Hole Dir wie bekannt die Attachments mit @AttachmentNames und sortiere diese mit @Sort.
Aus dieser Liste erzeugst Du DownloadLinks und zeigst diese dann einfach untereinander in sortierter Reihenfolge an.
Das ist die Formel, um aus den AttachmentNames Links zu generieren. Das ganze sollte natürlich schön in einer Tabelle mit Stylesheets usw. aufbereitet werden.
<a href=\"" + @Text(@DocumentUniqueID) + "/$FILE/" +
@ReplaceSubstring(
@AttachmentNames;
( " " : "\"" : "&" : "|" : "(" : ")" : "ü" : "ä" : "ö" : "ß" : "?" : ":" : "Ä" : "Ö" : "Ü" : "," : "\'" ) ;
( "%20" : "%22" : "%20AND%20" : "%20OR%20" : "%28" : "%29" : "%FC" : "%E4" : "%F6" : "%DF" : "%3F" : "%3A" : "%C4" : "%D6" : "%DC" : "%2C" : "%27" )
) +
"\" target=ShowAttachment ><u> "+ @AttachmentNames + "</u></a>
In welcher Reihenfolge die Files dann im wirklichen Dokument liegen,
ist dann ziemlich egal.
Geht aber leider, wie gesagt, nur im Web.
-
Leider kann ich Dich nicht mit Namen ansprechen, "Datenbanken24" (was ich nicht gut finde).
Aber Dein Vorschlag würde das Problem sicher lösen können - wenn, wenn das Wörtchen "wenn" nicht wär':
Das Design der DB ist versteckt - Schnulli kann da gar nix ändern.
By the way: Lt. Posting von Schnulli (hat leider auch keinen Namen) geht es hier nur ums Web. Damit sind auch eigentlich sämtliche "Deattach - attach"-Vorschläge aus dem Rennen ...
Schnulli sollte Dein Vorschlag aber auf jeden Fall helfen, gegenüber dem Anbieter der Software mit Fakten entgegen treten zu können ;)
Bernhard
-
Moin!
@datenbanken24: vielen Dank für den Tipp, damit habe ich zumindest was in der Hand, wenn sie wieder mit "geht nicht" kommen. (Wobei das "geht nicht" nicht immer das Problem ist, die erzählen einem meist was von riesigem Aufwand, auch wenn es ne Sache von 10 Minuten ist, die sogar ich als Anfänger gebacken kriege ..... Halt ähnlich wie in der Autowerkstatt! :-X)
@Bernhard: Wie kein Name? Sorry, dachte Schnulli wäre vollkommen ausreichend, wollte nicht unhöflich sein! (außerdem gefällt mir Schnulli einfach besser als Iris!)
Also gut:
Dim Schnulli as Iris ;D
Viele Grüße und vielen Dank für Eure Mühe
-
Hallo Iris
Gemäss den Forums-Richtlinien lässt sich Dein Dim-Statement so impoementieren, dass man den Namen unten im Fuss reinschreibt, so wie ich das bei mir habe. Für Datenbanken24 gilt natürlich das gleiche ..... bitte den Namen in den Footer .....
-
So, Name ist drin. Danke für den Hinweis.
-
Vielen Dank, das macht Freude ..... :)
-
Wobei gerade der Name von Schnulli innerhalb dieses Forums verwirrend ist ;D
-
Huch - warum? Versteh ich nicht ..... :(
-
Naja, in der Reihenfolge in Schnullis Signatur ist das eigentlich ganz witzig :
Iris
Notes 6
...
;D
-
Ach so ...... wirklich ...... da hat mir jetzt gewiss gerade die richtige Assoziation gefehlt .... echt witzig und doppeldeutig ;D
-
Ja genau!!!! Deshalb ließ ich überhaupt meinen richtigen Namen weg, nur um Euch nicht zu verwirren!!!!! ;D
Aber anstatt Dankbarkeit zu zeigen, werde ich noch gerügt!!!
Die Welt ist so ungerecht!!!! :-[
-
Na ja, was willst Du denn, als Belohnung bist Du doch eben Junior-Mitglied geworden, und dann meinst Du, wir rügen Dich ...... ;D