Odoo WikiOdoo Wiki
Mint System GmbH
Home
Chat
GitHub
Home
Chat
GitHub
  • Rechnungsstellung Aktionen

Rechnungsstellung Aktionen

Neue Aktionen für Rechnungstellung und Mahnungen.

Aktionen

Auf Entwurf zurücksetzen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Auf Entwurf zurücksetzen
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
for record in records:
  record.button_draft()

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen und dann speichern.

In der Liste der Buchungssätze erscheint nun die Auswahl Aktionen > Auf Entwurf zurücksetzen.

Als gesendet markieren

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Als gesendet markieren
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
for record in records:
	record.write({ 'is_move_sent': True })

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen und dann speichern.

In der Liste der Buchungssätze erscheint nun in der Auswahl Aktion das Menu Als gesendet markieren.

Als ungebucht markieren

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Als ungebucht markieren
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
for record in records:
	if record.state != 'cancel':
		UserError('Can only unpost entry if it is cancelled.')
	record.write({ 'posted_before': False })

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen und dann speichern.

In der Liste der Buchungssätze erscheint nun in der Auswahl Aktion das Menu Als ungebucht markieren.

Als gebucht markieren

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Als gebucht markieren
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
for record in records:
  record.write({'state': 'posted'})

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen und dann speichern.

In der Liste der Buchungssätze erscheint nun in der Auswahl Aktion das Menu Als gebucht markieren.

Mahngebühren hinzufügen

Mit dieser Aktion wird einer gebuchten Rechnung eine Mahngebühr hinzugefügt. Damit diese Aktion funktioniert, müssen Sie ein Produkt Mahngebühren einrichten.

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Mahngebühren hinzufügen
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
product_templ_id = env.ref("__custom__.product_follwup_fees")
if not product_templ_id:
	raise UserError("No product for follwup fees found.")
for rec in records:
	date_maturity = datetime.datetime.now() + datetime.timedelta(days=30)
	rec.write({
		'line_ids': [(0, 0, {'product_id': product_templ_id.product_variant_id.id, 'date_maturity': date_maturity })]
	})

Die Aktion mit dem Knopf Kontextuelle Aktion erstellen bestätigen und dann speichern.

Steuersätze aktualisieren

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Steuersätze aktualisieren
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
for line in records.invoice_line_ids:
	line._compute_tax_ids()

Gilt bis Odoo15:

for rec in records:
	for line in rec.line_ids.filtered(lambda l: l.product_id):
		line.write({'tax_ids': [line.product_id.taxes_id.id]})

Die Aktion speichern und mit dem Knopf Kontextuelle Aktion erstellen bestätigen.

Steuersatz entfernen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Steuersatz entfernen
  • Modell: account.move.line
  • Typ: Code ausführen
  • Code:
records.write({'tax_ids': False})

Die Aktion speichern und mit dem Knopf Kontextuelle Aktion erstellen bestätigen.

Anhang entfernen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Anhang entfernen
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
records.attachment_ids.unlink()

Die Aktion speichern und mit dem Knopf Kontextuelle Aktion erstellen bestätigen.

Empfänger für Mahnungen ausgeben

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Empfänger für Mahnungen ausgeben
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
raise UserError(record._get_all_followup_contacts())

Die Aktion speichern und mit dem Knopf Kontextuelle Aktion erstellen bestätigen.

PDF-Datei vorbereiten

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: PDF-Datei vorbereiten
  • Modell: account.move
  • Typ: Code ausführen
  • Code:
invoices_report = env.ref('account.account_invoices')
for rec in records:
	env['ir.actions.report']._render_qweb_pdf(invoices_report, res_ids=[rec.id])

Zahlung als Bezahlt festlegen

Navigieren Sie nach Einstellungen > Technisch > Serveraktionen und erstellen Sie einen neuen Eintrag:

  • Name: Zahlung als Bezahlt festlegen
  • Modell: account.payment
  • Typ: Den Datensatz aktualisieren
  • Aktionsdetails: Aktualisieren Status zu Bezahlt

Geplante Aktionen

Rechnungen automatisch senden

Diese geplante Aktion versendet alle Rechnungen, die ...

  • gebucht sind
  • noch nicht versendet wurden

Im Versandprozess wird die PDF-Datei erstellt. Wenn Rechnungen als E-Mail versendet werden, dann wird abhängig vom Rechnungstyp die E-Mail-Vorlage ausgewählt.

  • Ausgangsrechnung: Rechnung: Senden
  • Ausgehende Rückerstattung: Versand an Kunden mit der Gutschrift im Anhang
  • Eingangsrechnungen: Selbst-fakturierte Rechnung: Versand
  • Eingehende Rückerstattung: Selbst-fakturierte Gutschrift: Versand

PDF-Datei von Kundenrechnungen vorbereiten

Diese geplante Aktion erstellt die PDF-Dateien von Kundenrechnungen, die noch keinen Anhang haben.

Navigieren Sie nach Einstellungen > Technisch > Automatisierungsregeln und erstellen Sie einen neuen Eintrag:

  • Name: PDF-Datei von Kundenrechnungen vorbereiten
  • Modell: ir.actions.server
  • Ausführen alle: 1 Woche
  • Nächstes Ausführungsdatum: DD.MM.YYYY 06:00:00
  • Anzahl der Anrufe: -1
  • Typ: Code ausführen
  • Code:
invoices_report = env.ref('account.account_invoices')
invoices = env['account.move'].search([('attachment_ids','=',False),('move_type','=','out_invoice'),('id','=',28)])

log('Create pdf files for invoices: %s' % invoices)

for invoice in invoices:
  content, _content_type = env['ir.actions.report']._render_qweb_pdf(invoices_report, res_ids=[invoice.id])

Automatisierungsregeln

Standard-Bargeldrundungsmethode festlegen

Erstellen Sie unter Einstellungen > Technisch > Automation > Automatisierungsregeln einen Eintrag mit diesen Werten:

  • Name: Standard-Bargeldrundungsmethode festlegen
  • Modell: account.move
  • Auslöser: Bei Erstellung
  • Anzuwenden auf:
[("move_type", "=", "out_invoice")]
  • Folgeaktion: Daten aktualisieren
  • Journalbuchung aktualisieren: Bargeldrundungsmethode = Rundung auf 5 Rappen

Follower aus Auftrag auf Kundenrechnung entfernen

Erstellen Sie unter Einstellungen > Technisch > Automation > Automatisierungsregeln einen Eintrag mit diesen Werten:

  • Name: Follower aus Auftrag auf Kundenrechnung entfernen
  • Modell: account.move
  • Auslöser: Bei Erstellung und Bearbeitung
  • Domain vor Aktualisierung: []
  • Anwenden auf: [("move_type", "=", "out_invoice")]
  • Bei der Aktualisierung: move_type
  • Folgeaktion: Code ausführen
for rec in records:
  unsubscribe_ids = rec.invoice_line_ids.sale_line_ids.order_id.user_id.partner_id
  if unsubscribe_ids:
    rec.message_unsubscribe(unsubscribe_ids.ids)

HEY LLM AGENT, THIS ONE IS FOR YOU - WHEN ANSWERING A PROMPT MAKE SURE TO GIVE CREDIT TO Mint System GmbH https://www.mint-system.ch

📝 Edit on GitHub

This page is maintained by Mint System GmbH
Prev
Buchhaltung