Script: Kreditor auf gebucht / storniert setzen

Dieses Script setzt einen Kreditor auf gebucht bzw. wieder auf storniert, ohne dabei Daten in die Buchhaltung zu übertragen.

Produktlinie

Standard

|

Expert

Betriebsart

CLOUD ABO

|

ON-PREMISES

Module

Leistung & CRM

Budget & Teilprojekt

Fremdkosten

Ressourcenplanung

Business Intelligence

Erstellt: 25.05.2012
Aktualisiert: 11.10.2024 | Neues Script für selectedobjects ab Vertec 6.7.0.12.

Dieses Script storniert bzw. bucht einen Kreditor, ohne dabei Daten in die Buchhaltung zu übertragen.

Beim Buchungsvorgang werden gewisse Werte im Vertec fixiert. Dieses Script simuliert diesen Vorgang. Ist der Kreditor bereits gebucht, wird er storniert, ansonsten gebucht.

Version Beschreibung Script
6.0 Script für Vertec Versionen vor 6.7.0.12 sowie zur Ausführung im Script Editor  für alle Versionen. SetKreditorToGebucht.py
6.7.0.12 Verwendet selectedobjects . Der neue Überordner wird in einem Auswahldialog abgefragt. PostCancelCreditorWithoutFAR.py

Ausführen

Auf dem Kreditor, die Sie auf gebucht setzen möchten.

Scripttext

 # coding: windows-1252
#
#---Bezeichnung: Kreditor auf gebucht/storniert setzen (ohne Buchhaltung)
#   Klassen: Kreditor
#   Selectedobjectsscript: Yes
#   Condexpression:
#   EventType: Kein
#   EventClass:
#   EventMembers:
#   ExtendedRights: N
#---Wenn das Member gebucht auf dem Kreditor geändert wird, anstelle der Standardfunktion buchen,
#   dann fehlen auf den Buchungen einige Informationen. Mit diesem Skript werden die Informationen
#   der Reihen nach gespeichert und nach dem Umstellen wieder eingesetzt.
#---12.04.2012, RS: erstellt.
#   23.10.2013, MW: Auslagen und Spesen behandeln, statt nur Auslagen.
#   11.10.2024, sth: Angepasst auf selectedobjects mit Vertec 6.7.0.12

def main(creditorlist):
    for kreditor in creditorlist:
        if kreditor.gebucht:
            # Informationen zurücksetzen
            kreditor.gebucht = False
            
            kreditor.bhAufwandkontoAuslagen = ""
            kreditor.bhAufwandkontoSpesen = ""
            kreditor.bhKrediCode = ""
            kreditor.bhSammelKonto = ""

            auslagenbase=kreditor.eval('auslagen->union(spesen).oclastype(AuslageBase)')
            for auslagebase in auslagenbase:
                auslagebase.verrMWSTCodeEK = None
                auslagebase.verrMWSTSatzEK = None
                auslagebase.krediAufwandKonto = ""
                
        else:
            # Informationen auslesen und setzen
            kreditor.bhAufwandkontoAuslagen = kreditor.aufwandkontoAuslagen
            kreditor.bhAufwandkontoSpesen = kreditor.aufwandkontoSpesen
            kreditor.bhKrediCode = kreditor.krediCode
            kreditor.bhSammelKonto = kreditor.sammelKonto

            auslagenbase=kreditor.eval('auslagen->union(spesen).oclastype(AuslageBase)')
            for auslagebase in auslagenbase:
                auslagebase.verrMWSTCodeEK = auslagebase.MWSTCodeEK
                auslagebase.verrMWSTSatzEK = auslagebase.MWSTSatzEK
                auslagebase.krediAufwandKonto = auslagebase.AufwandKonto

            kreditor.gebucht = True
            
    vtcapp.updatedatabase()

main(selectedobjects)
Bitte wählen Sie Ihren Standort