PDA

View Full Version : filetransfer-files (dtf, tto) über vba



flostel
30-08-04, 10:27
hallo zusammen,

würde gerne aus access mein as400 downloadfile auführen ...

func = Shell("H:\SynergeBuild\Deplis\00_ERP\Deplis Downloads\xpp.dtf", vbNormalFocus)

der code funktioniert leider nicht ...

danke !!

jkuetema
30-08-04, 11:01
Hallo,

versuch mal diese Variante:
func = Shell("rtopcb.exe H:\SynergeBuild\Deplis\00_ERP\Deplis Downloads\xpp.dtf", vbNormalFocus)

klappt zumindest bei mir mit VBA + Excel.

Gruss Jens

Fuerchau
30-08-04, 11:25
Das funktioniert nur, wenn RTOPCB über den Pfad (PATH-Variable) gefunden wird.
Prüfen:
DOS-Box öffnen und PATH eingeben.

ggf. in der AUTOEXEC.BAT die PATH-Variable ergänzen oder den Aufruf von RTOPCB mit dem kompletten Pfad angeben.
Achtung:
Da Leerzeichen vorhanden sind, die Datei in Anführungszeichen setzen, da sonst jedes Wort als einzelnes Argument angenommen wird:

func = Shell("rtopcb.exe ""H:\SynergeBuild\Deplis\00_ERP\Deplis Downloads\xpp.dtf"""

hs
30-08-04, 13:57
Ein Problem besteht aber bei dieser Art der Datenübertragung, wenn die übertragenen Daten im Programm weiterverarbeitet werden sollen:

Woher weiss man, wann die Übertragung beendet ist?

Aus der VB-Hilfe:
Anmerkung Die Shell-Funktion führt andere Programme asynchron aus. Daher muß ein mit Shell ausgeführtes Programm noch nicht abgeschlossen sein, wenn die nächsten Anweisungen, die auf die Shell-Funktion folgen, ausgeführt werden.

Meines Wissens gibt es keine Möglichkeit, dies im Programm auszuwerten.

Wollte ich nur noch erwähnt haben
HS