Das Programm PC-Kaufmann von Sage ist ein bekanntes Buchhaltungsprogramm. Leider lassen die Export-Funktionen etwas zu wünschen übrig. Es ist aber relativ leicht möglich, die internen Buchhaltungsdaten in eine beliebige andere Datenbank zu übertragen und dann weiterzuverarbeiten.
Alle Mandanten-Daten werden von PC-Kaufmann in einer *.pck Datei gespeichert (findet man i.A. unter C:\Dokumente und Einstellungen\All Users\Anwendungsdaten\Sage\PC-Kaufmann\Data). Diese Datei ist in Wirklichkeit eine Microsoft Access Datenbank, nur hat sie die Dateiendung *.pck anstelle *.mdb . Kopiert man diese Datei z.B. nach db.mdb, kann man sie mit Microsoft Access öffnen.
Warning |
---|
Achtung: man sollte nur auf eine Kopie der Daten zugreifen, niemals auf die Originaldaten! |
Mit Access 97 ließ sich eine umbenannte PC-Kaufmann-Datei problemlos öffnen, nicht aber mit Access 2003 oder Access 2007. Es gab immer die Fehlermeldung "Das aktuelle Benutzerkonto ist nicht berechtigt, diese Datenbank zu konvertieren oder zu aktivieren".
Konvertierung nach MySQL
Eine Access-Datenbank kann man leicht nach MySQL (oder nach Oracle oder in irgendein anderes Format) konvertieren, indem man eine ODBC-Verbindung zur gewünschten Datenbank erstellt und in einem zweiten Schritt dann die Access-Datenbank exportiert, wobei man als Ziel die neue ODBC-Verbindung auswählt. Das kann bei einer Datenbank mit vielen Tabellen jedoch sehr mühsam werden, da man jede Tabelle einzeln exportieren muss. In diesem Fall sollte man besser ein Konvertierungsprogramm einsetzen. Ich habe ganz gute Erfahrungen mit den Produkten der Firma Intelligent Convertersgemacht, die zahlreiche Konvertierungsprogramme für alle möglichen Ausgangs- und Zielformate anbietet. Sehr praktisch an den Konvertern dieser Firma ist, dass man sie auch von der Kommandozeile aus starten kann, d.h. man kann sich eine kleine Batch-Datei schreiben, die man nach jeder Nutzung von PC-Kaufmann doppelklicken kann und die dann die gesamten Daten (oder nur die benötigten Tabellen) automatisch auf den MySQL Server kopiert.
Zugriff
Es gibt sehr viele PC-Kaufmann-Tabellen, und die meisten enthalten ziemlich viele Felder. Welche Daten welches Feld enthält, ist nicht immer klar, aber die wichtigsten Informationen findet man schnell raus.
Adressen
No Format |
---|
select PersKtoNummer as "ID", PersKtoName1 as "Name", PersKtoName2 as "Zusatz", PersKtoStrasse as "Strasse", PersKtoLaendercode as "Land", PersKtoLandPlz as "PLZ", PersKtoOrt as "Ort", PersKtoLetzterUmsatz as "Letzter Umsatz" from sPersKto where PersKtoArt = 68 |
Die Konstante '68' ist möglicherweise bei jeder PC-Kaufmann-Installation unterschiedlich.
Artikel
No Format |
---|
select ArtNr as "Best. Nr.", ArtName1 as "Bezeichnung", ArtName2 as "Zusatz", round(ArtVkPreis_0,2) as "Preis" from sArtikel order by ArtNr asc |
Rechnungen
No Format |
---|
select ABFDocErfNr as "Rechnungs-Nr.", ABFDocDatum as "Datum", round(ABFDocSumme,2) as "Gesamt", ABFDocKundenNr as "Kunden-Nr.", ABFDocKundeKurzbez as "Kunde", ABFPosArtNr as "Art. Nr.", round(ABFPosMenge,2) as "Anz.", round(ABFPosEPreis,2) as "Preis", round(ABFPosMenge*ABFPosEPreis,2) as "Summe", ABFPosName1 as "Name", ABFPosName2 as "Zusatz" from ABFDok, ABFPos where ABFPos.ABFPosDocId = ABFDok.ABFDocId order by ABFDocDatum desc |
Umsätze pro Monat
No Format |
---|
select date_format(ABFDocDatum, "%Y-%m") as "Monat", sum(ABFDocSumme) as "Summme" from ABFDok group by date_format(ABFDocDatum, "%Y-%m") |