Neue Module 95_Shares.pm und 95_ShareMaster.pm

Begonnen von Prof. Dr. Peter Henning, 08 April 2022, 15:08:46

Vorheriges Thema - Nächstes Thema

Prof. Dr. Peter Henning

Ich habe zwei neue Module eingecheckt, die zur komfortablen Verwaltung und Anzeige von Wertpapierdepots dienen können. Während das Backend eine Weiterentwicklung und Umstrukturierung des STOCKQUOTES-Moduls ist, ist die Anzeige im Frontend deutlich verbessert.

Doku hier:https://wiki.fhem.de/wiki/Module_Shares_und_ShareMaster - leider aus Zeitgründen noch nicht so ausführlich, wie ich es gerne hätte. Hier ist Mithilfe gefragt, um die Anleitung zu ergänzen, die Grundlagen sind dieselben wie beim Modul STOCKQUOTES.

LG

pah

Edit: SVN-Probleme behoben, Dateien sind im SVN.

rudolfkoenig

ZitatWie schon seit einigen Jahren kann ich zwar Module in SVN hochladen - aber kein commit _neuer_ Dateien machen.
Wie lautet die Fehlermeldung?

Prof. Dr. Peter Henning

#2
Das haben wir beide uns schon beim letzten Mal gefragt. Ich benutze einen Synchro SVN Client, der mir normalerweise keinerlei Probleme bereitet. Ergebnis wie schon seit Jahren beim einchecken eines neuen(!) Moduls:
Zitat[16:18:23] - Creating commit packet(s)...
[16:18:23] - 1 packet created.

[16:18:23] - svn commit -m "" 1 packet
[16:18:24] - Adding         /home/phenning/soft/FHEM/fhem/FHEM/95_ShareMaster.pm
[16:18:24] - Adding         /home/phenning/soft/FHEM/fhem/FHEM/95_Shares.pm
[16:18:24] - Transmitting file data...
[16:18:24] - Refreshing files state...
[16:18:24] - Refresh done
[16:18:24] - Vorgang ist fehlgeschlagen

LG

pah

Edit: Was sagt denn das Log des Servers? Meine Kiste jedenfalls behauptet, dass ich nur das Recht zum Einchecken hätte, wenn bereits eine Version eingecheckt sei.

rudolfkoenig

Danke.
Bin begeistert von der detaillierten Fehlermeldung.

Prof. Dr. Peter Henning


enno

Moin,

ich habe Shares heruntergeladen. Ist es richtig, dass ich noch apt install libfinance-quote-perl installieren muss? Oder gibt es etwas mit weniger Abhängigkeiten? Danach lief es sofort.

Gruss
  Enno
Einfacher FHEM Anwender auf Intel®NUC

rudolfkoenig

ZitatWas sagt denn das Log des Servers?
Nichts was ich als Fehler deuten koennte.
Soweit ich sehe sind auch unsere svn-Berechtigungen identisch.
Danach habe ich versucht die beiden Dateien einzuchecken:
svn: E160020: Commit failed (details follow):
svn: E160020: File already exists: filesystem '2b470e98-0d58-463d-a4d8-8e2adae1ed80', transaction '25936-ky8', path '/trunk/fhem/FHEM/95_ShareMaster.pm'

Danach konnte ich die beiden Dateien per "svn update ." auschecken:
Zitat# $Id: 95_ShareMaster.pm 25936 2022-04-08 15:35:44Z phenning $
:)

Prof. Dr. Peter Henning

ich habe sie gerade auch per svn Kommandozeile eingecheckt - das ging, wobei die Frage ist, ob sich die beiden Aktionen nicht überschnitten haben.

Das Einzige, was ich an Auffälligkeit gefunden habe: Der syncro-SVN-Client setzt beim Einchecken ein "AM 95_Shares.pm" ab, während der Kommandozeilen-Client nur ein "A 95_Shares.pm" absetzt.

Aber danke Dir für die Mühe, Hauptsache, das steht jetzt drin.

LG

pah

Prof. Dr. Peter Henning

@enno:

Zitatapt install libfinance-quote-perl

So isses. Ich schreibs noch ins Wiki.

LG

pah

betateilchen

Zitat von: Prof. Dr. Peter Henning am 08 April 2022, 16:21:06
Das haben wir beide uns schon beim letzten Mal gefragt. Ich benutze einen Synchro SVN Client, der mir normalerweise keinerlei Probleme bereitet.

Der Syncro SVN Client ist ja auch schon ein paar Tage alt und schon länger deprecated.
Insofern sind gewisse Inkompatibilitäten zu aktuellen SVN repositories wahrscheinlich nicht auszuschließen.

