Support vertec.com

Script: Adresslayout einer Adresse auf andere übertragen

Adresslayout auf alle Adressen des Typs übertragen

Standard

|

Expert

CLOUD ABO

|

ON-PREMISES

Leistung & CRM

Budget & Teilprojekt

Fremdkosten

Ressourcen & Projektplanung

Business Intelligence

Erstellt: 30.01.2004
Aktualisiert: 23.02.2019 | Script in Python übersetzt. VBScript entfernt.

Nimmt das Adresslayout des aktuellen Adresseintrags und überträgt es auf alle Adresseinträge, die vom gleichen Adress-Typ (EinfacheAdresse, Firma, Person, Kontakt oder Paar) sind.

Version

Version Beschreibung Script
ab Version 5.4

Beachtet die dynamische Anrede und Briefanrede.

Für ältere Versionen können die Zeilen anredetemplate und briefanredetemplate entfernt werden.

AddLayoutToAllOfType.txt
ab Version 5.8 Python Script AddLayoutToAllOfType.py

Ausführen

Einzelner Adresseintrag, welcher das zu übertragende Layout beinhaltet.

Scripttext

#---Bezeichnung: Adresslayout einer Adresse auf andere übertragen
#   Klassen: Adresseintrag
#   ObjectScript: Yes
#   ContainerScript: No
#   EventType: Kein
#---Dieses Script nimmt das Adresslayout des aktuellen
#   Adresseintrags und überträgt es auf alle Adresseinträge, die
#   vom gleichen Typ (EinfacheAdresse, Firma, Person oder Kontakt) sind.
#---30.01.2004, Vertec AG: erstellt
#---07.05.2007, sr: Angepasst an argobject und vertec
#---04.03.2008, cp: Ergänzt um dynamische Anrede und Briefanrede
#---30.04.2009, bn: On Error eingefügt um Fehler abzufangen
#---25.10.2013, sr: msgox auf vertec.msgbox geändert
#---22.02.2019, sth: Script in Python umgeschrieben

def main():

    vtcapp.updatedatabase

    obj = argobject
    if obj.eval('oclisKindOf(Adresseintrag)'):
        layout = obj.defaultadresse
        lay = layout.adresslayout
        typ = obj.evalocl("oclType.asString")
        adrlist = vtcapp.evalocl(typ + ".allInstances")
        for adresse in adrlist: 
            try:
                adresse.anredetemplate = obj.anredetemplate
                adresse.briefanredetemplate = obj.briefanredetemplate
                layout = adresse.defaultadresse
                layout.adresslayout = lay
            except:
                if vtcapp.msgbox("Das Adresslayout konnte für folgende Adresse nicht gesetzt werden: %s. Wollen sie fortfahren?" % adresse.evalocl("self.asstring"),4) == 6:
                    continue
                else:
                    return
    else:
        vtcapp.msgbox("Dieses Skript muss auf einer einzelnen Adresse ausgeführt werden, von welcher das Layout auf alle Adressen dieses Typs übertragen wird.")

    vtcapp.updatedatabase
    
main()

Bitte wählen Sie Ihren Standort