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:
Softwarearchitekt LabVIEW/Teststand (m/w/d)
Gerlingen

Entwicklungsingenieur / Elektronikingenieur (m/w/d)
Feldkirchen

Wissenschaftlicher Mitarbeiter (m/w/d) Strömungsmechanik
Hamburg

Softwareentwickler für Prüfsysteme (m/w/d)
Ingolstadt

Elektronikerin für Geräte und Systeme (w/m/d)
Karlsruhe

Testdesigner (m/w/d)
Wolfsburg, Leonberg, Ingolstadt, Aurich, Vierkirchen (München)

Ingenieur/in für optische Systeme (m/w/d)
Ludwigshafen

Ingenieur Elektrotechnik für Standardisierung und Automatisierung (i/m/w)
Velden





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

Skript auf mehrere Arbeitsblätter eines Layouts anwenden
05.11.2013, 17:14,
#1
DIAdem-Version: 11.0
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: -
Skript auf mehrere Arbeitsblätter eines Layouts anwenden

Hallo Forum,

ich nutze DIAdem für die Auswertung von Messergebnissen. Die Messergebnisse liegen in verschiedenen Kanälen vor und werden monatsweise ausgewertet.

Für jeden Monat gibt es einen Datensatz.

Im REPORT hab ich für die Auswertung ein Layout hinterlegt in dem für jedes Signal ein eigenes Arbeitsblatt liegt. Alle Arbeitsblätter verfügen über eine X-Achse auf welcher der Zeitkanal für den Monat liegt.

Nun möchte ich ein Skript ausführen das mir den Zeitkanal monatsweise anpasst, das heißt ich nicht jeden Monat Start und Ende der X-Achse manuell für jedes Arbeitsblatt auswerten muss. (In der Stellung "Komplett Automatisch" passen Start und Ende manchmal nicht richtig)

Derzeit bin ich soweit das ich ein Skript habe welches mir das aktuell geöffnete Arbeitsblatt im Report verändert - die gerade nicht angezeigten aber nicht berücksichtigt.

Meine Frage ist nun also wie muss ein Skript aufgebaut sein damit ich eine X-Wert-Anpassung auf alle vorliegenden Arbeitsblätter eines Layouts anwenden kann?

Vielen Dank für eure Hilfe!

Beste Grüße, Christoph

Antworten
29.04.2014, 14:14,
#2
DIAdem-Version: 2012
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: -
RE: Skript auf mehrere Arbeitsblätter eines Layouts anwenden

Gibt es hierzu immer noch keine passende Antwort?

Antworten
29.04.2014, 17:43,
#3
DIAdem-Version: 2012
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: 2011
RE: Skript auf mehrere Arbeitsblätter eines Layouts anwenden

Mann muss zuerst mal die Arbeitsblätter mit Report.Sheets.Count zäheln, falls die Anzahl variiert...

anschließend muss man eine schleife einbinden die für jedes arbeitsblatt dann die jeweiligen funktionen ausführt. Da man das nur das entsprechende arbeitsblatt im report anspricht hat dies keine auswirkung auf die anderen

Dim i

For i = 1 to Report.Sheets.Count
XXX
Next

XXX --> hier muss auf jedenfall auf das zu bearbeitende Blatt zugegriffen werden. Entweder mit Report.Sheet(i)....
oder über http://zone.ni.com/reference/de-XX/help/370858K-0113/cmdvarlist/cmdvarlist/varlist_report/

Antworten
30.04.2014, 08:03,
#4
DIAdem-Version: 2012
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: -
RE: Skript auf mehrere Arbeitsblätter eines Layouts anwenden

So weit bin ich dann jetzt auch gekommen...aber wie um alles in der Welt füge ich einem 2D-Graph einer fertigen Vorlage einen X- bzw. Y-Kanal zu...ich zweifel da langsam an mir selbst....
Ich habe mir aus den Eigenschaften des Funktionsgraphen im Report den Quellcode rausgeholt und die Zeile entdeckt, in der der Graph seinen Inhalt enthält. Diese Zeile habe ich kopiert, abgeändert und erhalte nun den Fehlerhinweis

"Der Index 1 liegt nicht im gültigen Bereich"

Meine Vorgehensweise

Call Report.LoadLayout("XY")

Report.Sheets("Seite1").Objects("2DAxis1").Curves2D.Item(1).Shape.XChannel.Reference = "Ergebnisse/XTestkanal"

Report.Sheets("Seite1").Objects("2DAxis1").Curves2D.Item(1).Shape.YChannel.Reference = "Ergebnisse/YTestkanal"

So funktionierts nicht...mein Ziel ist es, mehrere Funktionen in einem Graphen darzustellen...also brauch ich doch mehrere Items 1,2,3....ich verstehe nicht, was ich da vorher noch definieren müsste.

Antworten
30.04.2014, 12:50,
#5
DIAdem-Version: 2012
DIAdem-Sprachversion: DE
DIAdem Erfahrung seit: -
RE: Skript auf mehrere Arbeitsblätter eines Layouts anwenden

Vielen Dank an alle, ich habe das Problem mittlerweile selber gelöst!
Der Trick an der Sache ist folgender:

0. Layout öffnen über
Call Report.LoadLayout("XY")

1. Auswahl des zu bearbeitenden Arbeitsblatts mit
GraphSheetRefSet ("Name")

2. Öffnen des Graphs im Layout mit
GraphObjOpen("2DAxis1"), wobei "2DAxis1" der Standardname ist

3. Erzeugen einer 2D-Kurve mit
GraphObjNew("2D-Curve", "Kurve 1")

4. Öffnen dieser neuen 2D-Kurve mit
GraphObjOpen("Kurve 1")

5. Zuweisung von x und y-Kanälen mit
D2CCHNXName ="X-Kanal"
D2CCHNYName ="Y-Kanal"

6. Schließen der Kurve mit
GraphObjClose("Kurve 1")

7. Schließen des Graphs
GraphObjClose("2DAxis1")


Fertig!

Antworten


Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Mehrere Unterordner nach Dateien durchsuchen MSP 0 2.531 25.10.2018, 14:27
Letzter Beitrag: MSP
  Mehrere Messungen speichern rooki_1 4 14.699 17.01.2015, 13:57
Letzter Beitrag: rooki_1
  View Kurve "keine Farbe" per Skript stellan 0 6.707 11.06.2014, 19:04
Letzter Beitrag: stellan
  Band Cursor zur Auswahl von Teilen von Kanälen in Skript nutzen Monnem89 5 16.763 16.04.2014, 06:28
Letzter Beitrag: Monnem89
  Legende per Skript befüllen ibofumo 1 8.402 24.03.2014, 15:18
Letzter Beitrag: ibofumo
  DIAdem Dialogfenster nur als Anzeige eines "Ladebalkens" verwenden crillo 1 10.279 09.01.2014, 18:01
Letzter Beitrag: MichiR
  mehrere Files laden daemar 1 8.339 15.12.2013, 11:42
Letzter Beitrag: MichiR
  Existenz eines Kanals prüfen rooki_1 6 17.726 06.11.2013, 12:09
Letzter Beitrag: rooki_1
  Mehrere Messungen auf einem Kanal rooki_1 15 46.439 03.11.2013, 06:48
Letzter Beitrag: rooki_1
  Wert eines Kanals aus der Ergebnisliste ermitteln. Singray 1 10.659 14.09.2013, 17:36
Letzter Beitrag: MichiR

Gehe zu: