Hallo Dirk,
Dein Problem hört sich zunächst sehr einfach an, ist aber leider etwas komplizierter zu lösen.
Deswegen möchte ich etwas ausholen und systematisch die Dinge kurz ansprechen und eventuell etwas "aufhellen", die bisher angesprochen worden sind.
1)
CTX-Dateien: Können aus Tai Pan heraus hergestellt werden; Katalog-Modul -> Sicherung -> Sichern -> Katalogstruktur. Mit ihnen kann nur die Katalogstruktur gesichert und widerhergestellt werden, d. h. diese Datei ist eine reine Textdatei. Sie enthält in der ersten Zeile den Namen des zu sichernden Katalogs, in jeder weiteren Zeile folgt ein Eintrag für ein einzelnes Assett mit dem Aufbau SYMBOL(nicht ISIN bzw. WKN!!!) - Leerraum - KURZNAME. Sie enthält die
Assettnamen, aber keinerlei Kursdaten. Deshalb die "komische" Fehlermeldung mit der roten Hand zum "logischen" Export!
Hat man diesen Aufbau verinnerlicht, kann man mit einem Texteditor auch über eine selbsterstellte CTX-Datei jeden gewünschten Katalog zusammenstellen und in Tai Pan EoD einlesen lassen.
Beispiel: Liest man die Datei
beliebigerName.CTX mit folgendem Inhalt
Testkatalog
846900 DE: DAX
über Sichern -> Restaurieren -> Katalogstruktur in Tai Pan EoD ein, wird in Tai Pan der Katalog "Testkatalog" angelegt, der im konkreten Beispiel dann ein einzelnes Assett, den DAX enthält. (Beim Dialog zum Restaurieren erkennst Du bereits in der Datenbank vorhandene Kataloge am Sternchen hinter dem Katalognamen.)
Wichtig hierbei: Du kannst einen bereits vorhandenen
Katalog nicht restaurieren, ohne ihn vorher umzubenennen! Ist der Katalog "Testkatalog" in Tai Pan noch nicht vorhanden,
wird er
neu angelegt. Steht in der CTX-Datei eine falsches SYMBOL/ein falscher Kurzname wird dieses "
neue Assett"
nicht neu angelegt. Es wird nach Beendigung des Imports der Katalogstruktur eine Fehlermeldung ausgegeben; der/die exakten Fehler können in der Textdatei
beliebigerName.ERR nachgelesen werden, welche im Falle eines Fehlers im Export/Import-Verzeichnis von Tai Pan EoD angelegt wird.
Problem ist also: Du kannst mit CTX-Dateien beliebigen Einfluß auf die Katalogstruktur nehmen, nicht jedoch auf (nicht vorhandene Assetts bzw. nicht vorhandene) Kursdaten.2)
TPW-Dateien:
Diese Dateien enthalten prinzipell den Namen des Katalogs, den Namen des/der Assetts (KURZNAME) und
die Kursdaten.
Ist bei der Sicherung ein einziges Assett angewählt, enthält die resultierende TPW-Datei Katalogname, Assettname und die Kursdaten dieses einen Assetts; ist ein Katalog angewählt, enthält die resultierende TPW-Datei den Katalognamen, dann folgt der erste Assettname mit den entsprechenden Kursdaten, dann der zweite Assettname mit entsprechenden Kursdaten, usw.. Sind mehrere Kataloge angewählt, wird für jeden einzelnen Katalog eine eigene TPW-Datei angelegt. Die einzelnen TPW-Dateien werden einfach durchnumeriert (1.TPW, 2.TPW usw.)
Wichtig hierbei: Die genaue Struktur der TPW-Dateien hat L&P nicht offengelegt. Aus diesem Grund kannst Du über TPW-Dateien zwar Kursdaten (über Tai Pan) sichern und bei Bedarf auch wieder herstellen; das ist aber auch schon alles. "Eigene" Verwendung ist praktisch ausgeschlossen, da Du die Struktur von TPW-Dateien mit den von Dir gewünschten Daten nicht "nachbauen" kannst.
3)
DP-Dateien: Sie werden u.a. von L&P zum Einlesen von Daten aller Art (Kursdaten, Stammdaten, kurzum (fast) alles, wofür in der Datenbank ein Datenbankfeld vorhanden ist) in die Datenbank verwendet. Es handelt sich hierbei um reine Textdaten, d.h. die gesamte Datei ist mit einem Texteditor lesbar, editierbar und für "Eigenanwendungen" leicht selbst erstellbar. Die Art der Daten wird durch bestimmte "Schlüsselwörter" festgelegt, das was mit den Daten passieren soll (Korrektur, Neuanlage eines Assetts) wird durch "Anweisungsblöcke" (also letztendlich ebenfalls über bestimmte "Schlüsselwörter" umgesetzt.)
Wichtig hierbei: Obwohl es sich um eine reine Textdatei handelt, sind die Kursdaten (OPEN, HIGH,LOW,CLOSE) durch einen Algorithmus "codiert" (um Speicherplatz zu sparen und die Download-Zeiten zu verkürzen). Der erste Kurs ist allerdings
nicht codiert, alle darauffolgenden Kursdaten sind es!
Beispiel: Aus einer Zeile mit den
echten Kurswerten
111111;14.05.2013;102;100;110;98;99000
wird in einer DP-Datei ("Allgorithmus" = Differenz (als
Beispielallgorithmus, der für DP-Dateien verwendete Allgorithmus ist komplizierter))
111111;14.05.2013;102;
-2;8;-4;99000
Daraus folgt: (Fast) alle Aussagen von Michael sind völlig richtig (Kleine Ausnahme: Alle Kursdaten eines Tages hintereinander in einer Zeile geht auch
). Du kannst über DP-Dateien (solange in jeder Zeile
nur ein einziger Kurswert steht, uncodierte "echte" Kursdaten einer Vielzahl von Assetts einlesen lassen. Willst Du allerdings "eigene" DP-Dateien mit
allen Kursdaten in einer Zeile erstellen, mußt Du drei der vier Kursdaten "Deiner" Wertpapiere bei der Erstellung "Deiner" DP-Datei umcodieren, denn beim Einlesen in die Datenbank werden die Kursdaten systembedingt "zwangsweise" decodiert, damit dann die "echten" Kursdaten in der Datenbank stehen.
Ich denke, aufgrund meiner bisherigen Ausführung ist nun klar geworden,
warum all das, was Michael bereits ausgeführt hat, so ist wie es ist.
Nun zu einer
möglichen Lösung Deines Problems:
Was Du zunächst unbedingt brauchst ist also eine Anleitung für das DP-Format, in der auch der "Verschlüsselungsalgorithmus" beschrieben ist. Diese Anleitung liegt in Dateiform bereits vor. Ich weiß nicht, wie lange Du bei Tai Pan schon "dabei" bist. Früher (ca. TP-Version 5 bis 7) wurde besagte Datei mit Tai Pan definitiv auf dem Datenträger migeliefert - dies ist bei neueren Versionen seit geraumer Zeit wohl nicht mehr der Fall.
Wenn Du so eine "alte" TP-Version nicht mehr haben solltest, sag kurz Bescheid, damit ich Dir die Datei in irgendeiner Form zukommen lassen kann.
Nun nur noch kurz zu einer
möglichen Vorgehensweise.
1) Kursdaten in Form einer Excel-Tabelle anlegen (alle untereinander, keine Leerzeilen!). Dabei auf richtige Zusammenstellung und Reihenfolge der Datenspalten achten!!! (entsprechend DP-Spezifikation).
2) Excel-Tabelle hierbei mit richtigen
echten Kursdaten füllen.
3) Gegenalgorithmus (zur
Verschlüsselung) als Formel entwickeln. (In der DP-Anleitung ist meiner Erinnerung nach nur der Algorithmus zur
Entschlüsselung beschrieben (d h. ohne Formelbeispiel!!!)
3) Weitere "baugleiche" Excel-Tabelle anlegen (durch Kopie des gesamten Datenblatts; die zu verschlüsselnden drei Kursdatenspalten danach löschen). In die erste Zelle der ersten Zeile dieser Tabelle für zu verschlüssende Kursdaten die Formel mit Bezügen zur ersten Zelle der ersten Zeile der Ursprungstabelle (der mit den echten Kursdaten) schreiben.
4) Danach diese Zelle durch Ziehen des "Anfassers" (in der rechten unteren Ecke der Zelle) auf alle zu verschlüsselnden Kursdaten nach rechts und unten übertragen. Die Formel werden hierbei kopiert und hinsichtlich ihrer Bezüge automatisch angepaßt. Deine gesamten Kursdaten sind nun vollständig verschlüsselt - die Tabelle ist fertig!
5) Excel-Tabelle als CSV-Datei exportieren (Eine CSV-Datei enthält Deine Excel-Tabelle in Textform mit dem Semikolon als Trennzeichen zwischen den einzelnen "Zellen"). Diese ist "fast" DP-konform.
6) CSV-Datei in DP-Datei umbenennen.
7) Datei in Texteditor laden und nachbearbeiten. Nachbearbeiten heißt: Du mußt an den Stellen mit Kursdatenzeilen, die sich auf unterschiedliche Assetts beziehen, noch Leerzeilen einfügen und mit Anweisungen füllen, was mit den nachfolgenden Kursdaten die sich auf ein einziges Assett beziehen "passieren" soll (Neuanlage eines noch nicht vorhandenen Assetts, Kurskorrektur, Aktualisierung etc. Die dazu benötigten Informationen bzw. Schlüsselwörter stehen alle in der Anleitung.) Datei abschließend als DP-Datei speichern denn nun sollte sie vollständig konform in Bezug auf die DP-Spezifikation sein.
DP-Datei einlesen - fertig.
Mögliche Probleme: es kann sein, daß es Dir nicht gelingt, den Gegenalgorithmus als Formel (in einer Excel-Tabelle) zu entwickeln. Formeln in Excel-Tabellen sind bezüglich ihrer Länge beschränkt! Sollte es nicht klappen, kann die Entwicklung des Gegenalgorithmus und der Eintrag desselben in alle zu verschlüsselnden Zellen der Excel-Tabelle relativ leicht über ein Makro/Excel-VBA realisiert werden.
Damit sind wir aber leider noch nicht
ganz fertig, denn ein Sachverhalt darf nicht vergessen werden:
Das SYMBOL von Tai Pan weicht häufig von der WKN ab. Tai Pan "braucht" das, um (bei Assetts, welche in der Datenbank mehrfach vorhanden sind) die Assetts an ihren unterschiedlichen Börsenplätzen (bezüglich der Kursdaten) eindeutig zuordnen zu können.
Beispiel: BASF;
WKN: BASF11;
SYMBOL für Börsenplatz Frankfurt: BASF11
SYMBOL für "Börsenplatz" XETRA: B15100
Deine CSV-/Excel-Datei, welche ja die WKNs Deiner Wertpapiere enthält, muß, für den Fall daß Du
reale und keine fiktiven Assetts benutzen und mit "Testdaten" versorgen möchtest, irgendwie "umcodiert" werden, d.h. die WKNs müssen durch die Tai Pan eigenen SYMBOLs ersetzt werden. Excel bietet für diesen Austausch viele effektive Möglichkeiten, auf die ich jetzt hier allerdings nicht mehr eingehen möchte.
So, das wars. Ich hoffe, ich war halbwegs verständlich, und meine Ausführungen haben etwas zum allgemeinen Verständnis der Problematik beigetragen, einen möglichen Lösungsweg skizziert und nebenbei auf den einen oder anderen "Stolperstein" auf diesem Weg hingewiesen.
Viele Grüße
hound dog