06-16-2010 09:07 AM
hallo!
ich hab ein *.vbs, das abfragt, welche messungen ausgewertet werden sollen und dann über eine schleife alle abarbeitet. die ergebnisse will ich als diagramme über der zeit und als tabelle mit variablen (siehe unten) im report darstellen. wie kann ich die kurven in die diagramme eingeben, ohne mich auf eine bestimmte anzahl festzulegen?
außerdem hab ich die variablen, die ich in jeder schleife berechne ,als R1 bis R4 definiert und will diese in einer tabelle zusammen mit dem dateinamen anzeigen. dabei gibt es zwei probleme, zum einen überschreibt es die variablen nach jeder schleife und zum anderen hab ich wieder keine bestimmt anzahl an variablen in der tabelle, so dass ich nicht weiß, wie ich die variablen einfügen soll.
| überschrift | überschrift 1 | überschrift 2 | überschrift 2 |
| Name Messung 1 | variable1 | variable2 | variable3 |
| name messung 2 | variable1 | variable2 | variable3 |
| name messung 3 | variable1 | variable2 | variable3 |
danke schon mal!
06-17-2010 09:05 PM - edited 06-17-2010 09:08 PM
Hallo ka05,
Warum wollen Sie unbedingt Variablen in der Tabelle benutzen? Ich wurde stattdessen einfach N+1 Kanaele anlegen und mit den richtigen Werten belegen, dann diese Kanaele in der Tabelle benutzen.
Call GraphObjOpen(TableName)
D2TabTxtVector(1)= "@@ChnComment(CurrChnNo)@@"
FOR k = 0 TO kMaxD2TabDataType(k+1) = "Channel"
D2TabChnName(k+1) = Group.Name & "/" & TblChannels(k).Name
D2TabTxtType(k+1) = "global headline"
D2HdTxtItal(k+1) = 0
D2TabNumFormat(k+1)= "d.dd"
NEXT ' k
Call GraphObjClose(TableName)
Brad Turpin
DIAdem Product Support Engineer
National Instruments
06-18-2010 02:57 AM
Hey,
erstmal danke für die Antwort, so hab ichs jetzt auch gemacht.
Noch eine Frage, kann ich auch Kanalgruppen in ein Diagramm im Report einfügen? Ich hab je nach Anzahl der Messdateien unterschiedlich viele Kanäle in den Gruppen und will alle Kanäle darstellen.
Danke und Grüße.
06-18-2010 08:43 AM - edited 06-18-2010 08:44 AM
Hi ka05,
Nein, man kann nicht einfach alle Kanaele einer Gruppe einer Tabelle zuweisen. Das geht, aber schon wieder per Script.
Call GraphObjOpen(TableName)
D2TabTxtVector(1)= "@@ChnComment(CurrChnNo)@@"
FOR k = 1 TO GroupChnCount(GroupIndex)
D2TabDataType(k) = "Channel"
D2TabChnName(k) = GroupName(GroupIndex) & "/" & ChnName(CNoXGet(GroupIndex, j))
D2TabTxtType(k) = "global headline"
D2HdTxtItal(k) = 0
D2TabNumFormat(k)= "d.dd"
NEXT ' k
Call GraphObjClose(TableName)
Call PicUpdate
Brad Turpin
DIAdem Product Support Engineer
National Instruments
06-21-2010 02:14 AM
Hallo kao5,
für die Tabellen gibt es noch eine weitere Möglichkeit das gewünscht zu erreichen.
Dazu stellt man im Dialog "Layout-Parameter" den Kanalbezug auf "Namensorientiert" und aktiviert im Unterdialog "Kurvenexpansion" die Box "Kurven expandieren".
Nun braucht man nur noch in der Kanaltabelle den Kanalbezug auf z.B. "[1]/*" zu setzen.

In diesem Fall werden alle Kanäle der ersten Gruppe dargestellt.
Stefan
06-22-2010 08:22 AM
Super, vielen Dank.
Die Tabelle funktioniert und die Diagramme kann ich auch über das Skript darstellen. Jetzt hab ich nur noch ein Problem, wie bekomme ich die Kurven in die Diagramm? Den Befehl hab ich bis jetzt noch nicht gefunden.
06-24-2010 01:02 AM
Hallo Ka05,
grundsätzlich lassen sich Scripte im Aufzeichnungsmodus erstellen oder erweitern. Den Aufzeichnungsmodus kannst du im Modul SCRIPT aktivieren. Wenn du in einem Dialog Parameter änderst kannst du alle Parameter des Dialogs mit CTRL-A aufzeichnen. Die Parameter, die du nicht benötigst können gelöscht werden. Wenn du nicht auf ein vorbereitetes 2D-Achsensystem zugreifen möchtest um die aktuell darzustellenden Kanäle einzutragen, kannst du im Script mit dem Befehl GraphObjNew auch neue Einträge erstellen. In der DIAdem-Hilfe findest du Beispiel dazu.
Gruß
Walter