ans Buchen einen Aufruf eines externen Programmes anhängen

28. Januar 2011 18:12

Classic Client

Hallo,
ich stehe unter (falsch:Kreditoren/Rechnungen (also Einkaufsrechungen)) richtig: Bestellungen auf der Form und möchte wenn gebucht/fakturiert wird danach noch eine externe Funktion ausführen.
Wie grundsätzlich eine externe Funktion aufgerufen wird, das habe ich schon (z.B. wenn ich einen Button drücke)
Wie bringe ich das hin, dass es hinter das Buchen (F11) gelegt werden kann (und zwar so, dass die Daten noch aktiv sind, ich möchte nämlich Parameter wie Bestellnummer, Kreditorennummer und Rechnungsnummer übergeben.
Danke für wiedermal :mrgreen: WE-Unterstützung!
Zuletzt geändert von SGanzmann am 28. Januar 2011 23:39, insgesamt 2-mal geändert.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

28. Januar 2011 18:27

Hallo,

den Aufruf eines externen Programms während einer Schreibtransaktion halte ich für keine gute Idee. Sollte dieses Programm, aus welchen Gründen auch immer, hängen, hängt dein ganzes NAV. Besser ist es, die erforderlichen Daten während der Transaktion in einer Zwischentabelle zu sichern, und im Anschluss über den Aufruf des Programms mit dem Windows Scripting Host (WSH) (such mal hier im Forum) weiter verarbeiten.

Gruß, Fiddi

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

28. Januar 2011 23:36

Hallo nochmal zu später Stunde,
ich bin noch nicht wirklich weiter, daher nochmal konkreter, auch weil ich es zuerst falsch beschrieben hatte:

Beim Buchen einer Bestellung (konkret beim Fakturieren) wird für eine Bestellnummer eine Eingangsrechnungsnummer erzeugt.
Ich möchte gerne nach dem Fakturieren direkt im Anschluss die Bestellnummer, die Lieferantennummer und die erzeugte Eingangsrechnungsnummer als Parameter ausgeben um mit einem Befehl mein Archivierungsprogramm zu öffnen und aufgrund der 3 übergebenen Werte dem Archivierungsprogramm zu sagen, dass es die Dokumente unter dem Lieferanten mit den Belegen zur Bestellnummer mit denen zur Eingangsrechnung zusammenfassen kann und unter der Rubrik der Eingangsrechnung abspeichern soll.

Damit habe ich dann alle Dokumente bei den Eingangsrechnungnummern - das ist gut so, denn wenn ich keine Bestellung habe, nur eine (Eingangs)-Rechnung dann liegen alle Dokumente dazu auch bei der entsprechenden Eingangsrechnungsnummer (Eingangsrechnungen gibt es immer, Bestellungen nicht immer).

Wie gehe ich das konkret an, wenn ich praktisch exakt nach dem Buchen (F11) diese Ausgabe der Parameter hinkriegen will.
Danke nochmal, wer auch immer sich berufen fühlt.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

28. Januar 2011 23:57

Ging's nicht beim OnInsert der Rechnung? Da müssten doch alle Daten zur Verfügung stehen.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

30. Januar 2011 01:45

Danke McClane, das ist wahrscheinlich genau das richtige.
Ich starte die Übergabe wenn in der Tabelle "Purch. Inv. Header" eine neue Zeile dazukommt (also im On Insert trigger der Tabelle), dort sind dann auch alle Daten drin, super.

Am Montagmorgen werden wir sehen was die Realität dazu sagt...
....und vielleicht ehrt uns Fiddi auch noch mit einem Kommentar ??

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 12:50

Hallo,

wenn ihr das im Oninsert mit der externen Datei macht, was passiert dann, wenn die Transaktion abbricht? Die externe Datei/Programmaufruf wird durch den ERROR() im NAV nicht wieder gelöscht/zurückgedreht.

soviel zu meinem Kommentar :mrgreen:

Gruß, Fiddi

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 13:01

Dann setzt man die Daten eben in ein Probeverzeichnis oder eine SI-CU, die man hinter dem Buchen abfragt und erst dann die endgültige Datei schreibt.

Manchmal isser aber auch kleinlich :mrgreen:

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 13:10

McClane hat geschrieben:Manchmal isser aber auch kleinlich :mrgreen:


Nee, selbst schon reingefallen :-(

Du kannst es dann aber auch so machen, wie ich es schon vorgeschlagen habe, das kommt nämlich aufs gleiche raus, und ist abgesichert durch die Transaktion.

Gruß, Fiddi

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 13:20

Sicher, aber wenn man grad knapp mit Tabellen ist (und das ist man ja eigentlich ständig) ...

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 13:59

MacClane hat geschrieben:Sicher, aber wenn man grad knapp mit Tabellen ist (und das ist man ja eigentlich ständig) ...


machst du mit TempTable, kostet keine Lizenz :mrgreen:

Gruß, Fiddi

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 14:16

TempTable, wenn ich über zig verschiede Objekte fahre? Gibt's denn SI-TempTables?¿

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 14:48

Wenn du die Werte in der CU90 am Anfang weißt (sollte eigentlich so sein), dann kannst du es am Ende der Cu nach dem Commit immer noch auswerten, auch wenn es dazwischen über mehrere Objekte geht. Mach im Verkauf mit einer UPS- Schnittstelle genauso.

Gruß, Fiddi

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 14:51

Für die CU90 braucht er aber wieder die Lizenz zum Töten.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 15:02

Ich denke für die Purch. Inv. Header auch.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 15:13

fiddi hat geschrieben:Ich denke für die Purch. Inv. Header auch.

Nö, geht auch ohne.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 15:20

CU 1/80/90 (u.w.) plus Postentabellen braucht die Lizenz zum Töten ;-)

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 15:25

Hallo - darf ich auch noch was dazu sagen??

Puuuhhh! Das muss alles erstmal rein in meinen kleinen Kopf,
natürlich habe ich keine Lizenz zum Töten (was auch immer das im Zusammenhang NAV so ist),
daher würde mich das "Nö" konkreter interessieren.

Danke jedenfalls an die ganze Community, ich liebe Euch alle!

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 15:31

Ich weiß nicht welche Lizenz du hast, aber mit nem Table-Designer kommst du an die Trigger nicht ran.

Gruß, Fiddi
Zuletzt geändert von fiddi am 31. Januar 2011 16:31, insgesamt 1-mal geändert.

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 15:47

Nö=Application Builder :)

Re: ans Buchen einen Aufruf eines externen Programmes anhäng

31. Januar 2011 16:42

Also mit der "Lizenz zum Töten" ist die Solution-Developer-Lizenz gemeint, die normalerweise nur Partner und höher Ihr eigen nennen. Mit der Lizenz darfst du in NAV fast alles tun, u.a. die Buchungs- Codeunits 80+90 bearbeiten.

Bei deiner Anfrage würde ich mich allerdings an deinen NAV Partner wenden, der sollte das ganze an einer vernünftigen Stelle im System integrieren können, und evtl. noch einige Nebenkriegsschauplätze berücksichtigen, an die wir noch nicht gedacht haben, weil wir eure Anwendung nicht kennen.
Du kannst das ganze ja schon so vorbereiten, das er nur noch die Routinen in deiner Tabelle/Report/... an geeigneter Stelle aufrufen muss.

Gruß, Fiddi