Das Notes Forum

Domino 9 und frühere Versionen => ND6: Entwicklung => Thema gestartet von: mariab am 07.03.08 - 12:47:11

Titel: Nur bestimmte Dateien in Richtextlite
Beitrag von: mariab am 07.03.08 - 12:47:11
Habe in einer Maske ein Feld vom Typ Richtextlite und möchte, dass dort nur PDF oder PPT Dokumente erlaub sind.
Habe versucht dies mit einem zweiten Feld zu überprüfen.
Das Feld Fülle ich mit
Code
@right(@attachmentnames;".");
Dann schaue ich mit einer Validierungsformel nach ob das Feld die richtigen Dateien beinhaltet:
Code
@If(D_Doku != "" & (!@Contains(Ext;"PDF") | !@Contains(Ext;"PPT"));@Failure("Dateityp nicht zugelassen");@Success)

Haken:

Bräuchte hier nun einige Tipps bzw. Vorschläge wie man sowas besser löst. Vielleicht hat der eine oder ander ja auch schon eine Lösung.

Danke im Voraus für jede Hilfe
Titel: Re: Nur bestimmte Dateien in Richtextlite
Beitrag von: gossifu am 07.03.08 - 15:42:38
Hallo,

zum einen kannst Du mit @For eine Schleife bauen und die Endungen abfragen und vergleichen.
Zum anderen könntest Du deine Abfrage für alle nichtgewünschten Endungen umbauen.

1. Variante
Code
REM {e ist der Counter für Fehler};
e:=0;

@For(n:=1;n<=@Elements(Ext);n:=n+1;
   @If(!@Contains(@LowerCase(Ext[n]);"pdf") & !@Contains(@LowerCase(Ext[n]);"ppt");e:=e+1;"")
);
@If(e>0;@Failure...
2. Variante:

Code
@If(D_Doku != "" & (@Contains(@LowerCase(Ext);".doc") | (@Contains(@LowerCase(Ext);".xls") | und so weiter und so weiter...);@Failure("Dateityp nicht zugelassen");@Success)

Empfehlen würde ich erste Variante und dann vielleicht noch die Endung pps mit aufnehmen.

mfg

Kjeld

PS: Die Validierung würde ich im Textfeld machen, welches die Anhangsnamen speichert.


Titel: Re: Nur bestimmte Dateien in Richtextlite
Beitrag von: mariab am 10.03.08 - 10:49:51
Danke für die Hilfe. Finde die erste Lösung auch besser. Allerdings habe ich noch das Problem, dass der Benutzer es nicht schafft den Anhang zu ändern bzw. zu löschen, da die Validierungsformel sofort startet, bevor der Benutzer eine Änderung machen kann.

Code
REM {e ist der Counter für Fehler};
e:=0;
@For(n:=1;n<=@Elements(Ext);n:=n+1;
   @If(!@Contains(@LowerCase(Ext[n]);"pdf") & !@Contains(@LowerCase(Ext[n]);"ppt");e:=e+1;"")
);
@If(e>0;@Failure("Dateityp nicht zugelssen");@Success)
Titel: Re: Nur bestimmte Dateien in Richtextlite
Beitrag von: mariab am 10.03.08 - 11:13:05
Ok, ich habs.
Wenn ich das Textfeld mit den Erweiterungen unter das Feld mit den Dateianhängen stelle, so kann der Benutzer die Anhänge auch löschen