def update_4_0_nach_4_1(self): if not self.has_field('jghstat07', 'jahr'): SQL('ALTER TABLE jghstat07 ADD COLUMN jahr INT').execute() logging.info("Feld 'jahr' zur Bundesstatistik hinzugefügt") tab_id = Tabelle(tabelle='jghstat07')['id'] if not FeldList(where="tab_id=%s and feld='jahr'" % tab_id): feld = Feld() feld.init(tab_id=tab_id, feld='jahr', name='Jahr', typ='INT', verwtyp=cc('verwtyp', 'p'), flag=0, ) feld.new() feld.insert() logging.info("Metadaten für Feld 'jahr' hinzugefügt") self.jahr_in_bundesstatistik() Kategorie(code='kr').update({ 'dok': "amtlicher Gemeindeschlüssel (AGS, Ziffer 3-5)"}) Kategorie(code='rbz').update({ 'dok': "amtlicher Gemeindeschlüssel (AGS) obsolet, in Kreis mit drin"}) self.kreis_dreistellig_umstellen() self.einrichtungsnummer_sechsstellig_umstellen() self.keep_alive_anpassen() self.strassenkatalog_reparieren()
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'")
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'")
def add_mail_fields_to_akte_bezugsperson(self): tabellen = ('akte', 'bezugsperson', 'einrichtung') for tn in tabellen: SQL("ALTER TABLE %s ADD mail VARCHAR(80)" % tn).execute() t = Tabelle(tabelle=tn) f = Feld() f.init( tab_id=t['id'], feld='mail', name='E-Mail', inverse=None, typ='VARCHAR(80)', verwtyp=cc('verwtyp', 'p'), ftab_id=None, flag=0, ) f.new() f.insert() logging.info("Feld 'mail' fuer Tabelle '%s' eingefuehrt" % t['tabelle'])
def add_field_to_register(self): SQL("ALTER TABLE register ADD valuestr TEXT").execute() t = Tabelle(tabelle='register') f = Feld() f.init( tab_id=t['id'], feld='valuestr', name='Wert als String', inverse=None, typ='TEXT', verwtyp=cc('verwtyp', 'p'), ftab_id=None, flag=0, ) f.new() f.insert() # Nicht unbedingt nötig, aber es ist klarer, wenn das Feld künftig leer ist. SQL("UPDATE register set value=NULL,valuestr='%s' where regkey='Version'" % self.ist_db).execute() logging.info("Feld 'valuestr' fuer Tabelle 'register' eingefuehrt")