Neu Rechnungsdruck per Kommandozeile

harlix

Aktives Mitglied
10. Januar 2013
8
4
Hallo zusammen,

gibt es eine Möglichkeit, die Funktion 'Rechnung erstellen und drucken', bzw. 'Rechnung erstellen und als PDF speichern' per Kommandozeile unter Angabe der entsprechenden Auftragsnummer zu triggern? Kann die Kommandozeilenversion der Ameise diesen Arbeitsschritt ausführen? Hintergrund ist, dass eine externe Anwendung spezifische Rechnungen in PDF-Form automatisiert erzeugen und verschicken soll.

Viele Grüße,

Felix
 

harlix

Aktives Mitglied
10. Januar 2013
8
4
DANKE, damit habt ihr mir sehr geholfen. Die Möglichkeit, die JTLwawiExtern.dll zu nutzen, kannte ich noch gar nicht. Für mich als Programmierer klingt das sehr vielversprechend, ich hoffe, dass die entsprechenden API-Methoden "herausgeführt" sind :)

Viele Grüße,
Felix
 

gre000

Sehr aktives Mitglied
28. Juli 2015
948
137
Hallo,
Marco's Software hatte zu dem Thama mal ein paar meiner Meinung sehr nützliche Tipps gegeben:

AW: (Manuelle) Workflows per Kommandozeile/API starten

3 kurze Hinweise für alle, die die WawiExtern.dll nutzen :

1) diese ist als nur unter 32Bit Umgebungen kompiliert, falls ihr 64Bit oder gemischt nutzen wollt, müsst ihr euch einen kleinen Wrapper schreiben
2) bitte beachtet, dass wenn ihr die Assembly erst dynamisch zur Laufzeit ladet, diese nicht wieder entladen werden, bevor der Workflow durchgelaufen ist. Manche Workflows wie beispielsweise die, die mit Mails zu tun haben werden asynchron abgearbeitet. Rückgabe der jeweiligen Methode ist also u.U. bevor die Workflow durch ist - wer zu diesem Zeitpunkt aber schon wieder entlädt, verhindert die weitere Ausführung des Workflows.
3) Manche Bibliotheken die von der WawiExtern (nach)geladen werden (z.B. Mail) prüfen ihre benötigten Lizenzen im realen Ausführungsverzeichnis (wenn die dann fehlt gibts lustige Fallbacks wie die gleiche Mail zig mal zu senden oder einfach den Text innerhalb der Mail ändern ;) ). Ein einfaches setzen der AppDomain BaseDirectory aufs JTL Programmverzeichnis reicht hier nicht, ebenso CurrentDirectory per Invoke. Was geht ist das legen eines Wrappers ins JTL Programmverzeichnis (oder gar der eigenen Anwendung) wovon wir aber dringend abraten würden, weil einfach unsauber (und du weißt nie, wer wann was bei welcher Install / Uninstall / Update Action wie wo und warum aufräumt). Guter gangbarer Weg ist der Aufruf eines eigenen Wrappers aus dem eigenen Verzeichnis per ProcessStart und dem setzen des Working Directories aufs JTL Programmverzeichnis (für entsprechende nachzuladende Lizenzen). Hat gleichzeitig den Vorteil, dass damit auch direkt Punkt 1) abgearbeitet werden kann.
 

harlix

Aktives Mitglied
10. Januar 2013
8
4
Vielen Dank. Ich habe es hinbekommen, die dll einzubinden und darin enthaltene Methoden wie JTL_SpeicherRechnung zu triggern (32-Bit-Applikation). Leider ist die Doku zu der API ziemlich dürftig und die Fehlerbehandlung ist auch nicht gut gelöst. Tritt bei einer Methode z. B. ein Datenbank-Verbindungsfehler auf, öffnet sich ein GUI-Fenster, welches manuell quittiert werden muss. Für eine auf einem dedizierten Server laufende Anwendung ohne ständige Benutzerbesetzung ist so etwas nicht akzeptabel. Besser wären aussagekräftige Rückgabewerte, die vernünftig ausgewertet und behandelt werden können. Hier bleibt zu hoffen, dass JTL die API in Zukunft desbezüglich noch anpasst. - Die durchgängige Benutzung von deutschen Bezeichnern für Variablen und Funktionen auf der eigentlich international englisch geprägten Programmierebene ist wohl Geschmackssache.
Für das Speichern von Rechnungen ist die API für mich aber erstmal soweit akzeptabel.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu E-Mail Vorlage Versandbestätigung per Workflow ausführen, wie? JTL-Workflows - Ideen, Lob und Kritik 0
Neu Ameise-Vorlage per SQL abrufen und Daten als Ergebnis erhalten JTL Ameise - Eigene Exporte 1
Neu Erstattungen per Paypal bei Stornierungen wird öfter nicht ausgezahlt Arbeitsabläufe in JTL-Wawi 0
Neu Artikel per Dropshipping versenden und selbst versenden Arbeitsabläufe in JTL-Wawi 1
ebay Angebotsindividuelle Einstellungen setzen per Ameise? JTL-Wawi 1.9 0
Neu Rechnung automatisch per Mail versenden User helfen Usern - Fragen zu JTL-Wawi 9
In Diskussion Rechnungsentwurf per Workflow? JTL-Workflows - Ideen, Lob und Kritik 7
Neu Wie finde ich per SQL heraus welche Aufträge auf Teillieferbar stehen? JTL Ameise - Eigene Exporte 1
Neu Rechnung per Email aus LS-Pos Fragen rund um LS-POS 0
Lieferantenbestellung mit GLS Versandetikett an den Hersteller/Lieferanten per Mail Senden. JTL-Wawi 1.8 0
Neu Mollie Zahlung per Kreditkarte (25% Fehlschlag) User helfen Usern - Fragen zu JTL-Wawi 1
Neu Per WMS Workflow API Call ausführen Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Berichtscontainer per Formel sortieren Druck-/ E-Mail-/ Exportvorlagen in JTL-Wawi 0
Neu Frage zur Kartonagen Verwaltung in JTL WMS 1.8 - Karton per Scan ersetzen? Arbeitsabläufe in JTL-WMS / JTL-Packtisch+ 1
Neu Ware direkt in ein Standardlager einbuchen per SQL StoreProcedure dbo.spWarenlagerEingangSchreiben Schnittstellen Import / Export 8
Rechnung per Mail - Anhang (Rechnung) wird nicht erzeugt. JTL-Wawi 1.9 2
In Diskussion Versand bei Selbstabholern per Worker setzen JTL-Workflows - Fehler und Bugs 3
Neu Per Plugin Felder für das Newsletter-Anmeldungs-Template hinzufügen Technische Fragen zu Plugins und Templates 2

Ähnliche Themen