Test auf invalid Characters implementiert. ERP_Item.ini rausgeschmissen. Sonderzeichen im Configparser nicht einfach zu lesen. FileEncoding war auch nicht utf-8. Eigene Textdatei für Sonderzeichen
This commit is contained in:
+20
-17
@@ -1,6 +1,6 @@
|
||||
import os
|
||||
import json
|
||||
from configparser import ConfigParser
|
||||
from configparser import ConfigParser, RawConfigParser
|
||||
import pandas as pd
|
||||
import update_database
|
||||
|
||||
@@ -447,10 +447,21 @@ class ZusatzConfig(IniBasedConfig):
|
||||
def __init__(self, config_dir='.', config_file='Zusatzinformationen.cfg'):
|
||||
super().__init__(config_dir, config_file)
|
||||
|
||||
class ERPConfig(IniBasedConfig):
|
||||
class InvaldCharsConfig():
|
||||
"""Auslesen der Zusatzinformationen die aus dem Änderungsindex abgeleitet werden"""
|
||||
def __init__(self, config_dir='.', config_file='ERP_Item.ini'):
|
||||
super().__init__(config_dir, config_file)
|
||||
def __init__(self, config_dir='.', config_file='InvalidCharacters.txt'):
|
||||
self.config_path = os.path.join(config_dir, config_file)
|
||||
if not os.path.exists(self.config_path):
|
||||
raise Exception("path does not exist")
|
||||
self._isInitalized = False
|
||||
file = open(self.config_path,'r')
|
||||
line = file.read()
|
||||
line = line.rstrip()
|
||||
self._characters = line.split(',')
|
||||
|
||||
def get(self):
|
||||
return self._characters
|
||||
|
||||
|
||||
class Configs:
|
||||
"""Sammlung aller Configdateien """
|
||||
@@ -466,13 +477,12 @@ class Configs:
|
||||
self.Pfade = PfadConfig(cfg_dir)
|
||||
self.Werkstoffe = WerkstoffeConfig(cfg_dir)
|
||||
self.Zusatz = ZusatzConfig(cfg_dir)
|
||||
self.ERP = ERPConfig(cfg_dir)
|
||||
self.InvalidChars = InvaldCharsConfig(cfg_dir)
|
||||
|
||||
self.TOSGruppen = TOSGroupsConfig(cfg_dir)
|
||||
self.Materialien = MaterialTransConfig(cfg_dir)
|
||||
self._TeileNummern = None
|
||||
self._blacklist = None
|
||||
self._env = None
|
||||
|
||||
def get_cfg_path(self):
|
||||
return self._cfg_dir
|
||||
@@ -482,23 +492,16 @@ class Configs:
|
||||
def get_data_dir(self):
|
||||
return self._data_dir
|
||||
|
||||
def set_env(self, env):
|
||||
self._env = env
|
||||
|
||||
def get_env(self):
|
||||
if self._env:
|
||||
return self._env
|
||||
return None
|
||||
|
||||
def get_ruledesigner_ids(self):
|
||||
if not self._data_dir:
|
||||
raise Exception("set_data_dir not called. path not set")
|
||||
if not self._TeileNummern:
|
||||
self._TeileNummern = RuleDesignerDatabaseConfig(self._env.data_dir).get_ruledesigner_ids()
|
||||
self._TeileNummern = RuleDesignerDatabaseConfig(self._data_dir).get_ruledesigner_ids()
|
||||
return self._TeileNummern
|
||||
|
||||
def get_blacklist(self):
|
||||
if not self._data_dir:
|
||||
return None
|
||||
|
||||
raise Exception("set_data_dir not called. path not set")
|
||||
if not self._blacklist:
|
||||
with open(os.path.join(self._data_dir, 'blacklist.txt')) as f:
|
||||
lines = f.read().splitlines()
|
||||
|
||||
Reference in New Issue
Block a user