01-19-2016 06:04 AM
Guten Tag,
ich sitze gerade an meinem ersten Projekt mit Diadem 2015 (64 bit): die Überarbeitung einer Auswertung von Messdaten mit Darstellung in einem Report. Zuerst wurden die Daten einfach in eine vorhandene Report-Datei eingespeist, ich lasse jetzt alles über ein Script erzeugen und befüllen. Hierbei sind ein paar Fragen aufgetreten, die ich durch die Hilfe und Beispiele nicht beantworten kann (oder ich bin zu doof?!).
1. Die Legende (bei einem Achsensystem) bearbeiten: es sollen nur bestimmte Kurven angezeigt werden und von denen möchte ich noch die Beschriftung ändern. Wie lauten die Eigenschaften auf die ich zugreifen muss?
2. Für ein Inhaltsverzeichnis und eine Übersicht bestimmter Kennzahlen brauche ich eine Tabelle bei der ich manuell Werte festlege und keine Kanalinhalte darstellen möchte, wie ich hierzu das Vorgehen bzw. der Programmcode um eine solche Tabelle zu erstellen?
3. Beginne ich mein Script für die Darstellung im Report mit der Erstellung der Sheets die ich brauche (6 Stück). Mir wird immer noch das "Blatt 1" angezeigt, also das Standard Sheet. Kann ich es löschen oder sollte ich es umbenennen und als erstes Sheet für meinen Report benutzen? Wie mache ich das?
Ich hab im Anhang Bilder eingefügt (links: wie es ist, rechts: wie es sein sollte).
Viele Grüße
Isabell
Solved! Go to Solution.
01-20-2016 07:33 AM
Hallo Isabell,
die Hilfe ist an sich schon ziemlich mächtig, ich weiß aber nicht welche Grundlagen du mit Scripting in DIAdem schon hast. Wir bieten auch einen Kurs an, wo du die ganze Scripting-Architektur erklärt wird und welche Module man wie automatisieren kann (DIAdem Advanced)
Aber kurz zu den Fragen:
1.
'versteckt die 2. Kurve des 1. Objekts auf der aktiven Seite Set oCurve = Report.ActiveSheet.Objects.Item(1).Curves2D(2) oCurve.VisibleInLegend=false
2. ich würde mir eine Tabelle aus Textkanälen zusammenstellen (jede Spalte ein Kanal) Und die Kanalwerte mittels Skript einzeln eintragen oder im VIEW manuell vorgeben.
Data.Root.ChannelGroups(1).Channels("text1").Values(1)="erste Zeile, erste Spalte" Data.Root.ChannelGroups(1).Channels("text1").Values(2)="zweite Zeile, erste Spalte" Data.Root.ChannelGroups(1).Channels("text2").Values(1)="erste Zeile, zweite Spalte" Data.Root.ChannelGroups(1).Channels("text2").Values(2)="zweite Zeile, zweite Spalte"
3. Du kannst alles aufgezählte machen (löschen, verwenden, umbennen)
Report.Sheets(1).Name="neuer Tabellenblattname" 'umbennenen Report.Sheets.Add("Zweies Tabellenblatt") 'hinzufügen eines neuen Blattes Report.Sheets.Remove(1) 'löscht 1. Tabellenblatt
Gruß Christoph
01-20-2016 02:51 PM
Hallo Christoph,
vielen Dank schonmal für deine Antwort und dein Angebot für den Kurs 🙂
Ich habe leider überhaupt keine Erfahrung mit Scripting in Diadem, alles was ich bis jetzt geschrieben habe, habe ich mir aus der Hilfe und sehr viel probieren zusammen "geschustert" 😉
Ich werde schauen, ob dies mein erstes und einziges Projekt mit Diadem ist und dann entscheiden, ob sich ein Kurs lohnt oder nicht 😉
Gerade habe ich keine Zeit deine Vorschläge auszuprobieren, aber morgen werde ich es bestimmt schaffen.
Melde mich nochmal!
Schönen Abend noch,
Isabell
01-21-2016 03:43 PM
Guten Abend,
ich habe jetzt die Vorschläge in mein Script eingebaut und muss sagen, es funktioniert wunderbar! 🙂
Vielen Dank für die Hilfe, hat mir echt weitergeholfen!
Grüße
Isabell