Das Notes Forum

Domino 9 und frühere Versionen => ND8: Entwicklung => Thema gestartet von: sculer am 23.04.10 - 20:35:38

Titel: File auswählen mit Formelsprache
Beitrag von: sculer am 23.04.10 - 20:35:38
Hallo,

irgendwie scheitere ich gerade an sowas simples wie eine Fileauswahl.

Ich benutz den Befehlt
Code
filepath:=@Prompt([LocalBrowse]; "Please select the File"; "3");
, jedoch löscht dieser Befehl bei mir das ausgewählte File. Warum!? Hat da jemand ein Rat!?

Ich will eigentlich in der Variablen nur den Pfad haben, wo das ausgewählte File liegt.

Interessant wäre auch eine Funktion, wo man das Defaultverzeichnis noch mit angeben kann. (siehe "D:\temp" oder so)

thx

Gruß
sculer

Gruß
Stan
Titel: Re: File auswählen mit Formelsprache
Beitrag von: DAU-in am 23.04.10 - 23:38:07
ist das der ganze Code?
Titel: Re: File auswählen mit Formelsprache
Beitrag von: eknori am 24.04.10 - 07:13:58
Zitat
jedoch löscht dieser Befehl bei mir das ausgewählte File
Der von dir gepostete Code KANN gar kein File löschen. Dafür ist er nicht vorgesehen.
Ergo MUSS nach der Auswahl der Datei noch WEITERER Code kommen, der dann für das LÖSCHEN verantwortlich ist. Dein Code WÄHLT lediglich eine Datei AUS.

Zitat
Ich will eigentlich in der Variablen nur den Pfad haben, wo das ausgewählte File liegt.
hast du doch

Zitat
Interessant wäre auch eine Funktion, wo man das Defaultverzeichnis noch mit angeben kann. (siehe "D:\temp" oder so)
Ja
Titel: Re: File auswählen mit Formelsprache
Beitrag von: sculer am 24.04.10 - 12:23:27
Hallo,

dies ist der ganze Code

Code
Filepath:= @Prompt([LocalBrowse]; "Please select the File"; "3");

@Prompt([Ok];Filepath;Filepath);  '<= HIER IST DAS FILE SCHON WEG

@If(Filepath = ""; @Return(1); "");

@If(@IsDocBeingEdited;"";@Command( [EditDocument]; "1" ));

FIELD $switch_attachment:= "visible";
@Command([RefreshHideFormulas]);

@Command([EditGotoField];"Attachments");
@Command( [EditInsertFileAttachment]; Filepath)

