Standardmäßig werden Belege auf dem Beleg-Drucker gedruckt. Dieser wird in Stammdaten->Konfigurationen->bill_printer definiert. Um dieses Verhalten zu überschreiben können Beleg-Routing-Regeln verwendet werden. Bei Routing-Regeln handelt es sich um Python-Code. Werden im Code die Variablen printer_name und backup_printer_name gesetzt, wird der Drucker für diesen Beleg geändert. Der Wert der Variable printer_name muss einem logischen Druckernamen (Stammdaten->Druckerverwaltung->Drucker) entsprechen. ==== verfügbare Variable ==== === Bill Objekt === bill.total Brutto-Summe (Decimal) bill.total_nv Netto-Summe (Decimal) bill.total_vat Steuer-Summe (Decimal) bill.bill_time Beleg Zeitstempel (datetime.datetime) bill.bill_user_id Benutzer-ID vom Belegersteller (int) bill.bill_user_name Benutzername vom Belegersteller (string) bill.payment_method Bezahlmethode (string) === BillQueue Objekt === bill_queue_entry.from_gui Wurde die Druckanforderung aus der GUI gemacht? (boolean) bill_queue_entry.request_user_name Benutzername des Druckanforderers (string) bill_queue_entry.request_user_name Benutzername des Druckanforderers (string) bill_queue_entry.queue_time Zeit der Druckanforderung (datetime.datetime) ==== Beispiele ==== === Routing auf virtuellen Drucker wenn die Summe < 30 Euro ist === Der Beleg wird auf einen virtuellen Drucker umgeleite, wenn die Summe des Belegs kleiner als 30 Euro ist und die Druckanforderung nicht aus der GUI kommt. if bill.total <= 30 and not bill_queue_entry.from_gui: printer_name = 'Nirvana'