Stammdaten-Datenimport aus externen Datenquellen (CSV-Dateien)
Um Daten von außen in Shareholder zu übernehmen, um insb. diese in Auswertungen und Reports zu verwenden, ist es möglich sogenannte "Autoimport-Aktienlisten" zu verwenden. Es ist dabei wieder möglich
Ab der 13.8 Version ist es möglich im Daten-Import-Verzeichnis Autoimport-Aktienlisten abzulegen in einem freien CSV-Format. Als mögliche Datenquelle hierfür kann z.B. ein comdirect Musterdepot dienen, was in dieser Form mit bestimmten Kennzahlen angereichert ist und als CSV exportiert werden. (siehe https://www.comdirect.de/pbl/service/supportfaq/FaqRH.do?faqId=319)
Das konkret verwendete Format wird dann in Form von Konfigurations-Dateien im INI-Format beschrieben. Die Zuordnung zwischen den Konfigurationen und den Importdateien erfolgt anhand eines Dateinamen-Vergleichs. Der Name der Konfigurationsdatei muss dabei immer Teil der zu importierenden CSV-Datei sein. Mit dieser Umsetzung ist es damit möglich mehrere CSV - Dateien mit nur einer INI-Datei zu beschreiben.
Im folgenden Beispiel wird damit für die CSV-Dateien, die gemeinsame Konfiguration "Autoimport-Aktienliste.INI" benutzt.
- Autoimport-Aktienliste_Kurz_TRH_meineuebersicht_20161108_1343_p1.csv
- Autoimport-Aktienliste_Kurz_TRH_meineuebersicht_20161108_1343_p2.csv
Konfigurations-Setups
Nutzbare Zuordnungs-Schlüssel
Schlüssel
|
Typ
|
Hinweise
|
---|---|---|
ciBezeichnung |
Zeichenkette |
|
ciWKN |
Zeichenkette |
Deprecated und sollte nur im Notfall genutzt werden, da in der Standard-Auslieferung von shareHOLDER primär immer die ISIN verwendet wird |
ciISIN |
Zeichenkette |
|
ciAktientyp |
Zeichenkette |
|
ciDatum |
Datum |
|
ciZeit |
Zeit |
|
ciKurs |
Gleitkommawert |
|
ciVariable.xxxx |
Zeichenkette |
ciVariable.comdirectImportJahreshoch = X d.h. Variable 'comdirectImportJahreshoch' wird angelegt und mit dem Wert aus der Spalte X belegt. Variablen stehen immer an der Aktie und werden dort gespeichert |
Zum jetzigen Zeitpunkt ist der Import daher primär darauf ausgelegt Daten in Variablen der Titel abzulegen und so in Reports oder für zusätzliche Datenspalten genutzt zu werden. Eine spätere Interpretation z.B. von KGV, Ergebnis-Daten etc. ist möglich. Bitte schreiben Sie an support@shareholder24.de, wenn hierfür tatsächlich Bedarf besteht.
Beispiel-Setup
Nachfolgend eine Beispiel-Konfigurationsdatei mit den zugehörigen Erläuterungen aus einem Comdirect-Muster-Depot-Export:
# Beispieldatensätze: # "21st Century Fox Inc. Registered Shares B DL -,01";"A1WZPY";"Aktie";"24,606";"EUR";"24,61";"22:25:51";"07.11.16";"28,68";"21,16";"-4,95%";"-12,11%";"15,57";"1,11%"; # "Aareal Bank AG Inhaber-Aktien o.N.";"540811";"Aktie";"32,05";"EUR";"32,05";"13:28:04";"08.11.16";"35,95";"21,51";"+8,02%";"-6,50%";"9,79";"6,24%"; # # Zur Vorbereitung wird nachfolgend einfach ein Beispieldatensatz mit den fortlaufenden Zuordnungs-Index aufgelistet, um danach die Ableitungen daraus zu machen: # # 0 - "Bezeichnung"; "21st Century Fox Inc. Registered Shares B DL -,01" # 1 - "WKN"; "A1WZPY" # 2 - "Typ"; "Aktie" # 3 - "Aktuell"; "24,606" # 4 - "Whg."; "EUR" # 5 - "Wert in EUR"; "24,61" # 6 - "Zeit"; "22:25:51" # 7 - "Datum"; "07.11.16" # 8 - "Jahreshoch"; "28,68"; # 9 - "Jahrestief"; "21,16" # 10- "Perf. 6 Monate"; "-4,95%" # 11- "Perf. 1 Jahr"; "-12,11%" # 12- "KGVe"; "15,57" # 13- "DIVe"; "1,11%" # Sollte nur gesetzt werden, wenn der Name tatsächlich übernommen werden soll. Sonst bitte einfach auskommentieren! ciBezeichnung = 0 ciWKN = 1 ciAktientyp = 2 # Es wird immer der EUR-Wert übernommen ciKurs = 5 ciZeit = 6 ciZeit.shorttimeformat = hh:nn:ss ciDatum = 7 ciDatum.shortdateformat = dd.mm.yy ciVariable.comdirect.Import.Jahreshoch = 8 ciVariable.comdirect.Import.Jahrestief = 9 ciVariable.comdirect.Import.Perf6M = 10 ciVariable.comdirect.Import.Perf12M = 11 ciVariable.comdirect.Import.KGVe = 12 ciVariable.comdirect.Import.DIVe = 13
Zugriff in Reports auf die speziellen Variablen-Imports
Innerhalb eines Reports kann nun direkt über den XML-Pfad "Aktie/Variablen" zugegriffen werden. Nachfolgend ein einfaches Beispiel:
<xsl:for-each select="Depot/Unrealisiert/Werte/Wert"> <xsl:sort select="Name"/> <xsl:variable name="b"><xsl:value-of select = "translate(translate(Gewinn,'.',''),',','.')"/></xsl:variable> <xsl:variable name="color"> <xsl:if test="$b < 0">red</xsl:if> <xsl:if test="$b > 0">green</xsl:if> </xsl:variable> <tr> <td class="{$color}" align="" valign="top" width=""><xsl:value-of select="Name"/></td> <xsl:variable name="ISIN"><xsl:value-of select="ISIN"/></xsl:variable> <td align="right" valign="top" width=""><xsl:text> </xsl:text> </td> <td align="right" valign="top" width=""><xsl:value-of select="ISIN"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="Stk"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="KK"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><font color="green"><xsl:value-of select="AK"/></font><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="/Depot/Kennzahlen/Aktie[ISIN=$ISIN]/Kurse/Tag/Datum"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="/Depot/Kennzahlen/Aktie[ISIN=$ISIN]/Variablen/Variable[@Name='comdirect.import.jahreshoch']"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="/Depot/Kennzahlen/Aktie[ISIN=$ISIN]/Variablen/Variable[@Name='comdirect.import.perf6m']"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="/Depot/Kennzahlen/Aktie[ISIN=$ISIN]/Variablen/Variable[@Name='comdirect.import.dive']"/><xsl:text> </xsl:text></td> <td align="right" valign="top" width=""><xsl:value-of select="/Depot/Kennzahlen/Aktie[ISIN=$ISIN]/Variablen/Variable[@Name='comdirect.import.vortrag']"/><xsl:text> </xsl:text></td> </tr> </xsl:for-each>