Datei=>Datentabelle erzeugen

Die Funktion gibt die Kanäle einer ausgewählten Datendatei in einer Tabelle aus. Die Kanäle können spaltenweise oder zeilenweise ausgegeben werden. Falls die Daten nicht vollständig auf eine Seite gedruckt werden können, erzeugt die Funktion entsprechend vielen Seiten, maximal jedoch 255 Seiten.

Die Tabellenseiten werden aus einer Vorlage geladen. Es können eigene Vorlagen erstellt werden.

../../_images/IPW-Report.png

Über Datei=>Weitere Datei-Funktionen=>Datentabelle: Daten in Zeilen oder Spalten ausgeben wird der Konfigurations-Dialog erreicht:

../../_images/datatable-config-dialog-de.png
NC Datei
Zeigt den Namen der ausgewählten Datendatei (NC-Datei). Über den Schalter können die Daten bearbeitet werden.
Vorlage
Zeigt den Namen der Vorlage an. Die Default-Vorlagen finden Sie im Verzeichnis uniplot\template. Über den Schalter kann eine andere Vorlage ausgewählt werden.
Kanalnamen die auf allen Seiten wiederholt werden sollen.
Tragen Sie in diesem Feld die Kanalnamen ein, die auf allen Seiten angezeigt werden sollen. Die Namen werden durch ein Komma getrennt.
Alle Kanäle ausgeben
Wenn diese Option markiert ist, werden alle Kanäle ausgegeben. Wenn die Option nicht markiert ist, können die gewünschten Kanäle über ein Dialogfeld ausgewählt werden.

Kommentar

Alle Seiten der Vorlage werden in das neue Dokument kopiert. Die letzte Seite der Vorlage muss eine Tabelle mit dem Namen „Datatable_vertical“ oder „Datatable_horizontal“ enthalten. Der Name legt den Typ der Tabelle fest.

Die letzte Seite wird entsprechend oft in das neue Dokument kopiert, damit alle Daten eingetragen werden können. Es werden maximal 255 Seiten erzeugt.

Um den Typ der Tabelle festzulegen, klicken Sie mit der rechten Maustaste in der Tabelle und wählen „Einstellungen“. Siehe auch Objekt bearbeiten=>Tabellen-Eigenschaften. Geben Sie im Namen-Textfeld den Text „Datatable_vertical“ oder „Datatable_horizontal“ ein.

Datatable_horizontal Die Kanäle werden untereinander in die Tabelle eingetragen. Die Werte eines Kanals werden in eine Zeile geschrieben.
Datatable_vertical Die Kanäle werden nebeneinander in die Tabelle eingetragen. Die Werte eines Kanals werden in eine Spalte geschrieben.

Die Seiten können Platzhalter der Form $Text$ enthalten. Die Platzhalter werden durch die entsprechenden Werte aus der NC-Datei ersetzt.

Für jeden Kanal wird der Kanalname in Zeile1 (bzw. Spalte 1) und die Einheit in Zeile 2 (bzw. Spalte 2) geschrieben. Die Daten folgen dann ab Zeile 3 (bzw. Spalte 3).

Die Seiten werden in folgender Reihenfolge gefüllt:

In der ersten Tabelle werden so viele Kanäle eingetragen wie die Tabelle Spalten bzw. Zeilen enthält. In die Seite und die folgenden Seiten werden die Daten dieser Kanäle eingefügt. Danach folgen die Seiten für die weiteren Kanäle.

Im Template-Verzeichnis von UniPlot finden Sie Beispielvorlagen, die Sie modifizieren können und unter einem neuen Namen speichern sollten.

datatable_A4_landscape_horizontal.ipw
datatable_A4_landscape_vertical.ipw
datatable_A4_portrait_horizontal.ipw
datatable_A4_portrait_vertical.ipw
datatable_letter_landscape_vertical.ipw
datatable_letter_landscape_horizontal.ipw

Zur Formatierung der Tabelle:

