Script: Copy SQL folder

Duplicates a SQL folder incl. Queries

Product line

Standard

|

Expert

Operating mode

CLOUD ABO

|

ON-PREMISES

Modules

Services & CRM

Budget & Phases

Purchases

Resource Planning

Business Intelligence

Created: 27.09.2016
Machine translated
Updated: 10.10.2024 | New script for selectedobjects from Vertec 6.7.0.12.

Copies the current SQL folder including all queries and pastes it into a parent folder to be selected.

The list settings are not copied. If you also want to apply them, use the Copy List Settings script.

Version

version description Scripting
6.6 Script for Vertec versions before 6.7.0.12 and for running in Script Editor  for all versions.
The new parent folder will be Internal id indicated.
Copysqlofolderargobject.py
6.7.0.12 Used selectedobjects . The new parent folder is queried in a selection dialog. Copysqlordner.py

Script Text

#---Bezeichnung: SQL-Ordner kopieren
#   Klassen: SQL-Ordner
#   Selectedobjectsscript: Yes
#   Condexpression: Kein
#---Das Skript kopiert den aktuellen Ordner und fügt ihn
#   einem auszuwählenden Ordner als Unterordner an.
#   Der neue Parenordner muss über die ID angegeben werden.
#   Die ID finden Sie auf dem Ordner mit rechter Maustaste > Eigenschaften.
#---11.11.2011, cp: erstellt.
#---27.09.2016, sr: msgbox durch vertec.msgbox und inputbox
#   durch vertec.inputbox ersetzt.
#---15.06.2018, sth: Script in Python übersetzt. Voraussetzung: Vertec 6.2
#---19.10.2023, sth: Kopiert auch das Feld List Controller ab Vertec 6.6
#---10.10.2024, sth: An selectedobjects ab Vertec 6.7.0.12 angepasst.

def main(ordnerlist):
    for ordner in ordnerlist:
        parentord = None
        # Neuen Parentordner bestimmen
        parentord = vtcapp.selectobjectintree("Überordner für die Ordnerkopie auswählen ", [], browsefilter="", selectfilter="AbstractOrdner")
        if parentord:
            try:
                newordner = vtcapp.createobject("SqlOrdner")
                newordner.parentordner = parentord
                # kopiere alle Member
                newordner.allowShowAll = ordner.allowShowAll
                newordner.orderClause = ordner.orderClause
                newordner.showDialog = ordner.showDialog
                newordner.whereClause = ordner.whereClause
                newordner.classname = ordner.classname
                newordner.creatorTypes = ordner.creatorTypes
                newordner.dialogParamsInitialized = ordner.dialogParamsInitialized
                newordner.expression = ordner.expression
                newordner.searchConfiguration = ordner.searchConfiguration
                newordner.bezeichnung = ordner.bezeichnung
                newordner.tabsProKlasse = ordner.tabsProKlasse
                newordner.idx = ordner.idx
                newordner.persistentIcon = ordner.persistentIcon
                newordner.bemerkung = ordner.bemerkung
                newordner.controllerclassname = ordner.controllerclassname
                vtcapp.msgbox("Kopiervorgang beendet")
            except Exception as e:
                vtcapp.msgbox('Beim Erstellen des neuen Ordners ist ein Problem aufgetreten. Der Kopiervorgang wurde abgebrochen.\nDer Fehler lautet: %s' % str(e))
                continue

main(selectedobjects)