Autor |
|
|
Download über HTTP in bestimmten festen Ordner speichern |
|
|
103 Beiträge - Profi-Clicker
|
|
|
Ich brauche mal etwas Nachhilfe
Ich möchte von einem Bestückautomaten ein Protokollfile runterladen und in einem festen Ordner ablegen.
Die (auskommentierten) Möglichkeiten über:
1. Start -> URL - funktioniert, aber landet im Standarddownloadordner vom Standardbrowser (Firefox)
2. BrowserPlugin - funktioniert, fragt aber erst wohin er die Datei speichern soll. Ich finde da auch in der Hilfe keine Möglichkeit den Pfad vorzugeben
Die wahrscheinlich sinnvollste Lösung über das Internetplugin läd auch anscheinend etwas (zumindest dauert es etwa so lang wie üblich), aber ich weiß nicht wohin. Weder eine angegebene Variable noch eine vorgegebene Datei werden gefüllt.
Was mache ich falsch bzw. wie könnte ich es sonst lösen?
1 INI-Datei lesen: [Skript.Pfad]Tracereport.ini, Abschnitt 'Vorgaben', 'Speicherort', Vorgabe='i:\Tracereport' in [ReportPfad]
2 INI-Datei lesen: [Skript.Pfad]Tracereport.ini, Abschnitt 'Vorgaben', 'Dateiname' in [Dateiname]
3 Setze in [ReportPfad]: 'i:\Tracereport\'
4 Setze in [TraceReportDate]: '[Datei.Datum [ReportPfad]TraceReport.txt]'
5 Anzeigefenster 'Dateneingabe' (B=76, H=80, zentriert, X=30, Y=30, Max. möglich, Innenabmessungen)
6 Setze in [Dat1]: 'dat([TraceReportDate])+1' (berechnen)
7 Setze in [Tag]: '[Dat1§dd]' (berechnen)
8 Setze in [Monat]: '[Dat1§mm]' (berechnen)
9 Anzeige-Element Eingabe: '[Tag]' (ID='Tag', X=20, Y=14, B=20, H=10, zentriert, Ausrichtung zentriert)
10 Anzeige-Element Eingabe: '[Monat]' (ID='Monat', X=40, Y=14, B=20, H=10, zentriert, Ausrichtung zentriert)
11 Setze in [.Element.Schriftart Monat]: 'Arial'
12 Setze in [.Element.Schriftart Tag]: 'Arial'
13 Setze in [.Element.Schriftgröße Monat]: '20'
14 Setze in [.Element.Schriftgröße Tag]: '20'
15 Anzeige-Element Button: 'Download starten' (ID='Button1', X=20, Y=50, B=38, H=16, farbig)
16 Setze in [.Element.Schriftgröße Button1]: '15'
17 Anzeige-Element Bezeichner: 'Tag' (ID='Bezeichner1', X=20, Y=10, B=20, H=4, zentriert, Ausrichtung zentriert)
18 Anzeige-Element Bezeichner: 'Monat' (ID='Bezeichner2', X=40, Y=10, B=20, H=4, Ausrichtung zentriert)
19 Warte endlos...
20
>>...usw...<<
Hierfür benötigte Erweiterungen: Browser-Element, Internet
| Erstellt mit cX2Web - cX4 WebExport (41 Skriptzeilen, cX 4.0.8.1 Pro)
|
Beitrag vom 22.04.2016 - 12:29 |
|
|
|
243 Beiträge - nicht heilbarer cX-Junkie ;o)
|
|
|
Hallo Andi,
bin dein Skript gerade durchgegangen, konnte es ja leider nicht testen, aber ich hab eine Vermutung.
Könnte es sein, dass zwischen "[ReportPfad]" & "[Dateiname]" einfach nur der Schrägstrich "\" fehlt ?
Ich baue in meine Skripte oft Meldungen ein um zu checken, ob die Variablen auch den richtigen Inhalt haben.
Die Meldungen kann man ja ganz schnell & vorallem bequem mit F4 deaktivieren.
In dein Skript hätte ich auch eine Meldung hinzugefügt, die mir den Inhalt der 3 Variablen (ReportPfad, Dateiname & HTML) zeigt.
Ach & die Zeile in der das Internet-Plugin die Datei holt & speichern soll, ist zumindest in dem Skript, das du uns zur Verfügung gestellt hast, deaktiviert.
Aber es kann auch sein, dass ich den Aufbau falsch verstanden hab, es gibt ja nun mal meist mehr als eine Herangehensweise
FiNCH
|
Beitrag vom 22.04.2016 - 13:49 |
|
|
|
319 Beiträge - Gehört zum Inventar
|
 |