bei dem Promptbefehl ist das File bereits nicht mehr da... :(


Zitat
Der von dir gepostete Code KANN gar kein File löschen. Dafür ist er nicht vorgesehen.
Jo genauso sehe ich dies auch, daher verstehe ich dies ja leider nicht... :(


Zitat
Zitat
Interessant wäre auch eine Funktion, wo man das Defaultverzeichnis noch mit angeben kann. (siehe "D:\temp" oder so)
Ja
JA!? Gibt es da was!?
Ich wüßte nicht wie man den Promptbefehl sowas mitgeben kann. Vielleicht gibt es da ja auch noch andere Möglichkeiten.

Gruß
Sculer
Titel: Re: File auswählen mit Formelsprache
Beitrag von: eknori am 24.04.10 - 13:14:13
Also bei mir kommt da folgendes ( erwartetes ) Ergebnis raus. Und die Datei ist ( wie erwartet ) nach der Abarbeitung des Codes noch da.

Zitat
Zitat
Zitat
Interessant wäre auch eine Funktion, wo man das Defaultverzeichnis noch mit angeben kann. (siehe "D:\temp" oder so)
Ja
JA!? Gibt es da was!?
Ich wüßte nicht wie man den Promptbefehl sowas mitgeben kann. Vielleicht gibt es da ja auch noch andere Möglichkeiten.

Mit dem "Ja" wollte ich nur ausdrücken, dass es interessant wäre, eine solche Option zu haben.
Titel: Re: File auswählen mit Formelsprache
Beitrag von: sculer am 24.04.10 - 13:41:29
Hallo,

also ich lege mir eine "test.txt" auf mein Laufwerk I, und sobald ich dieses auswähle, ist es weg.

=> Voll komisch

PS: Vielleicht ist dies der Fall, wenn das nicht im Notes Data Verzeichnis liegt oder so!?


Gruß
Titel: Re: File auswählen mit Formelsprache
Beitrag von: eknori am 24.04.10 - 13:50:11
liegt die ja bei mir auch nicht
Titel: Re: File auswählen mit Formelsprache
Beitrag von: koehlerbv am 24.04.10 - 13:52:52
PS: Vielleicht ist dies der Fall, wenn das nicht im Notes Data Verzeichnis liegt oder so!?

Nein! Und @Prompt löscht wirklich nicht (es sei denn, man benutzt in der Auswahlbox die Löschtaste).

Bernhard
Titel: Re: File auswählen mit Formelsprache
Beitrag von: sculer am 24.04.10 - 14:55:45
Also ich lösche garnichts....

Wenn ich aber mein Laufwerk I nehme (man kann ja auch ein anderes Laufwerk nehmen, ausser c:),  dann ist dies wie oben beschrieben. Und ich finde es einfach nur merkwürdig!

PS: Ich hab nun mal eine SharedAction mit nur den Promptbefehl gebaut. => Gleiches Phänomen

noch eine Ergänzung:
PDF Files gehen und TXT Files gehen wohl auch, wenn darin etwas enthalten ist. Ein leeres TXT File ist danach weg.

Gruß
Stan
Titel: Re: File auswählen mit Formelsprache
Beitrag von: Bruce Willis am 25.04.10 - 00:52:23
PDF Files gehen und TXT Files gehen wohl auch, wenn darin etwas enthalten ist. Ein leeres TXT File ist danach weg.
Ist irgendeine Antivirus-Software aktiv?...
Titel: Re: File auswählen mit Formelsprache
Beitrag von: eknori am 25.04.10 - 06:02:33
Zitat
Ein leeres TXT File ist danach weg.
Jetzt kommen wir der Sache schon näher. Dass das bei einem LEEREN Textfile passiert, hast du uns bisher verschwiegen.

Ich kann das Verhalten in diesem Punkt bestätigen.

Zitat
Ist irgendeine Antivirus-Software aktiv?...
auch ohne ist das Verhalten reproduzierbar

(8.5.2 auf Windows 7 Ultimate 32 + 64 Bit )

Titel: Re: File auswählen mit Formelsprache
Beitrag von: sculer am 25.04.10 - 13:19:44
Hey,

ich hab ja einfach zum testen ein paar simple TXT Files erstellt, und mich dann halt einfach gewundert. Aber warum ist dies den so!? Ist doch eingentlich nicht sinn und zweck dieses Befehls.

Naja, zumindest ist das Verhalten nun mal reproduzierbar....Lösen lässt sich dies wohl eher nicht, ist aber auch nicht so schlimm, wenn es halt nur leer Files sind.

PS: Antivirus Software hat keinen Einfluß darauf.

Danke an alle

Gruß
Titel: Re: File auswählen mit Formelsprache
Beitrag von: koehlerbv am 25.04.10 - 14:09:10
Das selbe "behaviour", was mit bis dahin auch unbekannt war, kann ich auch für Notes 7 und Windows XP bestätigen.

Bernhard
Titel: Re: File auswählen mit Formelsprache
Beitrag von: eknori am 11.05.10 - 08:57:06
Betrifft nicht nur @Formula sondern auch Script. Gibt jetzt eine Technote (http://www-01.ibm.com/support/docview.wss?rs=899&context=SWA40&context=SWA50&context=SWA60&context=SWD10&context=SS4R7J&context=SSES8G&context=SSKTYF&context=SSMT72&context=SSPQ7E&context=SSMSB2&context=SS6JVW&context=SS5LUA&context=SSCM2P&context=SS3LP9&context=SSFLMV&context=SSESJN&context=SSKTPA&context=SSVHEW&context=SSVHFY&context=SSVLBW&dc=DA410&dc=DA450&dc=DA430&dc=DA440&dc=D600&dc=D700&dc=DB510&dc=DB520&dc=D800&dc=D900&dc=DA900&dc=DA800&dc=DB540&dc=DB400&dc=DB560&dc=DB530&dc=DA600&dc=DA420&dc=DA460&dc=DA470&dc=DA480&dc=DA4A10&dc=DA4A20&dc=DA4A30&dc=DA400&dc=DA500&dc=DB700&dc=DB600&dc=DB550&q1=1430496&uid=swg21430496&loc=en_US&cs=UTF-8&lang=all) dazu

Zitat
Problem

You have a LotusScript application where the user has to select a file using the OpenFileDialog method. In selecting a file of zero bytes the filename is returned but the file is then deleted.

Example to reproduce.


1. In the file system create a new empty text file - for example "c:\test.txt"

2. In a Notes database create a view action (or agent) with the following code

      Sub Click(Source As Button)
            Dim ws As New NotesUIWorkspace
            Dim result As Variant
            result = ws.OpenFileDialog(False) End Sub


3. Click the View action (or launch agent). The OpenFileDialog opens.

4. Navigate to c: and select the empty test.txt file. Click Open.

5. Check the file system on c:. You will notice that test.txt has been deleted from the file system.
 
Resolving the problem
This issue has been reported to Quality Engineering as SPR SODY855B7B.

If this is an issue for your application you should put in code to check if the file still exists. Alternatively you can mark the zero byte file as read-only.