Zitat
Effective October 1, 2019, the Syncro SVN Client has been discontinued and is no longer available for purchase.
Syncro SVN Client will reach End of Maintenance (EoM) on March 15,2020 and End of Support (EoSupport) on September 15, 2020.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

JoWiemann

Hallo,

ich habe nach Wiki zunächst ein Depot mit: define <Depotname> Shares angelegt und zwei Shares über das Attribut stocks hinzugefügt. Soweit ok. Dann habe ich mit: define <Depotname> ShareMaster <Unterdepot1> [<Unterdepot2>]* einen Master angelegt, dabei aber nur den Befehl: define <Depotname> ShareMaster abgesetzt. Hat nicht zu einem Fehler geführt. Ein löschen dieses Device führte dann zu einem Absturz von Fhem mit folgendem Fehler bekommen:


2022.04.12 16:11:54 1: PERL WARNING: Scalar value @Wochentage[...] better written as $Wochentage[...] at ./FHEM/99_myUtils.pm line 914, <DATA> line 1.
Undefined subroutine &main::ShareMaster_Undefine called at /opt/fhem/fhem.pl line 3934.
2022.04.12 16:09:20 1: PERL WARNING: Use of uninitialized value $depotSummary{"depot_diff_day"} in sprintf at ./FHEM/95_ShareMaster.pm line 373.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $estyle in concatenation (.) or string at ./FHEM/95_ShareMaster.pm line 495.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/95_ShareMaster.pm line 468.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $change in concatenation (.) or string at ./FHEM/95_ShareMaster.pm line 468.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $trend in numeric eq (==) at ./FHEM/95_ShareMaster.pm line 454.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $trend in numeric gt (>) at ./FHEM/95_ShareMaster.pm line 454.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $trend in concatenation (.) or string at ./FHEM/95_ShareMaster.pm line 453.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $trend in numeric eq (==) at ./FHEM/95_ShareMaster.pm line 453.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $trend in numeric gt (>) at ./FHEM/95_ShareMaster.pm line 453.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $change in numeric eq (==) at ./FHEM/95_ShareMaster.pm line 451.
2022.04.12 16:09:15 1: PERL WARNING: Use of uninitialized value $change in numeric gt (>) at ./FHEM/95_ShareMaster.pm line 451.
2022.04.12 16:09:15 1: [ShareMaster_Define] defining a master depot
[code]

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

betateilchen

Lösche die Zeile 111 in 95_ShareMaster.pm, dann passiert das nicht mehr.

(vermutlich ein copy&paste Fehler aus 95_Shares.pm)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Prof. Dr. Peter Henning

Ups, sorry. Habe das gefixt und das 95_ShareMaster.pm neu eingecheckt.

Aber wer löscht auch ein Depot...

LG

pah

Prof. Dr. Peter Henning

#13
ZitatEffective October 1, 2019, the Syncro SVN Client has been discontinued and is no longer available for purchase.
Syncro SVN Client will reach End of Maintenance (EoM) on March 15,2020 and End of Support (EoSupport) on September 15, 2020.

Hm, ist Bestandteil meines oXygen XML Editor, dessen Lizenz ich alle 3 Jahre verlängere.

In der aktuellen Version, die ich gerade installiert habe (Build vom März 2022) ist Syncro SVN nach wie vor dabei, aber als "überholt" geflaggt. Und stattdessen zusätzlich ein Git-Client dabei. Mal sehen, ob der mit dem FHEM-Repository zurecht kommt....

Edit: Natürlich nicht, der kann wirklich nur Git. Schade, Syncro SVN ist ein echt gutes Tool gewesen. Werde ich so lange wir möglich weiter nutzen.


LG

pah

ToKa

Hallo pah,

vielen Dank für die Modernisierung von STOCKQUOTES und die fertige Darstellung von Depots mit ShareMaster. Ich habe jetzt mal alles nach Shares "portiert" und die Werte passen perfekt.

Nur eine unschöne Sache gibt es bei Namen, die ein "&" enthalten wie z.B. "L&G PHARMA BREAKTHROU". Dann schneidet das Modul den Namen nach "&" ab, weil es das Trennzeichen ist. Das ist im Modul Stockquotes ebenso und ich hatte deshalb "&" gegen "#" getauscht. Das betrifft die Zeilen 714 und 816 in Deinem Modul. Falls aus Deiner Sicht nichts dagegenspricht, wäre es klasse, wenn Du das ändern könntest.

Einen Featurewunsch hätte ich noch: Wäre es möglich beim set buy / sell die vorhandenen Symbole in einem zweiten Dropdown darzustellen, so dass man dann nur die Anteile und den Wert im Textfeld angeben muss?

Viele Grüße
Torsten
RaspberryPi3 mit RaZberry2 und Conbee II
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Shelly2.5 Rollladenaktoren
Zipato Bulb 2, Osram und InnrLight