Domino 9 und frühere Versionen > ND6: Entwicklung

Dateigröße abfragen (RTF)

<< < (5/6) > >>

Andreas Huhn:
Hab das in die Abfrage nach dem Type mit eingebaut:


--- Code: ---If objects.Type = EMBED_ATTACHMENT And objects.FileSize > 3145728 Then

--- Ende Code ---

.. getestet mit einem 13MB PDF.

Andreas Huhn:
Im Dokument sind noch mehr RichText-Felder. Wenn eines der anderen gefüllt ist dann kommt die gleiche Meldung wieder.

Mit rtitem.HasEmbedded klappt es nicht. Kann ich die Fehlermeldung noch auf andere Weise unterdrücken?

Axel:

--- Zitat von: Andreas Huhn am 28.09.05 - 12:54:26 ---Mit rtitem.HasEmbedded klappt es nicht.

--- Ende Zitat ---

Kann es auch nicht, denn HasEmbedded ist eine Eigenschaft der Klasse NotesDocument und nicht der Klasse NotesRichtextItem.

Du musst das mit doc.HasEmbedded abfragen. So wie ich es geschrieben hatte.



--- Zitat von: Andreas Huhn am 28.09.05 - 12:43:44 ---Hab das in die Abfrage nach dem Type mit eingebaut:


--- Code: ---If objects.Type = EMBED_ATTACHMENT And objects.FileSize > 3145728 Then

--- Ende Code ---

.. getestet mit einem 13MB PDF.

--- Ende Zitat ---

Versuch's mal so:

If objects.Type = EMBED_ATTACHMENT
  If objects.FileSize > 3145728 Then ' 3MB Grenze
    Messagebox "Achtung: Die Datei " & objects.Name & " ist " & Trim(Str(Round(objects.FileSize / 1048576 ,2))) & "MB groß!" & |(Falls möglich sollte eine Konvertierung in ein speicherschonenderes Format erwogen werden. Z.B. BMP -> JPEG)|, 0+64,"Hinweis"
  End If
End If


Axel

Andreas Huhn:
Ok, die Abfrage nach der Größe klappt jetzt in einer extra If-Bedingung.

Aber der "Type Missmatch" bleibt.

Ich habe es mit "If doc.HasEmbedded" gemacht, aber wie gesagt. Wenn in einem der anderen RTs des Dokuments eine Datei liegt dann wird die Fehlermeldung ausgeworfen. (Ich vermute, weil die Abfrage dann ja 'TRUE' ergibt und im RT "A1" aber trotzdem kein Attachment vorhanden ist)



If doc.HasEmbedded Then
      If rtitem.Type = RICHTEXT Then
         Forall objects In rtitem.EmbeddedObjects
            If objects.Type = EMBED_ATTACHMENT Then
               If objects.FileSize > 3145728 Then

Axel:

--- Zitat von: Andreas Huhn am 28.09.05 - 13:34:16 ---Ich vermute, weil die Abfrage dann ja 'TRUE' ergibt und im RT "A1" aber trotzdem kein Attachment vorhanden ist

--- Ende Zitat ---

Du vermutest richtig. Ein Hinweis, dass es mehrere RTF-Felder mit Dateien geben kann wäre hilfreich gewesen.


So sollte es aber jetzt klappen:


If doc.HasEmbedded Then
  If rtitem.Type = RICHTEXT Then
    If Not Isempty(rtitem.EmbeddedObjects) Then
      Forall objects In rtitem.EmbeddedObjects
        If objects.Type = EMBED_ATTACHMENT Then
          If objects.FileSize > 3145728 Then


Axel

Navigation

[0] Themen-Index

[#] Nächste Seite

[*] Vorherige Sete

Zur normalen Ansicht wechseln