New-InvoiceFromSalesOrder #
ÜBERSICHT #
Erstellt Lieferschein und Rechnung aus einem Auftrag per SQL-Prozedur.
SYNTAX #
New-InvoiceFromSalesOrder [[-OrderId] <int>] [[-OrderNo] <int>] [[-CustomerOrderNo] <string>]
[-BookOrder] [-BookDeliveryNote] [[-Conn] <__ComObject>] [[-Udl] <string>] [[-ConnStr]
<string>] [<CommonParameters>]
BESCHREIBUNG #
Diese Funktion erzeugt auf Basis eines vorhandenen Auftrags einen Lieferschein und eine Rechnung durch Aufruf der Prozedur dbo.cn_TraAfRe. Als Ergebnis wird ein Objekt mit den IDs und Nummern des erzeugten Lieferscheins und der Rechnung zurückgegeben.
Optional kann der Auftrag dabei gebucht werden (-BookOrder).
Der intern erzeugte Lieferschein wird ohne weiteren Parameter NICHT gebucht (LfBuchungsTyp 0). Der Vertrieb kann ihn dann noch prüfen, z.B. das Lager ändern, und manuell freigeben – allerdings kann die Standard-Prozedur aus einem ungebuchten Lieferschein KEINE Rechnung erzeugen (Fehler “No transferable line items found” aus cn_ReCreate). Für den Durchlauf in einem Zug den Switch -BookDeliveryNote setzen: der Lieferschein wird gebucht (cn_LfBuchen via LfBuchungsTyp 2) und die Rechnung entsteht direkt. Achtung: das Buchen des Lieferscheins kann installationsabhängig Folgeprozesse auslösen (Lagerbuchung, Versand-/Spediteur-Anbindung).
Die Verbindung erfolgt über eine vorhandene ADODB-Verbindung (Conn), eine UDL-Datei (Udl) oder einen Connection-String (ConnStr).
Es kann entweder eine OrderId, OrderNo oder CustomerOrderNo übergeben werden. Falls mehrere angegeben sind, wird die Reihenfolge beachtet: OrderId > OrderNo > CustomerOrderNo.
PARAMETER #
-OrderId #
Type: int
Die interne Auftrags-ID (af_id). Wird direkt verwendet, wenn vorhanden.
-OrderNo #
Type: int
Die externe Auftragsnummer (KopfNummer).
-CustomerOrderNo #
Type: string
Die Kunden-Bestellnummer (BestellNummer).
-BookOrder #
Type: switch
Wenn angegeben, wird der Auftrag beim Erzeugen der Rechnung gebucht.
-BookDeliveryNote #
Type: switch
Wenn angegeben, wird der intern erzeugte Lieferschein gebucht (LfBuchungsTyp 2), damit die Rechnung in einem Zug entstehen kann. Ohne den Switch bleibt der Lieferschein ungebucht zur manuellen Kontrolle und Freigabe – die Rechnungserzeugung schlägt dann mit “No transferable line items found” fehl.
-Conn #
Type: __ComObject
Bestehende ADODB-Verbindung.
-Udl #
Type: string
Pfad zu einer UDL-Datei zur Verbindungsherstellung.
-ConnStr #
Type: string
ADODB-Connection-String zur Verbindungsherstellung.
AUSGABEN #
PSCustomObject
Objekt mit den Eigenschaften DeliveryNoteId, DeliveryNoteNo, InvoiceId und InvoiceNo.
BEISPIELE #
New-InvoiceFromSalesOrder -OrderNo 4711 -Udl 'C:\Verbindung\Eulanda.udl'
New-InvoiceFromSalesOrder -OrderId 123 -BookOrder -Conn $conn
# Durchlauf in einem Zug: Lieferschein wird mitgebucht, Rechnung entsteht direkt
New-InvoiceFromSalesOrder -OrderId 123 -BookDeliveryNote -Conn $conn