Das Notes Forum

Domino 9 und frühere Versionen => Entwicklung => Thema gestartet von: klaussal am 04.08.03 - 15:13:37

Titel: hat feld ein attachment
Beitrag von: klaussal am 04.08.03 - 15:13:37
hi zusammen,

wie finde per formel heraus, ob in einem rt-feld ein attachment drin ist ?

ps:
ich seh wohl vor lauter bäumen den wald nicht  :P
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 15:15:55
da gabs mal was mit @attachmentNames;
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 15:18:46
oder einfach nur mit @Attachments; gibt die ANzahl der Attachments im Doc zurück
Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 04.08.03 - 15:20:11
.. hi ulrich,

ja das gab's, passt aber nicht. :'(

ich möchte wissen, ob z.bsp. im feld XYZ ein anhang enthalten ist.
das es noch mehr felder gibt, wo ein anhang drinne sein kann, muss ich leider genau dieses feld prüfen.
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 15:26:19
hmmpf, wer lesen kann ist klar im Vorteil; merke ich jetzt auch.

mit Formel wirst du da nicht weiterkommen, weil alle immer nur das gesamte doc betrachten. Hier ist mal wieder script angesagt

Dim doc As NotesDocument
Dim rtitem As Variant
'...set value of doc...
Set rtitem = doc.GetFirstItem( "Body" )
If ( rtitem.Type = RICHTEXT ) Then
Forall o In rtitem.EmbeddedObjects
If ( o.Type = EMBED_ATTACHMENT ) Then
' mach was du willst
End If
End Forall
End If
Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 04.08.03 - 15:28:25
... hi ulrich,

geht auch nicht, in einer ANSICHT sollen nur docs gezeigt werden, die wo attachment haben in einem feld.
 meine versuche, abzuprüfen, ob das rt-feld leer ist, liefen auch ins leer

RT-FELD = ""  <--- geht das so ?
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 15:34:57
uuiiii, das wird wohl nix. Oder warte mal.... Wenn das feld nur ein Attachment enthält und keinen weiteren text, könntest du mal versuchen

@if(@length(RT_ITEM) > 2000;NummerDesBildchens;"")

wobei dann in der Spalte Werte als Symbol anzeigen aktiviert sein muß. Mite der 2000 musst du dann ein bisschen rumspielen.

Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 04.08.03 - 15:36:55
... aber @length liefert doch nur die länge einer
ZEICHENFOLGE zurück, oder  ???
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 15:41:50
yoo, habe ich auch schon gemerkt; hmm, das wird extrem schwierig, glaube ich
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 15:44:38
was mir dann noch einfällt:

kannst du nicht beim Attachen schon mittels script prüfen, ob ein bestimmtes Feld ein Attachment hat und dann ein Flag in einem anderen versteckten feld setzen ?? dann brauchst du nur das feld abzufragen


z.B.

Dim ws As New notesuiworkspace
 Dim uidoc As notesuidocument
 Dim doc As NotesDocument
 Dim rtitem As Variant
 Set uidoc = ws.currentdocument
 Call uidoc.save
 Set doc = uidoc.Document
 Set rtitem = doc.GetFirstItem( "Attachment" )
 If ( rtitem.Type = RICHTEXT ) Then

 If Isarray(rtitem.EmbeddedObjects)Then
 Forall o In rtitem.EmbeddedObjects
 If ( o.Type = EMBED_ATTACHMENT ) Then
 Call doc.replaceitemvalue("AttachFlag","Yes")
 Call doc.Save( True, False)
 End If
 End Forall
 Else
 Call doc.Save( True, False)
 End If
 End If
 'Call Source.Refresh
 Call uidoc.Save
Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 04.08.03 - 15:57:04
.. tja, da habe ich wohl mal wieder die grenzen von LoNo gesehen  :P

bleibt nur, im querysave abfragen, ob attachment vorhanden, wenn ja, dann schalter auf "ja" (erinnert mich an rpg-zeiten).

@eknori,
DANKE ....
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 16:44:09
na, dann werde ich doch gleich morgen mal einen Request an IBM/Lotus schicken, die @Attachments und @AttachmentNames um ein optionales Parameter "Feld" zu erweitern  :D
Titel: Re:hat feld ein attachment
Beitrag von: ata am 04.08.03 - 19:14:14
... ich würde mit Abstract prüfen, ob es Text gibt, das RichText-Feld hat übrigens doch noch ne Eigenschaft wie size - wenn die kleiner 200 ist, dann scheint das Feld ohne jeglichen Ballast zu sein...

ata
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 04.08.03 - 19:20:50
aber der klaus sucht doch was für ne Ansichtenspalte

ich habe das auch mal mit @DocSize realisiert, um festzustellen, ob ein doc ein Bild enthält und dann ein Icon in einer Spalte anzuzeigen
Titel: Re:hat feld ein attachment
Beitrag von: ata am 04.08.03 - 19:23:22
... oh, das habe ich wohl nicht ganz korrekt gelesen... diese Hitze...

ata
Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 05.08.03 - 07:53:11
.... und @DOCSIZE gibt's unter R5 nicht  :P
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 05.08.03 - 12:19:43
Ich habe heute morgen einen entsprechenden "enhancement request" gestellt und gerade hat ein Mitarbeiter aus Dublin angerufen. der Request ist angenommen und wird dann auch irgendwann ( "paar Monate" ) in R6 umgesetzt werden.

Vorgangsnummer dazu ist die NALN5Q5DCL

Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 05.08.03 - 12:22:54
... wen kennst du eigentlich nicht ?
Titel: Re:hat feld ein attachment
Beitrag von: eknori am 05.08.03 - 12:26:07
den Papst, die Queen und den Osterhasen  ;D
Titel: Re:hat feld ein attachment
Beitrag von: klaussal am 05.08.03 - 12:26:12
... hier nochmal die lösung:

Code

Sub Postsave(Source As Notesuidocument)
   Dim ws As New NotesUIWorkspace
   Dim session As New NotesSession
   Dim db As NotesDatabase   
   Dim uidoc As NotesUIDocument
   Dim doc As NotesDocument
   Dim docCheck As NotesDocument
   Dim rtitem As Variant
   Dim sizeRT As Integer
   
   Set db = session.currentDatabase
   Set uidoc = ws.currentDocument
   Set doc = uidoc.document   
   Set rtitem = doc.getfirstItem("rt")
   sizeRT = rtitem.valueLength
   If sizeRT > 100 Then
      doc.flag = "ja"
   Else
      doc.flag = "nein"
   End If
   
   Call doc.save(False, False)
End Sub