Die Tabelle enthält alle Formatierungen: Zahlenformat, Font, Farben, Textausrichtung, Zellgröße, Spaltenbreite, etc. Sie können alle Einstellungen der Tabelle frei ändern.

Falls in der NC-Datei die Kanäle das Attribut C_format enthalten, wird das Zahlenformat in der Tabelle überschrieben.

In der ersten Spalte bzw. Zeile wird ein Zeilenzähler angezeigt.

Vorlagen mit definierten Kanälen

Es können auch Vorlagen erzeugt werden, bei denen die anzuzeigenden Kanäle in die Tabelle eingetragen werden.

Vorlage erzeugen

Für Tabellen zur Darstellung von ausgewählten Kanälen wird in den Tabellen-Namen der Text „Datatable_with_channels“ eingetragen.

In einer Zeile der Tabelle (oder Spalte) werden Kanalplatzhalter eingetragen. Ein Kanalplatzhalter beginnt mit einen Stern gefolgt vom Kanalnamen gefolgt von einem Stern. Beispiel n_Motor. Der Kanalname muss in der Schreibweise dem Kanalnamen in der NC-Datei entsprechen. In der folgenden Zeile (bzw. Spalte) kann das Zahlenformat für den Kanal festgelegt werden. Dazu wird ein Text der Form 000.00 eingegeben. Dezimaltrennzeichen ist der Punkt. Die Anzahl der Zeichen hinter dem Punkt legt die Anzahl der Nachkommastellen fest.

Beispiel:

../../_images/IPW-Report-Datatable_with_channels-Template.png

In Zeile 1 stehen die angezeigten Kanalnamen. Sie müssen nicht mit den Kanalnamen der Platzhalter übereinstimmen.

In Zeile 2 stehen im Beispiel die angezeigten Einheiten.

In Zeile 3 stehen die Kanal-Platzhalter. Beim Füllen der Vorlage mit Daten wird der Platzhalter-Text in das Namensfeld der Tabelle übertragen und der erste Wert des Kanals aus der NC-Datei an die Stelle des Platzhalters geschrieben.

In Zeile 4 steht das Zahlenformat für den entsprechenden Kanal. Über den Text kann die nötige Spaltenbreite bestimmt werden. Der Text legt aber auch die Anzahl der anzuzeigenden Nachkommastellen fest. Der Text wird beim Füllen der Vorlage ebenfalls in das Namensfeld kopiert.

Die Anzahl der Zeilen der Tabelle legt die Anzahl der Werte fest, die auf der Seite angezeigt werden können. Hat ein Kanal mehr Datenpunkte, wird die Seite entsprechend oft kopiert.

Die Vorlage kann mehrere Seiten mit einer Tabellen-Vorlage enthalten.

UniScript-Schnittstelle

Erzeugen Sie eine ic-Datei mit dem folgenden Inhalt. Speichern Sie die ic-Datei und die Vorlage in einem Verzeichnis Ihrer Wahl und geben Sie das Verzeichnis unter „Extras=>Weitere Optionen=>Suchpfad für Automatisierungs-Skript-Dateien“ an.

auto_AddToUI("Daten-Tabelle", "Tabelle1", "MyTableReport1")

def MyTableReport1()
{
    ssTemplate = "datatable_A4_1.ipw";
    ssNCFile = _DoFileImportDlg();  // returns the NCName or ""
    if (ssNCFile == "") {
            return FALSE;
    }
    upReport_Base(ssTemplate, ssNCFile);
}

def upReport_Base(ssTemplate, ssNCFile)
{
   ssTemplate = _AUTO_FindFileInSearchPath(ssTemplate);

   o = upReport();
   p = o.parameter;

   p.NCFile = ssNCFile;
   p.ssTemplate = ssTemplate
   p.bRecordFilter = TRUE;
   p.smPlaceholder = ""
   p.AddTohDoc = 0;  // handle of document or 0: create a new document
   p.bHasPlaceHolder = TRUE;
   upReport_Make(o);
}

id-1080387