Hallo zusammen
Mein Bedürfnis: Ein Textfeld in einem Eingabeformular soll eine URL aus einer x-beliebigen Dateiablage auf meinem Computer enthalten (am besten per Dateiablage einfügbar) und danach sollte das Zieldokument (PDF-Datei) auch direkt per Mausklick geöffnet werden können. Der Feldinhalt muss bei Abschluss der Erfassung in das Datenfeld Beleg (Text VARCHAR) in die Tabelle Belege geschrieben werden.
Das genannte Textfeld im Eingabeformular heisst bei mir txtBeleg, welches aus dem Datenfeld Beleg (Text VARCHAR) aus der Tabelle Belege kommt.
Was ich bis jetzt geschafft habe:
Wenn das Feld txtBeleg im Eingabeformular eine von mir manuell eingefügte URL enthält, kann das Zieldokument per folgendem Makro (Ereignisse: Maustaste gedrückt) geöffnet werden:
SUB Website_Aufruf(oEvent AS OBJECT)
	REM Aufruf einer Website oder des Mailprogramms mit einer vorgegebenen Mailadresse
	DIM oFeld AS OBJECT
	DIM oShell AS OBJECT
	DIM stFeld AS STRING
	oFeld = oEvent.Source
	REM Den Text aus der Dateiauswahl auslesen
	stFeld = oFeld.Text
	IF stFeld = "" THEN
		EXIT SUB
	END IF
	IF InStr(stFeld,"@") THEN
		stFeld = "mailto:"+stFeld
	ELSEIF InStr(stFeld,"http://") THEN
		stFeld = convertToUrl(stFeld)	'convertToUrl erkennt, dass mit http:// bereits eine Verbindung vorgegeben ist. file:/// wird nicht gesetzt
	ELSE	
		stFeld = "file:///"+stFeld
		stFeld = convertToUrl(stFeld)	'convertToUrl erkennt, dass mit http:// bereits eine Verbindung vorgegeben ist. file:/// wird nicht gesetzt
	END IF
	REM Start des Files mit der entsprechenden URL-Verbindung
	oShell = createUnoService("com.sun.star.system.SystemShellExecute")
	oShell.execute(stFeld,,0)
END SUB
Was ich noch geschafft habe:
Ich habe im Eingabeformular ein Dateiauswahlfeld eingefügt, welches eine ZielURL einfügt.
Jedoch kann ich den Feldinhalt aus dem Dateiauswahlfeld nicht automatisch in das Feld txtFeld kopieren lassen, damit es dann auch in meine Tabelle Belege geschrieben wird.
Kann mir da jemand einen Tipp geben oder geht das alles eventuell sogar viel einfacher?
Besten Dank für eure Bemühungen
Oldie63