Ombis bietet die Möglichkeit Vorgaben für eine physische Ordnerstruktur im Programmverzeichnis zu bestimmten. Unter
Einrichtung/System/System/Reiter "Betrieb"/Verknüpfte Dokumente sind die Regeln festzulegen, wie die Ordnerstruktur aussehen soll. I.d.R finden Sie dann im Programm unter den jeweiligen Programmpunkten das Symbol [!]. Übder dieses Symbol können Sie den Ordner öffnen. Dabei wird dieses Verzeichnis, falls es noch nicht angelegt wurde, in diesem Moment erstellt.
Wenn Sie jedoch nicht alle Einträge durchgehen möchten um auf dieses Symbol zu klicken, damit alle Ordner erstellt werden, eignen sich 2 Automatismen um die Ordnerstruktur anzulegen (geeignet für Stammdaten).
Beispiele um Ordnerstruktur für Kunden anzulegen:Variante 1 (auch bei Älteren Ombis-Versionen, Jython vorrausgesetzt)• Tabelle Kunden öffnen
• Auf die Spalte "Ausgewählt" gehen, Kommando Liste/"Spalte füllen" aufrufen
• Folgenden Ausdruck eingeben:
field("Sel") || (execPython("STRING", "import os\nos.makedirs('" + quote(field("ElDokumente"))+ "')") == "notValid")• Bestätigen
Diese Variante eignet sich für eine einmalige Durchführung
Variante 2 (Ab Fakt 9.08)• Datenaustausch-Definition erstellen, mit Spezielexport "PDF-Einzeldruck"
• Dateiname PDF: <LEER>
• Bericht: <LEER>
• Dateiname Info-Datei:
makePathname(field("ElDokumente"), "test", "tmp")• Irgendeine Export-Schablone eintragen (nicht wichtig)
• Ein Jython-Umformungsskript mit Inhalt
Das Umformungsscript sieht folgendermaßen aus:
Code:
# -*- coding: cp1252 -*-
#
from AbstractSAXHandler import AbstractSAXHandler
from xml.sax.saxutils import *
import codecs
import JavaUtilities
class XmlHandler(AbstractSAXHandler):
def __init__(self, path, encoding):
self.filename = path
self.encoding = encoding
def getAttr(self, name):
try:
return self.attr[name]
except KeyError:
return ""
def handleStartDocument(self):
None #self.file = codecs.open(self.filename, 'w', self.encoding)
def handleStartElement(self, tag, attrs):
None #self.attr = attrs
def handleEndElement(self, tag):
None
def handleEndDocument(self):
None
Variante 2 können Sie auch in einer festgelegten Periodizität durchlaufen lassen (z.B. wöchentlich oder täglich). Diese Einstellung müssen Sie in der Datenaustausch-Definition festlegen.