- Beiträge: 9
Globale If-Then-Abfrage vor Import
- Dr. Oliver Schwindler
- Autor
- Offline
- Benutzer
Weniger
Mehr
13 Jahre 3 Wochen her #679
von Dr. Oliver Schwindler
Globale If-Then-Abfrage vor Import wurde erstellt von Dr. Oliver Schwindler
Hallo Herr Stark,
ich stehe wiedermal vor einer difizilen Import-Situation, die ich gerne mit FlowHeater lösen möchte.
Ich wäre Ihnen sehr dankbar, wenn Sie hierzu wieder ein passendes FlowHeater-Skript erstellen könnten.
Die Ausgangslase ist wie folgt:
Es soll täglich eine Datei (xls) mit den entsprechenden Infos in eine SQLite-Datenbank eingelesen werden. Allerdings enthält die Datei nicht an jedem Tag Informationen sondern ist an manchen Tagen "leer". Die entsprechenden Beispiel Dateien habe ich wie folgt bezeichnet: mit Infos (Daten_full.xls) und ohne Infos (Daten_empty.xls)
Sofern die Excel Datei Informationen enthält, soll die Summe aus Buys (Buy/Sell: und den Sells (Buy/Sell: S) ermittelt werden und in das Feld "Option_Premium_realized" in den Table "Positions" mit entsprechendem Datum eingetragen werden.
Sofern die Excel-Datei allerdings keine Infos enthält und nur den Disclaimer beinhaltet, soll das entsprechende Datum mit dem Wert 0 eingetragen werden.
Das "aktuelle" Datum könnte wenn nötig aus einer anderen SQLite-Datenbank bezogen werden: MSF_Vola_VIX_Data.db
Das Datum würde immer mit dem letzten Datum der Zeitreihe in dem "VIX_DATA" Table übereinstimmen.
Ich dachte eventuell lässt sich so etwas mit einer globalen If-Abfrage erstellen. Deshalb das Thema...Aber villeicht liege ich aufh falsch.
Jedenfalls schon mal vielen Dank für Ihren exzelleten Support um Voraus.
Mit freundlichen Grüßen,
Oliver Schwindler
ich stehe wiedermal vor einer difizilen Import-Situation, die ich gerne mit FlowHeater lösen möchte.
Ich wäre Ihnen sehr dankbar, wenn Sie hierzu wieder ein passendes FlowHeater-Skript erstellen könnten.
Die Ausgangslase ist wie folgt:
Es soll täglich eine Datei (xls) mit den entsprechenden Infos in eine SQLite-Datenbank eingelesen werden. Allerdings enthält die Datei nicht an jedem Tag Informationen sondern ist an manchen Tagen "leer". Die entsprechenden Beispiel Dateien habe ich wie folgt bezeichnet: mit Infos (Daten_full.xls) und ohne Infos (Daten_empty.xls)
Sofern die Excel Datei Informationen enthält, soll die Summe aus Buys (Buy/Sell: und den Sells (Buy/Sell: S) ermittelt werden und in das Feld "Option_Premium_realized" in den Table "Positions" mit entsprechendem Datum eingetragen werden.
Sofern die Excel-Datei allerdings keine Infos enthält und nur den Disclaimer beinhaltet, soll das entsprechende Datum mit dem Wert 0 eingetragen werden.
Das "aktuelle" Datum könnte wenn nötig aus einer anderen SQLite-Datenbank bezogen werden: MSF_Vola_VIX_Data.db
Das Datum würde immer mit dem letzten Datum der Zeitreihe in dem "VIX_DATA" Table übereinstimmen.
Ich dachte eventuell lässt sich so etwas mit einer globalen If-Abfrage erstellen. Deshalb das Thema...Aber villeicht liege ich aufh falsch.
Jedenfalls schon mal vielen Dank für Ihren exzelleten Support um Voraus.
Mit freundlichen Grüßen,
Oliver Schwindler
Anhang Files-20111031.zip wurde nicht gefunden.
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Niels
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 11
13 Jahre 3 Wochen her #681
von Niels
Niels antwortete auf Aw: Globale If-Then-Abfrage vor Import
Die Frage ist in der Tat, ob man das unbedingt mit einem globalen Filter machen muss. Da steht ja erst einmal eine andere Frage im Vordergrund:
Wie sollen die Daten eingefügt werden?
a. Sollen die Daten additiv hinzugefügt werden?
b. Werden bestehende Daten vorher gelöscht?
c. Oder sollen sogar vorhandene Datensätze aktualisiert werden.
Ich denke mal es ist a.! Bei Möglichkeit a. und b. sehe ich keine Probleme. Da passiert einfach nichts, wenn keine Daten da sind, nur bei c. sehe ich ein Problem. Da fehlt bei Excel ein Index um die Daten wieder zu erkennen.
Problematischer ist es evtl. schon, dass die Daten erst in Zeile 3 beginnen und der Text darunter. Hier ist wohl eher eine dicke Zange nötig um das entsprechend zu biegen.
Niels
Wie sollen die Daten eingefügt werden?
a. Sollen die Daten additiv hinzugefügt werden?
b. Werden bestehende Daten vorher gelöscht?
c. Oder sollen sogar vorhandene Datensätze aktualisiert werden.
Ich denke mal es ist a.! Bei Möglichkeit a. und b. sehe ich keine Probleme. Da passiert einfach nichts, wenn keine Daten da sind, nur bei c. sehe ich ein Problem. Da fehlt bei Excel ein Index um die Daten wieder zu erkennen.
Problematischer ist es evtl. schon, dass die Daten erst in Zeile 3 beginnen und der Text darunter. Hier ist wohl eher eine dicke Zange nötig um das entsprechend zu biegen.
Niels
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
13 Jahre 3 Wochen her #684
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Aw: Globale If-Then-Abfrage vor Import
Ich gehe mal davon aus, dass die Daten hinzugefügt werden sollen. Zusätzlich vermute ich dass die Daten in den einzelnen Zeilen aufsummiert werden sollen, so dass lediglich nur ein Datensatz in die SQLite Tabelle geschrieben werden soll.
Ich habe Ihnen dazu ein kleines Beispiel erstellt. Für das aktuelle Datum verwende ich den Now Heater . Das Datum aus einer weiteren Tabelle zu lesen geht nur wenn sich diese in der gleichen SQLite Datenbank befindet.
Der GroupBy Heater gruppiert alle Datensätze der READ Seite zu einem Datensatz der WRITE Seite zusammen. Während der Gruppierung wird die Summe berechnet, die dann als Ergebnis in die SQLite Datenbank geschrieben wird.
Es werden immer alle Excel Zeilen gelesen inkl. der letzten Zeile mit dem Disclaimer. Diese verursacht bei der Ausführung eine Warnung, die Sie ignorieren müssen. So wird auch der Wert 0 in die Datenbank geschrieben wenn in der Excel Tabelle keine Daten vorhanden sind.
Eine IF-THEN-ELSE Bedingung oder ein Filter sind so nicht notwendig.
Ich habe Ihnen dazu ein kleines Beispiel erstellt. Für das aktuelle Datum verwende ich den Now Heater . Das Datum aus einer weiteren Tabelle zu lesen geht nur wenn sich diese in der gleichen SQLite Datenbank befindet.
Der GroupBy Heater gruppiert alle Datensätze der READ Seite zu einem Datensatz der WRITE Seite zusammen. Während der Gruppierung wird die Summe berechnet, die dann als Ergebnis in die SQLite Datenbank geschrieben wird.
Es werden immer alle Excel Zeilen gelesen inkl. der letzten Zeile mit dem Disclaimer. Diese verursacht bei der Ausführung eine Warnung, die Sie ignorieren müssen. So wird auch der Wert 0 in die Datenbank geschrieben wenn in der Excel Tabelle keine Daten vorhanden sind.
Eine IF-THEN-ELSE Bedingung oder ein Filter sind so nicht notwendig.
Anhang excel_import_sqlite.zip wurde nicht gefunden.
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Dr. Oliver Schwindler
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 9
13 Jahre 2 Wochen her #687
von Dr. Oliver Schwindler
Dr. Oliver Schwindler antwortete auf Aw: Globale If-Then-Abfrage vor Import
Hallo Herr Stark,
Sie haben wieder einmal mit Ihrem Skript den Nagel auf den Kopf getroffen.
Auf Grund Ihres Hinweises habe ich nun eine neue Tabelle mit dem Namen DATES in der Datenbank aufgenommen. Diese enthält nur die Variable Date.
Anstelle das heutige Datum zu verwenden würde ich gerne immer das letzte Datum (max(rowid)) beim Einlesevorgang verwenden. Ich habe bereits die ein oder andere Variante mit dem Look-up Heater versucht. Leider ohne Ergebnis.
Ich wäre Ihnen dankbar, wenn Sie entsprechenden Eigenschaften des Look-up Heater setzen könnten.
Vielen Dank fpr Ihren Support.
Mit besten Grüßen,
Oliver Schwindler
Sie haben wieder einmal mit Ihrem Skript den Nagel auf den Kopf getroffen.
Auf Grund Ihres Hinweises habe ich nun eine neue Tabelle mit dem Namen DATES in der Datenbank aufgenommen. Diese enthält nur die Variable Date.
Anstelle das heutige Datum zu verwenden würde ich gerne immer das letzte Datum (max(rowid)) beim Einlesevorgang verwenden. Ich habe bereits die ein oder andere Variante mit dem Look-up Heater versucht. Leider ohne Ergebnis.
Ich wäre Ihnen dankbar, wenn Sie entsprechenden Eigenschaften des Look-up Heater setzen könnten.
Vielen Dank fpr Ihren Support.
Mit besten Grüßen,
Oliver Schwindler
Anhang Files-20111102.zip wurde nicht gefunden.
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- FlowHeater-Team
- Offline
- Administrator
13 Jahre 2 Wochen her #688
von FlowHeater-Team
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
FlowHeater-Team antwortete auf Aw: Globale If-Then-Abfrage vor Import
Hallo Herr Dr. Schwindler,
der Datenbank Lookup Heater ist zugegegen etwas schwierig in der Anwendung. Deshalb gibt es seit Version 2.2.1 den neuen SQL Heater . Hier können Sie das SQL Statement
select max(date) from dates
eintragen um das letzte Datum aus der SQLite Tabelle DATES zu lesen. Als Ausführungszeitpunkt wählen Sie "Start" den Rückgabewert müssen Sie noch in einem Parameter zwischenspeichern. Diesen Parameter rufen Sie dann mit dem ebenfalls neuen Parameter Heater ab und weisen den Wert Ihrem Datumswert zu.
In der Anlage habe ich Ihre Definition um diese Funktionalität erweitert.
PS: SQLite unterstützt keinen Datumstyp. Evtl. müssen Sie noch das Format Ihres Datums umstellen, damit das SQL MAX Statement auch den richtigen (aktuellen) Datensatz erwischt. Z.B. Format (yyyy-mm-dd)!
der Datenbank Lookup Heater ist zugegegen etwas schwierig in der Anwendung. Deshalb gibt es seit Version 2.2.1 den neuen SQL Heater . Hier können Sie das SQL Statement
select max(date) from dates
eintragen um das letzte Datum aus der SQLite Tabelle DATES zu lesen. Als Ausführungszeitpunkt wählen Sie "Start" den Rückgabewert müssen Sie noch in einem Parameter zwischenspeichern. Diesen Parameter rufen Sie dann mit dem ebenfalls neuen Parameter Heater ab und weisen den Wert Ihrem Datumswert zu.
In der Anlage habe ich Ihre Definition um diese Funktionalität erweitert.
PS: SQLite unterstützt keinen Datumstyp. Evtl. müssen Sie noch das Format Ihres Datums umstellen, damit das SQL MAX Statement auch den richtigen (aktuellen) Datensatz erwischt. Z.B. Format (yyyy-mm-dd)!
Anhang excel_import_sqlite_2.zip wurde nicht gefunden.
gruß
Robert Stark
Wurde Ihre Frage damit beantwortet? Bitte geben Sie ein kurzes Feedback, Sie helfen damit auch anderen die evtl. ein ähnliches Problem haben. Danke.
Anhänge:
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
- Dr. Oliver Schwindler
- Autor
- Offline
- Benutzer
Weniger
Mehr
- Beiträge: 9
13 Jahre 2 Wochen her #696
von Dr. Oliver Schwindler
Dr. Oliver Schwindler antwortete auf Aw: Globale If-Then-Abfrage vor Import
Vielen Dank Herr Stark,
wieder mal eine perfekte Lösung für mein Problem.
Ich wünsche Ihnen eine schöne Woche.
Mit besten Grüßen,
Oliver Schwindler
wieder mal eine perfekte Lösung für mein Problem.
Ich wünsche Ihnen eine schöne Woche.
Mit besten Grüßen,
Oliver Schwindler
Bitte Anmelden oder Registrieren um der Konversation beizutreten.
Ladezeit der Seite: 0.297 Sekunden