INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.




Unsere Partner:

DIAdem-Forum.de Partner

DIAdem-Forum.de Partner






Stellenangebote:
Applikationsingenieur (m/w)
München

Testingenieur / Entwicklungsingenieur (m/w) für die Bereiche Elektrotechnik & Mechatronik
Breuberg

Spezialist Fahrzeugmessungen und -analysen (m/w)
Kitzingen

Big Data Scientist / Analyst (m/w) Messdatenmanagement
Ingolstadt

Softwareentwickler (m/w) - Java Entwicklung
Gaimersheim bei Ingolstadt

Testingenieur (m/w) im Bereich Versuch
Eching am Ammersee





.
 
Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5

ChnCharacter()
17.05.2011, 09:42,
#1
DIAdem-Version: 2010, 2011, 2012, 2015
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 2009
ChnCharacter()

Morgen zusammen,

beim mehrmaligen Ausführen des Befehls "ChnCharacter()" hatte ich nun mehrmals das Problem, dass der Kanal zwar eingelesen wurde, aber die Eigenschaften im Report dennoch mit "NoValue" dargestellt wurden. Erst durch ein "anklicken" bzw. nochmaliges Einlesen des Kanals wurde der Fehler behoben.
Nun bin ich soweit, dass ich vor jedem Zugriff auf einen Kanal (vom Report aus) den Kanal nochmals mit ChnCharacter einlese. So konnte ich das Problem lösen/umgehen.
Daher frage ich mich, ob es eine "Begrenzung" an der Anzahl von Kanälen gibt, welche DIAdem sich "merken" kann. Dodgy

Falls dem so ist, dann wäre der Befehl "ChnCharacterAll()" eigentlich völlig unnütz...Huh

Gruß MBT

Antworten
19.05.2011, 06:51,
#2
DIAdem-Version: 2010, 2011, 2012, 2015
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 2009
ChnCharacter()

*push*

kann mir keiner von Euch die Frage beantworten bzw. hat keiner von Euch ähnliche Erfahrungen gemacht?

Antworten
19.05.2011, 07:19,
#3
DIAdem-Version: 2014SP1, 2015SP2, 2017SP1 und DIAdem 2018 / dabei seit DIA/DAGO 2
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 1995
ChnCharacter()

Hallo MBT,
mein Problem ist, dass ich dein Problem leider nicht ganz verstehe.
ChnCharacterAll berechnet die Kennwerte aller Kanäle neu. Dies ist z.B.erforderlich falls Kanäle mit ChDX verändert wurden.
Was verstehst du unter "mit ChnCharacter einlesen"?
Unter welchen Umständen werden nun die Kennwerte nicht ermittelt?

Gruß
Voyager

Antworten
19.05.2011, 11:49,
#4
DIAdem-Version: 2010, 2011, 2012, 2015
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 2009
ChnCharacter()

Hallo,

Also ich nutze den ChnCharacter Befehl dafür, dass ich den Kanal damit quasi neu einlese.

Wenn ich bspw. im Report über eine Variable auf den Kennwert eines Kanals zugreifen möchte, dann bringt er mir als Ergebnis "NoValue". Wenn ich den Kanal nun aber händisch anklicke, dann wird er ja eingelesen. Je nach Größe der Meßdatei dauert das Ganze ein wenig. Anfangs sieht man auch hier, dass bei den Kennwerten ein "NoValue" eingetragen ist. Ist der Kanal eingelesen, die Variable frisch geschrieben und der Report aktualisiert, so wird nun auch der richtige Wert angezeigt.

Wenn ich nun aber vor dem zuweisen des Wertes an die Variable den ChnCharacter Befehl für den gewünschten Kanal ausführe, dann funktioniert das Ganze sofort.

Allerdings habe ich hier das Problem, dass es nicht immer funktioniert. Wenn ich nun von Anfang an sagen wir 20 Kanäle mit dem ChnCharacter Befehl neu berechnen lasse und die Kennwerte wieder an eine Variable übergebe, dann funktioniert das nicht für alle Kanäle... Daher lasse ich den Kanal vor jedem Zugriff auf die Kennwerte quasi neu berechnen um die Ergebnisse im Report auch alle darstellen zu können...

