FlexPro Forum – Discuss Your Topic!

Fragen zu Flexpro 6

Home > Community > General > Fragen zu Flexpro 6

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #12669

    Hallo

    Ich arbeite mit OriginLab und möchte nun Flexpro testen, ob es meinen Ansprüche erfüllt.
    Dies sind:
    Import einer CSV Datei (; – getrennt)
    Temperaturverläufe nach einer Datumleiste (X) anzeigen.

    Die CSV Datei hat folgenden Inhalt:
    #;Zeit;Service;Best.Fehl./Wiederh.;Prio;Quelladr.;Quelle;Zieladr.;Ziel;Rout;DPT;Typ;Daten;

    1;2004-11-29 08:23:17.678;vom Bus;- / ;L;1.1.6;2fach mit RTR Merten EDV Raum ;5/0/0;Ist Temp EDV;6;Temperatur (°C);Write;19,7 °C;
    2;2004-11-29 08:23:23.477;vom Bus;- / ;L;1.1.7;4 fach Taster mit RTR Merten Schlafzimmer ;2/0/1;Stellgröße Schlafzimmer / Schrankraum;6;-;Write;10 %;
    3;2004-11-29 08:23:23.637;vom Bus;- / ;L;1.1.3;Thermo Antrieb Aktor Siemens;5/4/1;Ventilstellung Schlafzimmer;6;Prozent;Write;19 %;
    4;2004-11-29 08:23:25.339;vom Bus;- / ;L;1.1.15;FM446 Buderus Heizung Logamatic;7/5/0;Kessel Ist Temp;6;Temperatur (°C);Write;48 °C;
    5;2004-11-29 08:23:28.364;vom Bus;- / ;L;1.1.15;FM446 Buderus Heizung Logamatic;7/0/1;Heizung Vorlauf Soll Obergeschoss;6;Temperatur (°C);Write;29 °C;
    …..

    Jetzt müßte die Textdatei importiert werden und folgende Spalten auswerten:
    Kategorien anhand der der Rubrik “Ziel” erstellt werden
    Datensätze wie folgt:
    X=Zeit
    Y=Daten

    Dann möchte ich eben die Kategorie “Heizung Vorlauf Soll Obergeschoss” als Linie darstellen, zusammen mit der Raum Temp, etc.
    Die Werte sollen eben anhand des Datums/Zeit in der X Achse angeführt werden.

    Kat.: “Heizung Vorlauf Soll Obergeschoss”
    X=2004-11-29 08:23:28.364 Y= 29 °C
    X=2004-11-29 09:22:33.214 Y= 35 °C

    Kat. “Temp Schlafzimmer”
    X=2004-11-29 08:23:28.364 Y=22,5 °C
    ….

    Ich hoffe ich konnte mein Anliegen erklären. Das Problem ist aber noch das die Kategorien in der Spalte “Daten” steht . Daher muss alles korrekt eingelesen werden.
    In OriginLab habe ich dazu ein Script. Dieses erstellt für jede Kategorie eine seperates Workssheet.
    Kann mir hier im Forum ein Spezialist sowas “basteln”

    Vielen Dank und ich hoffe innerhalb eines Monats Hilfe zu bekommen, dann dann läuft meine Demo Aus 😉

    Hannes

    #9088
    Bernhard KantzBernhard Kantz
    Participant

    Use the text file wizard to import the data:
    1) Step 1 of 4
    Choose the method Automatic
    2) Step 3 of 4:
    Line with names: 1
    Line with units:
    Data Types Y-columns: Strings
    Data Types X-column: Calendar times Y M D h m s
    Column with X-values: 2

    Write a FPScript formula Data to convert the dataset Daten into 32-bit floating point values:

    
    FloatingPoint32 Daten
    

    Write a FPScript formula for each category:

    
    dim i, idx
    For Each Value i In Ziel Do
    	if Ziel == "Heizung Vorlauf Soll Obergeschoss" then
    		idx = idx : i
    	end
    end
    Signal(Data[idx],Zeit[idx])
    

    Support@weisang.com

    #9089

    Hallo

    Nun, soweit funktioniert dies, jedoch habe ich 365 CSV Datein, jeweils für einen Tag (oder etwas mehr)
    Wenn ich die in einen eigenen Ordner jeweils importiere, funkt. das Script nicht mehr (FloatingPoint32), da die Daten dann in 01_01_2005 liegen und nicht im Hauptverzeichniss.

    Ist es nun sinnvoll jede Datei in einen eigenen Ordner zu importieren und ein Script erstellen, das alle Ordner durchsucht und die Dataset “Daten” zusammenfügt (Laut Datum) ?

    Oder besser alles in ein Dataset und diese dann einfach anhand des Datum aufsteigend sortieren? Jedoch sind dann ca. 1.825.000 Datensätze enthalten. Doch etwas zu gross, oder?

    Im Diagramm soll dann die ganzen Datensätze der jeweiligen Kategorie angezeigt werden und mittels Datum der anzeigebereich ausgewählt werden.

    Vielen Dank und great support

    Hannes

    #9090
    Bernhard KantzBernhard Kantz
    Participant

    If you want to analyse the data of one day seperately there are two possibilities:

    a) You can copy the formulas in each folder. Then the calculation works.
    b) You can activate one folder. See Active Folder in the online help.

    If you want to analyse the data of a year you can write a FPScript formula which collects the results of the formulas in the subfolder:

    
    dim list, idx, Formula, oObj
    list = .FLD.ObjectNames(".*.FLD")
    For Each Value idx in List Do
    	oObj = "\" : List[idx] : "\formula"	
    	oObj = $oObj$
    	Formula = Formula : oObj
    End
    

    Support@weisang.com

    #9091

    Danke nochmal für die Hilfe, aber ich würde gerne folgendes mit dem Programm realisieren:

    Anlegen der Kategorien wie bereits das Script arbeitet.

    Jedoch beim Import sollen die passenden Daten in den passenden Kategorien erweitert werden.
    Ob Flexpro 6.0 die Daten bei einem Diagramm automatisch sortiert (Datum/Zeit) weiß ich noch nicht, sonst müßte es auch sortiert werden. Aufsteigend nach dem Datum.

    Für die Ordner habe ich folgendes gedacht:
    Ordner “Data” {Alle Scripte mit den Arbeitschritten um den Import zu filtern)
    Ordner “CSV” für die Ablage der Daten nach den Import (Wiederum im Ordner einen Ordner für jede Datei. Also max. 365)
    Ordner “Diagramme” für die erstellten Diagramme

    Jetzt bräuchte ich dafür wohl ein Script, das mir die ganzen Ordner (inkl. Unterordner) in “CSV” durchsucht, und nach Kategorien sortiert, wie das erste Script vom Support.

    Oder ist es möglich für den Import ein Script zu generieren, das mir gleich den Import filtert, so wie ich es momentan in Origin habe?
    In Spalte 2 (Zeit) der csv steht das Datum/Zeit
    In Spalte 9 (Ziel) steht die Kategorie, nach der Sortiert wird
    In Spalte 13 (Daten) steht der Wert, der zur Kategorie und zum Datum paßt.
    Importiert soll nur werden wenn in Spalte 12 (Typ) der Wert “Write” steht

    Es geht darum die ganzen Daten zu sammeln und diese, nach Auswahl des Anfangs-, Enddatum zu visualisieren. Die Daten werden aber nach und nach importiert und so die Datenbank ergänzt. Es soll aber für jede Kategorie eine Datenbank sein.

    Nochmal vielen Dank

    Hannes

    #9092
    Bernhard KantzBernhard Kantz
    Participant

    For these steps you should write a VBA macro (FlexPro Professional). With VBA you can write a special import filter, …
    The object model provides you with access to all FlexPro functions. Creating your own applications with FlexPro Professional is easy because you can record as many operational steps as you want in a macro and then afterwards edit it using the Visual Basic Code Editor.

    Unfortunately the VBA development environment is not included in the demo version.

    Support@weisang.com

    #9093

    Ok, Vielen Dank

    Ich hätte aber noch ein paar Fragen, die mir bei der Demo Version aufgefallen ist:

    * Mein Datensatz mit 1902 Datensätze inkl. Signal wird im Diagramm korrekt angezeigt.
    Jedoch ist die Funktion Vergrößern, bzw Lupe grau hinterlegt und funkt. nicht.
    Ist dies nur bei der Demo nicht möglich oder sind spezielle Gegebenheiten erforderlich?

    * Könnte ich, bei einem Diagramm, den Hintergrund bei gewissen Zeiten farblich ändern?
    Ich würde gerne von 20.00 Abends bis 7.00 Früh einen dunkleren Hintergrund nehmen, um die Nacht besser erkennen zu können. Also jeden Tag ab 20.00 bis nächsten Tag 7.00 ist der Hintergrund dunkler.

    * Ist der Support in VBA auch so ausgezeichnet, wie hier? 🙂

    * Ist es möglich ein Fenster angezeigt zu bekommen, wo man den Kalender sieht und so die Start und Endzeit anklicken kann? (Das wäre dann aber schon Top)

    Ich möchte auch noch das Programm loben, was ich bis dato gesehen habe und werde wohl von Origin auf Flex umsteigen.

    Vielen Dank

    Hannes

    #9094
    Bernhard KantzBernhard Kantz
    Participant

    1) You can only use the magnifier in a document. In a diagram you can zoom the area between the cursors or you can zoom the area with the mouse.
    2) You could insert a rectangle signal in the diagram and fill the surface between this signal and the X-axis.
    3) With VBA you can create a dialog (with a calendar) where you can select the start and the end time. For example there are the Microsoft MonthView Control.

    Support@weisang.com

    #9095

    Zu 2)

    Ich habe in der Hilfe nichts gefunden. Kann ich einen Tipp bekommen wie ich dies in der Demo einfüge? Jeden Tag von 0.00-6.00 und von 20.00-0.00 soll ein graues Rechteck eingefügt werden.

    Außerdem ist mit dem folgenden Script nur die Filterung von einen Tag möglich?
    dim i, hDataset
    For Each Value i In Ziel Do
    if Ziel == “Heizung Vorlauf Soll Obergeschoss” then
    hDataset = hDataset : Signal(Data#1, Zeit#1)
    end
    end
    hDataset

    #9096
    Bernhard KantzBernhard Kantz
    Participant

    Here you can use the TimeFilter-function which searches a data set with calendar time values for periodic time segments. Use the operation EVENT_INDEX. With the collected indices you can create a new rectangle signal.

    
    dim idx, rect,max, min
    min = GlobalMinimum(Signal1.Y,EVENT_EXTRACT)
    rect = min[0]  # NumberOfValues(Signal1)
    idx = TimeFilter(Signal1, HOUR, 20, 6, EVENT_INDEX)
    max = GlobalMaximum(Signal1.Y,EVENT_EXTRACT)
    rect[idx] = max[0]
    Signal(rect,Signal1.X)
    

    Insert this signal in the diagram with the original signal and fill the surface between the curve and the axis.

    Support@weisang.com

    #8332

    Hallo

    Ich arbeite mit OriginLab und möchte nun Flexpro testen, ob es meinen Ansprüche erfüllt.
    Dies sind:
    Import einer CSV Datei (; – getrennt)
    Temperaturverläufe nach einer Datumleiste (X) anzeigen.

    Die CSV Datei hat folgenden Inhalt:
    #;Zeit;Service;Best.Fehl./Wiederh.;Prio;Quelladr.;Quelle;Zieladr.;Ziel;Rout;DPT;Typ;Daten;

    1;2004-11-29 08:23:17.678;vom Bus;- / ;L;1.1.6;2fach mit RTR Merten EDV Raum ;5/0/0;Ist Temp EDV;6;Temperatur (°C);Write;19,7 °C;
    2;2004-11-29 08:23:23.477;vom Bus;- / ;L;1.1.7;4 fach Taster mit RTR Merten Schlafzimmer ;2/0/1;Stellgröße Schlafzimmer / Schrankraum;6;-;Write;10 %;
    3;2004-11-29 08:23:23.637;vom Bus;- / ;L;1.1.3;Thermo Antrieb Aktor Siemens;5/4/1;Ventilstellung Schlafzimmer;6;Prozent;Write;19 %;
    4;2004-11-29 08:23:25.339;vom Bus;- / ;L;1.1.15;FM446 Buderus Heizung Logamatic;7/5/0;Kessel Ist Temp;6;Temperatur (°C);Write;48 °C;
    5;2004-11-29 08:23:28.364;vom Bus;- / ;L;1.1.15;FM446 Buderus Heizung Logamatic;7/0/1;Heizung Vorlauf Soll Obergeschoss;6;Temperatur (°C);Write;29 °C;
    …..

    Jetzt müßte die Textdatei importiert werden und folgende Spalten auswerten:
    Kategorien anhand der der Rubrik “Ziel” erstellt werden
    Datensätze wie folgt:
    X=Zeit
    Y=Daten

    Dann möchte ich eben die Kategorie “Heizung Vorlauf Soll Obergeschoss” als Linie darstellen, zusammen mit der Raum Temp, etc.
    Die Werte sollen eben anhand des Datums/Zeit in der X Achse angeführt werden.

    Kat.: “Heizung Vorlauf Soll Obergeschoss”
    X=2004-11-29 08:23:28.364 Y= 29 °C
    X=2004-11-29 09:22:33.214 Y= 35 °C

    Kat. “Temp Schlafzimmer”
    X=2004-11-29 08:23:28.364 Y=22,5 °C
    ….

    Ich hoffe ich konnte mein Anliegen erklären. Das Problem ist aber noch das die Kategorien in der Spalte “Daten” steht . Daher muss alles korrekt eingelesen werden.
    In OriginLab habe ich dazu ein Script. Dieses erstellt für jede Kategorie eine seperates Workssheet.
    Kann mir hier im Forum ein Spezialist sowas “basteln”

    Vielen Dank und ich hoffe innerhalb eines Monats Hilfe zu bekommen, dann dann läuft meine Demo Aus 😉

    Hannes

    #9097

    Auf den ersten Blick gibt dieser Thread schon Antworten auf fast alle meine Fragen. Aber eine hab ich noch: Wenn ich anstelle der langen Beschreibungstexte (wie z.B. “Heizung Vorlauf Soll Obergeschoss”) nur eine Referenznummer habe, die auf eine Id in der zweiten Tabelle zeigt, in der dann die richtigen Texte stehen – wie bekomme ich die wieder zusammen in eine Tabelle bzw. zusammen in einem Diagramm dargestellt?

    Gruß

    #9098
    Bernhard KantzBernhard Kantz
    Participant

    FlexPro features a very flexible index operator. If the reference is a direct index in the dataset with the long descriptions you can access them by

    
    DatasetWithLongDescriptionTexts[IndexDataset]
    

    where IndexDataset can be a scalar value or a dataset. Please note that the values in IndexDataset neither have to be increasing nor continuous. Please see the online help for more information on the possibilities of the index operator.

    Support
    support@weisan.com

    #9099
    Bernhard KantzBernhard Kantz
    Participant

    FlexPro features a very flexible index operator. If the reference is a direct index in the dataset with the long descriptions you can access them by

    
    DatasetWithLongDescriptionTexts[IndexDataset]
    

    where IndexDataset can be a scalar value or a dataset. Please note that the values in IndexDataset neither have to be increasing nor continuous. Please see the online help for more information on the possibilities of the index operator.
    Please note: The above mentioned limitation regarding VBA in the demo version is gone now in FlexPro 7.

    Support
    support@weisang.com

Viewing 14 posts - 1 through 14 (of 14 total)
  • You must be logged in to reply to this topic.