|
So sollte der Donload klappen:
Nur URL und Pfadsowie Dateiname angeben.
Hallo Andi,
Alternativ statt Deiteiname und Pfad Variable und diese dann speicehrn...
Ciao,
Joachim
1 Setze in [url]: 'http://wikipedia.de/index.php'
2 Setze in [Dateinameundpfad]: 'c:\download.txt'
3 Internet (URL '[URL]', Datei holen, Zieldatei '[Dateinameundpfad$]')
4 Starte [dateinameundpfad$] (Aktivieren, Dokument)
Hierfür benötigte Erweiterungen: Internet
| Erstellt mit cX2Web - cX4 WebExport (4 Skriptzeilen, cX 4.0.8.1 Premium)
|
Beitrag vom 22.04.2016 - 14:44 |
|
|
|
103 Beiträge - Profi-Clicker
|
|
|
Erst mal Danke, dass ihr euch bemüht habt mir zu helfen.
Zu Finch:
Die Variablen sind soweit alle OK - die überprüfe ich auch während der Laufweit im Variablenfenster.
Auskommentiert ware die diversen Versuche, weil ich mit allen Möglichkeiten abwechselnd experimentiert habe.
Zu Soko:
Ich hab alle Varianten probiert - auch einfach die Datei auf einem USB-Stick zu speichern um eventuelle Rechteprobleme zu umgehen - läuft so nicht
Ich hab die Wochhe immer mal wieder daran experimentiert. Anscheinend hat das Internet-Plugin mit der Art und Weise des Downloads ein Problem. Wenn ich stattdessen ein Datenblatt aus dem Internet angebe, läuft alles einwandfrei. Diese Anforderung aus der aufwenigen Befehlsfolge, die der Webserver braucht um die Daten bereitzustellen, führt aber nach wie vor nur zur passenden Wartezeit; aber eine entsprechende Datei wird nicht erzeugt.
Egal, dann verwende ich eben das Browser-Plugin - mit dem funktioniert es ja fast wie gewünscht.
Wenn sich viellcht noch jemand findet der mir erklären kann, wie man den Downloadordner des Browsers festlegen kann, so dass die Datei, ohne das man suchen muss, immer an dem richtigen Ort landet, wäre mir sehr geholfen. Standardmäßig wird ja immer der Downloadordner des Benutzers vorgeschlagen (WIN7). Als WA könnte man natürlich auch diesen nehmen und im Anschluss die Datei in das entsprechende Netzlaufwerk verschieben, aber das muss doch auch irgendwie anders gehen?!
|
Beitrag vom 29.04.2016 - 12:31 |
|
|
|
319 Beiträge - Gehört zum Inventar
|
 |
|
Hallo,
kann ich so nicht nachvollziehen, da das von mir gepostete Skript definitiv läuft.
Ich tippe es liegt an Deiner cx-Version...
...Verusche es doch einmal mit cx4.
Ciao,
Joachim
|
Beitrag vom 29.04.2016 - 14:47 |
|
|
|
103 Beiträge - Profi-Clicker
|
|
|
Hallo Joachim,
dein Script funktioniert ja auch.
Meins funktioniert auch, nur nicht mit dem Link den ich zum Webserver schicke - das läuft nur mit dem Browser....warum auch immer.
Da die Geschichte natürlich auch nur lokal laufen kann, weil der Bestückautomat (natürlich) nicht im Internet ist, kann man das von fern auch nicht testen.
Ich verwende übrigens CX4 in der aktuellen Version - ich finde nur die Stelle nicht, wo ich meine Signatur in den Profileinstellungen ändern kann 
Mein System: Windows 7 64 Bit Professional (Admin), Intel(R) Core(TM) i5-4430 CPU @ 3.00GHz, 8.134 MB
Grafik: @oem89.inf,%amd68fa.1%;AMD Radeon HD 7350 (819 MB), Auflösung 1680 x 1050
Mein cX: v4.0.8.1 Pro vom 09.09.2014
PIs (registriert): Datenbank (1.05), Internet (1.0.9), Netzwerk (1.0.9), Tabelle (1.0.19), RTF-Element (1.0.15), Browser-Element (1.0.16), E-Mail (1.02) | (Demo): Anzeige-Element+ (1.0.10)
|
Beitrag vom 02.05.2016 - 07:15 |
|
|
|
319 Beiträge - Gehört zum Inventar
|
 |
