Elster-Plugin für die Finanzbuchhaltung EasyCash&Tax
Branch: master
Clone or download
thomiel Der Senden-Knopf wurde u.U. deaktiviert. Beim Klicken von Aktualisier…
…en wird das Übertragungslog ggf. wieder ausgeblendet und die Formular-Liste wieder gezeigt.
Latest commit 4cbb12d Jan 29, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Initial commit Jan 21, 2019
AboutDlg.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
AboutDlg.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
DokumentCtrl.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
DokumentCtrl.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.def LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.ico LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.idl LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.iss Der Senden-Knopf wurde u.U. deaktiviert. Beim Klicken von Aktualisier… Jan 29, 2019
ECTElster.rc Der Senden-Knopf wurde u.U. deaktiviert. Beim Klicken von Aktualisier… Jan 29, 2019
ECTElster.sln LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster.vcproj LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElsterCtrl.bmp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElsterCtrl.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElsterCtrl.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElsterPropPage.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElsterPropPage.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ECTElster_i.c veraltete USt-VA-Felder ausgeblendet; Release-Konfiguration auf .ocx … Jan 25, 2019
ECTElsteridl.h veraltete USt-VA-Felder ausgeblendet; Release-Konfiguration auf .ocx … Jan 25, 2019
EinstellungCtrl.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
EinstellungCtrl.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
Elster.gif LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
Elster256x256.bmp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
Elster256x256.png LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
Elster48x48.bmp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
ElsterDlg.cpp Der Senden-Knopf wurde u.U. deaktiviert. Beim Klicken von Aktualisier… Jan 29, 2019
ElsterDlg.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
FormularCtrl.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
FormularCtrl.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
LICENSE LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
LIZENZ.TXT LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
QuickEdit.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
QuickEdit.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
QuickList.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
QuickList.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
README.md LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
RegExp.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
RegExp.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
XMLite.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
XMLite.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
faliste.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
platform.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
resource.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
stdafx.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
stdafx.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
targetver.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
tmChkStrNr.cpp LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019
tmfanr.h LGPL-Release, Vorab-Version von v2.11 Jan 21, 2019

README.md

ECTElster - Elster-Plugin für die Finanzbuchhaltung EasyCash&Tax

Voraussetzungen:

  • VS2017 Community Edition
    • mit Visual C++ ATL für x86 und x64
    • mit Visual C++ MFC für x86 und x64
    • inkl. einer passenden Windows SDK
  • aktuelle ERiC-SDK

Bauen:

  • ECTElster.sln in VS2017 öffnen
  • Bei den Projekteigenschaften -> Konfigurationseigenschaften -> Bibliotheksverzeichnisse sicherstellen, dass die ein geeignetes SDK für die ucrt library enthalten ist, z.B. "C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86"
  • gleiches unter C/C++ -> Allgemein -> zusätzliche Header-Dateien, z.B. "C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt"
  • wenn man Visual Studio nicht ständig als Admin laufen lassen will, kann es die .ocx-Datei nicht während des Build-Vorgangs mit registrieren. Das ist nicht schlimm. Man kann es einmal manuell mit regsvr32.exe ECTElster.ocx im Debug-Verzeichnis machen und dann den Fehler ignorieren.

Debuggen:

ericapi.dll, ericxerces.dll und eSigner.dll aus dem ERiC-SDK ( z.B. C:\Program Files (x86)\Elster\ERiC-29.2.6.0\Windows-x86\dll ) sowie das gesamte plugins2-Verzeichnis in das Debug-Unterverzeichnis kopieren. Dort auch Kopien der Dateien des EC&T-Hauptprogramms ablegen (EasyCT.exe, EasyCTXP.dll, ECTIFace.dll, CrashSender1402.exe und crashrpt_lang.ini werden benötigt)

Verpacken:

  • InnoSetup herunterladen ( http://www.jrsoftware.org/isdl.php )
  • InnoSetup starten
  • ECTElster.iss öffnen
  • ggf. sigenes Software-Signaturzertifikat bei SignTool= anpassen
  • ggf. Pfade und AppVerName= anpassen

Hinweise zum Hacken:

Die eigentliche Musik spielt in ElsterDlg.cpp. Es wird dort im Kern eine ListCtrl Abwandlung namens QuickList verwendet und darin der Aufbau des Formulars nachgeahmt. Wenn eine Validierung via ERiC-API erfolgreich ist, kann es mit dieser API versendet werden.

ERiC Update Checkliste

  1. aktuelle Version des ERiC-SDK downloaden (wofür man erst einmal ein Passwort anfragen muss): https://www.elster.de/elsterweb/entwickler/infoseite/eric (als entwickler einloggen)
  2. common.zip nach C:\Programme (x86)\Elster entpacken
  3. windows-x86.jar mit 7zip öffnen, Setup.exe entpacken & starten
  4. Windows-x86\dll Verzeichnis mit Vorversion abgleichen
  5. Windows-x86\dll\plugins2 Verzeichnis checkUStVA_20XX.dll und commonData.dll mit Vorversion abgleichen
  6. Änderungen in ECTElster.iss anpassen und Pfad ändern (replace all "C:\Program Files (x86)\Elster\ERiC-##.#.#.#")
  7. VC_redist.x86.exe aus dem alten ERiC-Basisverzeichnis ins neue kopieren
  8. checken, ob eriapi.dll immer noch die VC2017 runtime version benutzt wird
  9. Windows-x86\lib\ericapi.lib --> ECTElster
  10. Windows-x86\include*.h --> ECTElster
  11. Version in ressouces und .iss hochsetzen, copyright in About-Dialog aktualisieren
  12. #define TESTVERBINDUNG in ElsterDlg.cpp -- Kommentarzeichen entfernen
  13. ECTElster.sln mit Debug-Konfiguration neu bauen
  14. Test-Datei mit aktuellem Buchungsjahr übertragen
  15. // #define TESTVERBINDUNG -- wieder auskommentieren, um Plugin scharf zu schalten
  16. ECTElster.sln mit Release-Konfiguration neu bauen
  17. .iss bauen und installieren

Credits:

Dank gebührt Olaf Stüben von Winston, der bei der ersten Version des Plugins behilflich war. Außerdem wird folgende Software vom Plugin verwendet:

  • ERiC-API der bayrischen Finanzverwaltung
  • XMLite: leichtgewichtige Klassen für XML-Parsing
  • CRegExp: Klasse für reguläre Ausdrücke von Henry Spencer, CodeGuru-Post durch Zafir Anjum
  • QuickList: CListCtrl replacement von PEK