DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

Fehlermeldung bei ChnGenTime im Skript: 'Die Anzahl der zu generierenden Zeitwerte ist zu groß. ...'. Nach manueller Erstellung eines Zeitkanals funktioniert es. Woran liegt's?

Hallo,
 
ich möchte in einem Skript einen Zeitkanal generieren. Beim Debuggen des Skripts erhalte ich die Meldung 'Die Anzahl der zu generierenden Zeitwerte ist zu groß. Sie darf 2.147...E+09 nicht überschreiten'.
 
Wenn ich einen Zeitkanal von Hand erzeuge, funktioniert es. Ebenfalls, wenn ich im Aufzeichnungsmodus eine Zeitkanal erstelle. Der Zeitwert beträgt übrigens 6.3342000035E+10(!).
Nachdem ich einmal einen Zeitkanal von Hand generiert habe, funktionert auch das Skript und der oben erwähnte Fehler ist weg. Ich will aber nicht jedesmal vor dem Aufruf des Skripts einen Zeitkanal von Hand erstellen 😞
 
Weiß jemand Rat? Ist es vielleicht ein Bug (Ich benutzte DIAdem 10.2)?
 
Gruß,
   Krischan
0 Kudos
Message 1 of 6
(3,485 Views)

Sorry, ich benutze DIAdem 10.1 und NICHT 10.2 wie oben angegeben.

  Krischan

 

0 Kudos
Message 2 of 6
(3,478 Views)
Hallo Krischan, ich habe soeben folgende Script-Zeile ausgeführt:

Call ChnGenTime("/TimeGenerated","day",6.33347424E+10,6.33373344E+10,1,"StartStepEnd",1024)

Hier wird in der Defaultgruppe ein Zeitkanal mit namen "TimeGenerated" erstellt. Das Startdatum ist "01.01.2007 00:00:00" das Endedatum ist "31.01.2007 00:00:00". Für jeden Tag wird ein Wert generiert.

Das funktioniert ohne Probleme.

Gruß
Walter
0 Kudos
Message 3 of 6
(3,473 Views)

Hallo Walter,

Der Aufrud bei mir sieht wie folgt aus:

Call ChnGenTime("[3]/[1]", "millisecond", TTR(Tag &"."& Monat &"."& Jahr & " " & Stunde &"."& Minuten &"."& Sekunde), , 20, , CL(2))

wobei ich Tag, Monat, Jahr, Stunde, Minuten und Sekunde als Variablen definiert habe. Es sollen genau so viele Werte erzeugt werden, wie Kanal 2 an Werten beinhaltet, und zwar mit 20 Milliskeunden Differenz zwischen jedem Zeitwert.

Wie gesagt, wenn ich einmal (nach dem Start von DIAdem) per Hand einen Zeitkanal erzeutg habe, klappt's auch im Skript. Erzuege ich nach dem Start manuel keinen Zeitkanal, kommt es beim Durchlaufen des Skripts zu dem besagten Fehler. Interessant ist ja dabei auch die Aussage über die Limitierung des Zeitwertes auf ..E+09.

Gruß,

  Krischan

0 Kudos
Message 4 of 6
(3,471 Views)
Hallo Krischan,

ich habe Deine Befehlszeile etwas überarbeitet:

Call ChnGenTime("/Test", "millisecond", TTR(Tag &"."& Monat &"."& Jahr & " " & Stunde &":"& Minuten &":"& Sekunde),0, 20,"StartStepNo", CL(2))

Der Trenner zwischen Stunde, Minute und Sekunde ist üblicher Weise der Doppelpunkt. Es fehlte die Angabe zu Modus "StartStepNo"  - wenn der nicht gesetzt ist, wird der aktuelle Inhalt der zugehörigen Variablen genommen.

Jedenfalls funktioniert die geänderte Befehlszeile bei mir.

Gruß
Walter
Message 5 of 6
(3,468 Views)

Hallo Walter,

mit deinen Hinweisen funktioniert es auch bei mir. Super! Danke!

Ich denke, dass die fehlende Modusangabe der Auslöser war.

Gruß,

     Krischan

0 Kudos
Message 6 of 6
(3,461 Views)