TIA Bild öffnen über Variable

Zuviel Werbung?
-> Hier kostenlos registrieren
Danke hucki für deine Hilfe:ROFLMAO::ROFLMAO:

Es läuft auch in der Simulation wunderbar.

Nur auf dem Panel habe ich noch das Problem das nur ca. 3 der 15 Bilder angelegt werden laut Meldefenster.

Wo es angeblich funktioniert steht vbScreenObjectstoCsv-Datei angelegt 1.0.Bild.csv (jedoch wenn ich das Runtime beende und in den Ordner CSV gehe ist der Ordner leer wird also nicht angelegt)
dort wo es laut Meldezeile nicht funktioniert kommt vbScreenObjectstoCsv-Bild nicht gefunden 2.0.Bild_2.csv

Das Script vbScreenObjectsList habe ich am Ende um meine Bilder erweitert
 
Läuft es auf nem CE Panel ähnlich schnell wie in der Windows Runtime?
Meiner subjektiven Meinung bei nur 3 Seiten nach: fast.
:cool:


Btw. ich hatte mal noch probiert die Dateien nur beim Runtime Start zu erstellen.
Das ist eigentlich noch besser, denn dann brauchst gar keinen Button mehr.
Ich hatte das auch im Auge gehabt.
Aber wenn man den Scriptaufruf auf das Ereignis "(Start)seite aufgebaut" legt, läuft es pausenlos, weil das Script ja immer wieder zu der Seite zurückkehrt, von der es gestartet wird.
Man müsste dann also noch einen Merker einbauen, das das Script schon einmal gelaufen ist.

Aber ich fand es dann doch gar nicht so toll, das bei jedem Runtime-Start automatisch zu machen.:
- Es raubt dem Kunden Zeit und sieht "doof" aus. (Man kann ja nur schwer was drüber legen)
- Nicht bei jedem Runtime-Start gibt es neue Objekte
+ immer aktuelle Daten

Mit Button:
+ schnellerer Runtime-Start
+ csv nur einmalig gezielt erstellen, wenn man wirklich was Neues hochlädt (IBN) oder was weggekommen ist
+ den Button kann man für die meisten Leute (DAUs) verstecken
- bei Vergessen zu drücken, keine aktuellen Daten
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Nur auf dem Panel habe ich noch das Problem das nur ca. 3 der 15 Bilder angelegt werden laut Meldefenster.

Wo es angeblich funktioniert steht vbScreenObjectstoCsv-Datei angelegt 1.0.Bild.csv (jedoch wenn ich das Runtime beende und in den Ordner CSV gehe ist der Ordner leer wird also nicht angelegt)
dort wo es laut Meldezeile nicht funktioniert kommt vbScreenObjectstoCsv-Bild nicht gefunden 2.0.Bild_2.csv

Das Script vbScreenObjectsList habe ich am Ende um meine Bilder erweitert
Was für ein Panel hast Du eigentlich?

Wenn Du die Zeile "On Error Resume Next" auskommentierst, bekommst Du wieder Fehlermeldungen über zwischendurch nicht funktionierende Befehle (z.B. Datei anlegen).
Wenn Du den auskommentierten Block wieder aktivierst, werden eventuelle Fokusprobleme gemeldet (Fokus muss sich zwingend immer wieder im Permanentbereich befinden).

Besteht eventuell die Möglichkeit, dass man sich Dein Projekt mal ansehen kann?
Sprich, dass Du es hochladen kannst?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Ich hatte das auch im Auge gehabt.
Aber wenn man den Scriptaufruf auf das Ereignis "(Start)seite aufgebaut" legt, läuft es pausenlos, weil das Script ja immer wieder zu der Seite zurückkehrt, von der es gestartet wird.
Man müsste dann also noch einen Merker einbauen, das das Script schon einmal gelaufen ist.

Aber ich fand es dann doch gar nicht so toll, das bei jedem Runtime-Start automatisch zu machen.:
- Es raubt dem Kunden Zeit und sieht "doof" aus. (Man kann ja nur schwer was drüber legen)
- Nicht bei jedem Runtime-Start gibt es neue Objekte
+ immer aktuelle Daten

Mit Button:
+ schnellerer Runtime-Start
+ csv nur einmalig gezielt erstellen, wenn man wirklich was Neues hochlädt (IBN) oder was weggekommen ist
+ den Button kann man für die meisten Leute (DAUs) verstecken
- bei Vergessen zu drücken, keine aktuellen Daten

Ich hatte eine boolsche Lokalvariable mit Startwert 1 eingebaut, die nach den Aufrufen fürs Erstellen auf 0 gesetzt wird.
Das Aufrufscript ist dann an „Bild aufgebaut“ vom Startbild verknüpft, und läuft nur wenn die Lokalvariable 1 ist.