|
Hallo ANdy,
Zitat nur nicht mit dem Link den ich zum Webserver schicke - das läuft nur mit dem Browser |
Komisch... Berechtigungen und Namensauflösung hast Du kontrolliert?
Dein Profil kannst Du hier ändern:
http://cxweb.mountymax.de/include.php?path=login/edtprofil.php
Ciao,
Joachim
|
Beitrag vom 02.05.2016 - 07:19 |
|
|
|
103 Beiträge - Profi-Clicker
|
|
|
Zitat Original geschrieben von Soko
nur nicht mit dem Link den ich zum Webserver schicke - das läuft nur mit dem Browser
Komisch... Berechtigungen und Namensauflösung hast Du kontrolliert?
|
Die verwendete Zeile ist:
http://192.168.100.30/traceData.cgi?LAYOUT=+--&STIME=FROM&SMONTH=4&SDAY=23&SHOURMIN=0000&FLYT=Yes&FLOT=Yes&FSTA=Yes&FSTP=Yes&FNM=Yes&FPID=Yes&HEADER=Yes&DOWNLOAD=Yes&REPORT=Generate+Report&FORMAT=TAB
Damit kann man im Browser_Plugin oder im normalen Webbrowser einen Download generieren, der dann nur noch abgespeichert werden muss.
Das Internetplugin macht das, an der Wartezeit gemessen, auch - speichert aber nichts ab. Es kommt allerdings im Anzeigefenster auch der Hinweis auf "keine Rückmeldung" und das Fenster rückt merkwürdigerweise um ~1mm nach rechts und unten.
Nach der dem Download entsprechenden Wartezeit wird aber das Script wie gewünscht beendet....nur eben nichts abgespeichert.
Dachte ich auch, aber da steht weder meine alte Signatur noch kann ich die aktuelle da eintragen:
Die von Ihnen angewählte Seite bzw. Sektion ist nicht verfügbar!
|
Beitrag vom 02.05.2016 - 09:07 |
|
|
|
319 Beiträge - Gehört zum Inventar
|
 |
|
Hallo,
Zitat Dachte ich auch, aber da steht weder meine alte Signatur noch kann ich die aktuelle da eintragen:
Die von Ihnen angewählte Seite bzw. Sektion ist nicht verfügbar! |
Du musst das Passwort 2x eingeben, unter
Passwort
Neus Passwort festlegen.
Passwort wiederholen
Bestätigen sie das Passwort.
dann klappts auch...
...sonst kommt die von Dir beschriebene Fehlermeldung.
Ciao,
Joachim
|
Beitrag vom 02.05.2016 - 12:45 |
|
|
|
243 Beiträge - nicht heilbarer cX-Junkie ;o)
|
|
|
Hallo Andy,
mir ist da noch eine Möglichkeit eingefallen, die mir zumindest 1x geholfen hat. Und zwar ...
... trägst du beim Internet-Plugin unter Blockgröße einfach mal 2048 ein.
Wie gesagt, probier es einfach mal aus, ob es dir hilft, kann ich dir leider nicht versprechen.
Ansonsten eventuell nochmal einen höheren Wert ausprobieren, aber laut Hilfe nicht höher als 65536.
|
Beitrag vom 02.05.2016 - 13:07 |
|
|
|
103 Beiträge - Profi-Clicker
|
|
|
Zitat Original geschrieben von Soko
dann klappts auch...
...sonst kommt die von Dir beschriebene Fehlermeldung. |
Danke Joachim, das muss man wissen - da kommt man natürlich nicht drauf wenn mitten drin ein Passwort doppelt eingegeben werden soll - was man gar nicht ändern möchte.
Danke Finch,
ist einen Versuch wert, kann ich aber leider erst am Mittwoch probieren.
|
Beitrag vom 02.05.2016 - 15:27 |
|