Ejemplo n.º 1
0
def archive_sql_protocol(user):
    """Löscht die Daten aus der Protokolltabelle und schreibt
    sie in eine Archivdatei.
    Code weitestgehend von MSG übernommen."""
    tmp_yek = "2001.12.31" # ?? :-)
    # diesen abschnitt. hier wird zu erst in eine datei archiviert, dann gelöscht
    # zeit generieren und fileobjekt erstellen.
    local_time_insec = time.time()
    local_time_tupel = time.localtime(local_time_insec)
    zeitstempel = time.strftime("%d%m%y%H%M%S", local_time_tupel)
    zeitstempel2 =time.strftime("%d.%m.%y um %H:%M:%S", local_time_tupel)
    pfad = os.path.join(config.PROTOCOL_DIR, zeitstempel + ".txt")
    #if os.exists(PROTOCOL_DIR) != true:
    #mkdir(PROTOCOL_DIR)
    fdatei = open(pfad, "wb")
    # jede zeile aus der protokolltabelle wird in die datei geschrieben
    protokolleintraege = ProtokollList(where = '', order='nr')
    rot = rotor.newrotor(tmp_yek)
    from ebkus.app_surface.protokoll_templates import datei_t
    for p in protokolleintraege:
        fdatei.write(rot.encryptmore(datei_t % p))
        fdatei.write(rot.encryptmore('<br>'))
    fdatei.write(rot.encryptmore("""<br>****************************<br>
Die Protokolltabellen wurden am %s von %s geloescht
und in die Datei %s archiviert.
<br>****************************<br>""" % (zeitstempel2, user, pfad)))
    fdatei.close()
    # Maxist protokolltabelle wird gesetzt
    tab = Tabelle(tabelle='protokoll')
    tab.update({'maxist': 0})
    # protokolltabelle wird gelöscht
    protokolleintraege2 = ProtokollList(where = '')
    protokolleintraege2.deleteall()
Ejemplo n.º 2
0
    def fua_bs_neue_tabelle_fuer_mitarbeiter_zuordnung(self):
        if 'mitarbeiterfua_bs' in self.tables:
            logging.info("Tabelle 'mitarbeiterfua_bs' existiert bereits")
            return
        try:
            SQL("""CREATE TABLE mitarbeiterfua_bs (
id int NOT NULL,
mit_id int,
fua_bs_id  int,
zeit int,
PRIMARY KEY (id)
)""").execute()

            t = Tabelle()
            t.init(
                tabelle="mitarbeiterfua_bs",
                name="Zuordnung Mitarbeiter-fallunabhängige Aktivitäten",
                klasse="Mitarbeiterfua_bs",
                flag=0,
                maxist=0
                )
            t.new()
            t.insert()
            felder = (
                ('id', 'id', None, cc('verwtyp', 's'), None,),
                ('mit_id', 'Mitarbeiterid', 'mitarbeiterfuaktivitaeten',
                 cc('verwtyp', 'f'), Tabelle(tabelle='mitarbeiter')['id']),
                ('fua_bs_id', 'Fua_bsid', 'mitarbeiterfuaktivitaeten',
                 cc('verwtyp', 'f'), Tabelle(tabelle='fua_bs')['id']),
                ('zeit', 'Änderungszeit', None, cc('verwtyp', 'p'), None),
                )
            for feld, name, inverse, verwtyp, ftab_id in felder:
                f = Feld()
                f.init(
                    tab_id=t['id'],
                    feld=feld,
                    name=name,
                    inverse=inverse,
                    typ='INT',
                    verwtyp=verwtyp,
                    ftab_id=ftab_id,
                    flag=0,
                    )
                f.new()
                f.insert()
            logging.info("Neue Tabelle 'mitarbeiterfua_bs' eingefuehrt")
        except:
            #raise
            logging.error("************ Fehler beim Anlegen der Tabelle 'mitarbeiterfua_bs'")
Ejemplo n.º 3
0
    def neue_tabelle_fuer_gemeindeschluessel(self):
        if 'ags' in self.tables:
            logging.info("Tabelle 'ags' existiert bereits")
            return
        try:
            SQL("""CREATE TABLE ags (
id int NOT NULL,
plz CHAR(5),
ags CHAR(12),
ort VARCHAR(60),
PRIMARY KEY (id),
KEY(ort(10))
)""").execute()

            t = Tabelle()
            t.init(
                tabelle="ags",
                name="Amtliche Gemeindeschlüssel",
                klasse="AGS",
                flag=0,
                maxist=0
                )
            t.new()
            t.insert()
            felder = (
                ('id', 'id', None, 'INT', cc('verwtyp', 's'), None,),
                ('plz', 'Postleitzahl', None, 'CHAR(5)', cc('verwtyp', 'p'), None,),
                ('ags', 'Gemeindeschlüssel', None, 'CHAR(12)', cc('verwtyp', 'p'), None,),
                ('ort', 'Ort', None, 'VARCHAR(60)', cc('verwtyp', 'p'), None,),
                )
            for feld, name, inverse, typ, verwtyp, ftab_id in felder:
                f = Feld()
                f.init(
                    tab_id=t['id'],
                    feld=feld,
                    name=name,
                    inverse=inverse,
                    typ=typ,
                    verwtyp=verwtyp,
                    ftab_id=ftab_id,
                    flag=0,
                    )
                f.new()
                f.insert()
            logging.info("Neue Tabelle 'ags' fuer Gemeindeschluessel eingefuehrt")
        except:
            #raise
            logging.error("************ Fehler beim Anlegen der Tabelle 'ags'")