Die Ausführung war jetzt leider etwas länger, aber ich hoffe ich konnte mich diesmal klarer ausdrücken Confused


Gruß MBT

Antworten
23.05.2011, 11:09,
#5
DIAdem-Version: alle
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 1995
ChnCharacter()

Hallo MBT,

wenn Dateien keine berechneten Kennwerte enthalten, werden die Kennwerte beim ersten Zugriff auf die Kanäle berechnet. Dabei spielt es keine Rolle, ob die Kanäle geladen oder angemeldet sind. Die Befehle ChnCharacter oder ChnCharacterAll berechnen die Kennwerte explizit.
Wenn man häufiger mit den gleichen Dateien arbeitet, empfiehlt es sich die Dateien einmal zu laden, die Kennwerte zu berechnen und die Datei wieder zu speichern.

Carpe DIAdem

Antworten
24.05.2011, 09:53,
#6
DIAdem-Version: 2010, 2011, 2012, 2015
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 2009
ChnCharacter()

Guten Morgen Carpe DIAdem,

danke für die Antwort.
Aber wie kommt es dann, dass wenn ich bspw. das Maximum eines Kanals in eine globale Variable schreibe und auf diese im Report zugreife, dass mir dann nicht der Wert sondern ein "NOVALUE" angezeigt wird. Deiner Aussage zufolge müßte DIAdem den Kanal ja berechnen, sobald ich das Maximum in die Variable schreibe?!
Wenn ich den Kanal dann manuell anklicke, kann ich sehen, dass DIAdem den Kanal nun berechnet und das "NOVALUE" durch den Wert ersetzt wird. Das Problem ist also nicht das Schreiben in die Variable bzw. das ausgeben im Report, sondern eindeutig das Berechnen des Kanals...gibt es hierfür eine Option die man in den Einstellungen ändern kann?

Das Problem besteht seltsamerweise auch nicht bei jedem Kanal bzw. ist replizierbar. Es tritt sehr häufig auf, läßt sich aber nicht auf bestimmte Situationen/Kanäle reduzieren...

Gruß MBT

Antworten
24.05.2011, 10:01,
#7
DIAdem-Version: alle
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 1995
ChnCharacter()

Hallo MBT,

mit erster Zugriff sind die Aktionen gemeint, in denen DIAdem mit dem Kanal etwas tun muss - z.B. zeignen. Damit ist nicht das Auslesen einer Kanaleigenschaft gemeint.
Übrigens mit foldender Syntax kannst du dir unter Umständen den Zwischenschritt über die Variable sparen:

Formatiert:
@@Str(Data.GetChannel("[4]/Kessel").Properties("maximum").Value, "AutoAdj")@@

Unformatiert:
@@Data.GetChannel("[4]/Kessel").Properties("maximum").Value@@

Carpe DIAdem

Antworten
24.05.2011, 12:48,
#8
DIAdem-Version: 2010, 2011, 2012, 2015
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 2009
ChnCharacter()

Hallo Carpe DIAdem,

danke für die Antwort, das hilft mir erstmal weiter!
Werde dann versuchen meine Scripte weitgehend so aufzubauen, dass ich auf den ChnCharacter Befehl verzichten kann.


Gruß MBT

Antworten
24.05.2011, 14:58,
#9
DIAdem-Version: 2014SP1, 2015SP2, 2017SP1 und DIAdem 2018 / dabei seit DIA/DAGO 2
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 1995
RE: ChnCharacter()

@MBT:
Falls du nur an den klassischen Kennwerten wie min, max, mittel interessiert bist, tuts auch die Funktion "CCH".
Diese Funktion berechnet gezielt einen dieser Kennwerte, unabhängig davon ob die Kennwerte schon ermittelt waren.

@Carpe:
Gibt es einen Geschwindigkeitsunterschied bei sehr langen Kanälen zwischen CCH und ChnCharacter?

Gruß
Voyager

Antworten
25.05.2011, 11:30,
#10
DIAdem-Version: 2010, 2011, 2012, 2015
DIAdem-Sprachversion: DE/EN
DIAdem Erfahrung seit: 2009
RE: ChnCharacter()

Super Tip, dank dir!
Man lernt doch niemals aus :-).

Antworten


Gehe zu: