Referenzen in der Struktur der XML-Datei


#1

Hallo,

ich hatte mir gedacht, ich könnte doch die Kontobewegungen in PP über die XML-Datei mit meinem Haushaltsbuch kurzschließen, dazu hätte ich einen kleines SYNC-Script geschrieben.

Nun habe ich mir die XML-Datei mal angesehen und die Kontobewegungen mit all den Referenzen a la …/…/…/…/…/ sind mit einem einfachen Script natürlich nicht in den Griff zu bekommen.

Da ich immer gerne was dazu lerne:

Gibt es eine bestimmte Parsertechnik mit der man sowas automatisiert verarbeitet, steckt da insgesamt irgendein generelles Konzept dahinter oder ist das eine PP-spezifische Herangehensweise?

Entsteht durch die Referenzen nicht eine enorme Redundanz?

Will sagen, wenn ich eine Buchung habe, ergibt sich die Gegenbuchung doch logisch, ohne das ich sie im XML nochmal speichern müsste, oder?

Will niemandem die Zeit stehlen, aber falls jemand Lust hat, klärt mich auf.

Danke.


#2

Ich habe ein mittelgroßes :wink: Skript geschrieben, um diese Referenzen aufzulösen und mittels Schlüsseln abzubilden. (Vor dem Hintergrund, die Daten in einer mobilen App zu lesen.)

PP verwendet XStream um die Java-Objekte zu (de-)serialisieren und das erzeugt in diese reference-Attribute.

Du kannst also – wenn Du mit Java arbeiten magst – analog zu PP die XML-Datei mittels XStream (de-)serialisieren. Du könntest Dich am Sourcecode von PP orientieren und so lesend und ggf. auch schreibend zugreifen (Backup nicht vergessen).

Alternativ kannst Du wie ich per Skript die Datei verarbeiten. Aktuell funktioniert das nur lesend.

Alternativ kannst Du den CSV-Export bemühen. Ggf. lassen sich diese Daten leichter verarbeiten.

Du möchtest die Buchung aber von beiden Seiten her finden, daher benötigst Du eine Referenz auf der anderen Seite.


#3

Hey Thomas,

Danke für die Antwort. Ich hab heute eine Stunde an einem Importer geschrieben und dann aufgegeben. XStream scheint entweder nach dem Chaosprinzip zu strukturieren oder irgendeine Art Graph abzubilden, ich verstehe es nicht und das ist keine gute Grundlage wenn es um Zahlen und Präzision geht. Ich mache fast alles mit PHP und XStream scheint für nix außer Java implementiert worden zu sein.

Jetzt eben über die CSV’s. :slight_smile:

Grüße.


#4

Ich habe ein mittelgroßes :wink: Skript geschrieben, um diese Referenzen aufzulösen und mittels Schlüsseln abzubilden. (Vor dem Hintergrund, die Daten in einer mobilen App zu lesen.)

Hallo Thomas,
würdest Du das Script zur Verfügung stellen, mt dem Du die Referenzen auflöst? Ich suche nach einem Weg, die PP-Datei von aussen zu editieren, z.B. um Attribute zu Wertpapieren regelmäßig von außen zu ändern, statt sie von Hand zu editieren. Vielleicht bringt mich DEin Script da ein Stückchen weiter?
Hab leider keinerlei Java-Skills, um mich an das Programm selber ranzuwagen…
Liebe Grüße,
Udo


#5

Ich schreibe Dich mal direkt an. Das geht leider mit dem Skript nicht, denn nach Auflösen der Referenzen kannst Du zwar lesen, editieren, etc. aber um die Datei wieder zu schreiben, musst Du die Referenzen wieder erzeugen.