Kopiert den aktuellen SQL-Ordner inklusive aller Abfragen und fügt ihn in einen Zielordner ein. Der Zielordner wird über die ID angegeben. Diese finden Sie auf dem Zielordner mit rechter Maustaste > Eigenschaften > Interne Id
.
Nicht kopiert werden die Listeneinstellungen. Falls Sie diese ebenfalls übernehmen möchten, verwenden Sie dafür das Script Listeneinstellungen kopieren.
Version |
Beschreibung |
Script |
6.6 |
Script in Python. Kopiert auch den List Controller Namen. |
CopySQLOrdner.py |
#---Bezeichnung: SQL-Ordner kopieren
# Klassen: Eintrag
# ObjectScript: No
# ContainerScript: Yes
# EventType: Kein
#---Das Skript kopiert den aktuellen Ordner als Sub-Ordner
# eines anderen Ordners.
# 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
def main(ordner):
parentord = None
if not ordner.eval('oclisKindOf(SqlOrdner)'):
vtcapp.msgbox('Sie können dieses Skript nur auf einem SQL-Ordner ausführen.')
else:
# Neuen Parentordner bestimmen
parentid = vtcapp.inputbox('Vertec','Geben Sie die ID des neuen Parentordners an.','')
if parentid:
try:
parentord = vtcapp.getobjectbyid(parentid)
except:
vtcapp.msgbox('Es wurde kein Ordner mit dieser ID gefunden. Der Kopiervorgang wurde abgebrochen.')
else:
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
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))
main(argobject)