Deine - Punkte... ich weiß nicht.
Wann startet denn der Kunde die Runtime neu und verliert deshalb Zeit?
Die Runtime startet doch normalerweise nur, wenn ein neues Projekt geladen wird.
Dass er etwas in den Systemeinstellungen zu machen hat, sollte wohl vermieden werden, denn das ist wirklich keine gute User-Experience...

Aber was soll’s, Hauptsache es läuft :ROFLMAO:
 
Wann startet denn der Kunde die Runtime neu und verliert deshalb Zeit?
Die Runtime startet doch normalerweise nur, wenn ein neues Projekt geladen wird.
Ich geh' natürlich von unseren Anlagen aus und die werden schon mehr oder weniger regelmäßig komplett aus/ein geschaltet.

PS:
Als normaler Betriebszustand, nicht für AEG...
:p
 
Btw. ich hatte mal noch probiert die Dateien nur beim Runtime Start zu erstellen.
Das ist eigentlich noch besser, denn dann brauchst gar keinen Button mehr.
Da es keine große Sache ist, hab' ich das mal noch integriert.
Jetzt kann man auswählen, welchen Weg man gern betreten möchte.
:D


PS:
Im Script wird explizit auf das Objekt mit der Nummer 1 im Permanentbereich verwiesen:
Code:
ActivateScreenByNumber n, [COLOR=#00FF00][U][B]1[/B][/U][/COLOR]
Hab' auch dafür noch jeweils eine Konstante zu Beginn der betroffenen Scripte eingefügt, um die Tab-Nr. des IO-Feldes ggf. leichter anpassen zu können.
 

Anhänge

Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Nur auf dem Panel habe ich noch das Problem das nur ca. 3 der 15 Bilder angelegt werden laut Meldefenster.

Wo es angeblich funktioniert steht vbScreenObjectstoCsv-Datei angelegt 1.0.Bild.csv (jedoch wenn ich das Runtime beende und in den Ordner CSV gehe ist der Ordner leer wird also nicht angelegt)
dort wo es laut Meldezeile nicht funktioniert kommt vbScreenObjectstoCsv-Bild nicht gefunden 2.0.Bild_2.csv
Hab' das Projekt auf 6 Testbilder erweitert -> funktioniert nach wie vor auf meinem Panel.
Auch Deine "unglücklichen" Bildnamen hab' ich mal getestet-> funktioniert trotzdem auf meinem Panel.

Ist wohl wirklich besser, direkt in Dein Projekt zu schauen.
Leider hab' ich aber kein echtes TP1900 zum Testen.
:neutral:
 
Zuviel Werbung?
-> Hier kostenlos registrieren
@Byte0815,
ich kann Dein Projekt leider nicht simulieren, weil irgendwelche Trigger in den Bildbausteinen fehlen.
Ich hab' allerdings überhaupt keinerlei Erfahrungen mit Bildbausteinen, um das auf die Schnelle korrigieren zu können.

Was mir aufgefallen ist:
Das IO-Feld im Permanentbereich sollte in der TAB-Reihenfolge an Nr. 1 stehen:
(kompletten Permanentbereich markieren -> Bearbeiten -> Tab-Reihenfolge -> Tab-Reihenfolge bearbeiten -> IO-Feld als 1. anklicken)

Im Script wird explizit auf das Objekt mit der Nummer 1 im Permanentbereich verwiesen:
Code:
ActivateScreenByNumber n, [COLOR=#00ff00][U][B]1[/B][/U][/COLOR]
Eventuell funktioniert es auch, wenn Du dort stattdessen die Nr. (17) angibst, die es bei Dir tatsächlich hat.

Auf jeden Fall ist die csv-Erstellung ziemlich empfindlich, wenn der Fokus sich nicht wirklich im Permanentbereich befindet und dafür benötigt es eben unbedingt dieses IO-Feld.
(Wenn Du es hinterher dort nicht sehen willst, setze es ganz in die linke obere Ecke und gib' ihm die X- und Y-Größe 0.)

PS: Zur Info ->
Wenn der Fokus sich nicht im Permanentbereich befindet, können die Bilder und Objekte, die die Runtime gerade anzeigt, nicht (korrekt) erkannt werden!
Das ist vermutlich auch der Grund für Deine vorigen Probleme bei der csv-Erstellung.



Wenn das alleine noch nicht weiter hilft, benötige ich ein simulierbares Projekt.
Also vor dem Versenden erst mal checken.
;)
 
Zuletzt bearbeitet:
PN von Byte0815 schrieb:
Hallo hucki,

ich habe jetzt die Bildbausteine mal rausgenommen.

Ich habe jetzt nur das Problem das es in der Simulation funktioniert sowohl die abgespeckte Version wie auch meine richtige.

Nur auf dem Panel läuft es nicht.

Kann es noch dran liegen das die 19 Zoll Panels mit CE 2013 arbeiten und die kleineren mit älteren Versionen ?
Bei dieser Frage bin ich hoffnungslos überfordert.

Vielleicht kann hier jemand Anderes die Frage beantworten, ob es da Unterschiede in der Dateibearbeitung gibt.


PS:
Ich kann für Deine Tests auf dem realen Panel nur noch einmal wiederholen:
Wenn Du die Zeile "On Error Resume Next" auskommentierst, bekommst Du wieder Fehlermeldungen über zwischendurch nicht funktionierende Befehle (z.B. Datei anlegen).
Allerdings funktionieren dann auch einige gewollte Fehlerabfangungen nicht mehr. Das betrifft aber überwiegend den Fokus.
Mach' das also möglichst erst einmal nur bei der vbScreenObjectsTocsv.
 
Zuletzt bearbeitet:
PS:
Ich kann für Deine Tests auf dem realen Panel nur noch einmal wiederholen:
Wenn Du die Zeile "On Error Resume Next" auskommentierst, bekommst Du wieder Fehlermeldungen über zwischendurch nicht funktionierende Befehle (z.B. Datei anlegen).
Allerdings funktionieren dann auch einige gewollte Fehlerabfangungen nicht mehr. Das betrifft aber überwiegend den Fokus.
Mach' das also möglichst erst einmal nur bei der vbScreenObjectsTocsv.
Alternativ kannst Du das Fehlerhandling auch nur für den Dateiblock abstellen:
Code:
...
		If fWinCE Then															'	 File handling on WinCE
			[COLOR="#00FF00"][B]On Error GoTo 0	[/B][/COLOR]													'		 Deactivate error handling
			Set fso = CreateObject("filectl.filesystem")						'		 Create a file system object
			Set fo  = CreateObject("filectl.file")								'		 Create a file object
			If fso.dir(PATH_CE) = "" Then					  	        		'		 Path not available?
				fso.mkdir(PATH_CE)												'			 Create path
			Else
				If fDirClean Then fso.kill(PATH_CE & ALL_FILES)					'	 		 Delete all files
			End If
			fo.open PATH_CE & File, FILE_MODE									'		 Create and open the file
			fo.lineprint ScreenName												'		 ScreenName as the first entry
			[COLOR="#00FF00"][B]On Error Resume Next[/B][/COLOR]												'		 Activate error handling
		Else																	'	 File handling on PC
...
 
wie meinst du das mit auskommentieren ?
Wenn man ein Kommentarsymbol (hier das Apostroph ' ) vor einen Befehl schreibt, wird dieser nicht mehr als Befehl sondern als Kommentar interpretiert und somit nicht ausgeführt.
So kann man Befehle vorübergehend unwirksam machen, ohne sie zu löschen.
Wenn man den Befehl wieder braucht, löscht man das Apostroph einfach wieder.

Dafür gibt es in der Iconleiste an der 4. Stelle von links auch ein Icon.
Direkt daneben das Icon zum wieder Entfernen des Apostroph.
Mit den Icons können auch mehrere Zeilen in einem Rutsch geändert werden.
 
Leider bringt das ganze auch keinen Erfolg er legt einfach nicht die Dateien an …

Was müsste ich den machen wenn ich die Excel Tabellen am Rechner erstelle und sie nur Durchsuchen lassen möchte.

Dann würde ich sie Händisch anlegen oder ändern und das ganze so machen
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Was müsste ich den machen wenn ich die Excel Tabellen am Rechner erstelle und sie nur Durchsuchen lassen möchte.

Dann würde ich sie Händisch anlegen oder ändern und das ganze so machen
Die csv-Dateien sind einfache Textdateien, wo in jeder Zeile ein Objektname des Bildes steht.
Wenn Deine Simu funktioniert, klick' doch einfach auf eine der erstellten csv-Dateien doppelt, um sie mit Excel zu öffnen und anzusehen.

Oder noch einfacher -> lass die csv-Dateien in der Simu erstellen und kopier' sie auf Deine SD-Karte.
Dann benötigst Du nur noch das Such-Script.

Ich befürchte aber, dass dann die Dateibefehle in diesem Script genauso wenig funktionieren.



PS:
Bist Du eigentlich sicher, das der Pfad der SD-Karte bei Deinem TP1900 auch wirklich "\Storage Card SD" ist?
Die heißen bei Siemens jetzt gerne mal irgendwas mit "...X_51" oder so ähnlich.

Wenn Du die Systemsteuerung des Panels öffnest, gibt es dort ein Icon, um das Keyboard anzeigen zu lassen.
Mit Win + e kannst Du dann den Explorer öffnen, um mal nach zu sehen.
 
Ja ich bin mir eigentlich sicher, auch bei erstellten Archiven steht dieser Pfad.

Ich würde es morgen mal probieren die Dateien auf einen Stick zu ziehen und nur das Suchscript laufen zu lassen.
 
Zurück
Oben