Typen in den Parametern ergänzt. pandas Aufruf in Abfrage_Sivas geändert. Configs verschoenert, da parser sonst nicht richtig arbeitete

This commit is contained in:
2023-04-26 17:14:52 +02:00
parent efdb57fd52
commit cda9a6713d
4 changed files with 352 additions and 351 deletions
+2 -3
View File
@@ -28,9 +28,8 @@ class Kosten():
:param pathOld: cfg-Datei, die in rieter_ekalk verwendet wird und den Bauteilen Preise zuweist z.B. "schaltschrankgehaeuse_b2x800_zubehoer = 4663.45"
:param sivasData: Excel-Datei mit Sivas-Nummern und entsprechenden Preisen, Überschrift: Teilenummer, Herstellkosten
"""
df = pd.read_excel(sivasData, header=0, index_col="Teilenummer")
tab = df.drop(columns=["Bezeichnung1"])
self._kosten = tab.to_dict()
df = pd.read_excel(sivasData, header=0, index_col=0, usecols=["Teilenummer", "Herstellkosten" ])
self._kosten = df.to_dict()
self._given = True
if os.path.exists(pathNew):
+7 -2
View File
@@ -92,8 +92,11 @@
seil_fuer_seilzugschalter = 0.40
blitzleuchte = 72 # 790000006
spulenumsetzstation = 0
# Angabe im Sivas je 40m
sensorkabel_je_20m = 25 # 722001xxx
# Angabe im Sivas je 50m
stopper_weichenkabel_je_5m = 20 # 722001xxx
# Angabe im Sivas je 50m
motorkabel_je_30m = 26
kabelpritschen_leitern_200_60 = 15
kabelpritsche_rsm_100_60 = 12 # 715000020
@@ -251,9 +254,11 @@
1.1=2.55
# ERGEBNIS
[Kosten pro h] #[€/h] der jeweiligen Kostenart
#[€/h] der jeweiligen Kostenart
[Kosten pro h]
E_Werkstatt = 32
Schaltschrankbau_extern_Mehrkosten = 0 #Wenn Schaltschrankbau extern die Mehrkosten eintragen Standard = 18 € Hier wird nur die Diverenz zwischen Kosten intern(32€) und dem externen Kosten eingetragen. Beispiel= extern = 50€ intern 32 € = Wert= 18€
# Wenn Schaltschrankbau extern die Mehrkosten eintragen Standard = 18 € Hier wird nur die Diverenz zwischen Kosten intern(32€) und dem externen Kosten eingetragen. Beispiel= extern = 50€ intern 32 € = Wert= 18€
Schaltschrankbau_extern_Mehrkosten = 0
Dienstleistung_in_LL = 45
Pflichtenheft = 60
SPS_Programmierung = 75
+8 -11
View File
@@ -54,7 +54,6 @@ antrieb_unidirektional_schuetz = 703001049
antrieb_bidirektional_schuetz = 703001059
motorschutzschalter = 703001007
wendeschuetzschaltung = 703001026
#frequenzumrichter = löschen, wird nicht mehr verwedet
bedienstation_1fach_kpl = 790002022
@@ -68,7 +67,6 @@ wendeschuetzschaltung = 703001026
bedienstation_6fach_kpl = 790000033
halter_bedientableau_6fach = 825304002
drucktaster_automatische_umfahrung = 400102435
#halter_fuer_drucktaster = löschen
# ET200_SP
et_200sp_bundle_profinet_im_155_6pn_st_ba_2xrj45 = 709000006
@@ -93,19 +91,18 @@ wendeschuetzschaltung = 703001026
slio_8_x_dc_0v = 709000010
# MATERIAL VOR ORT
#movimot_fu_mit_anschaltung = löschen
sensor_optisch_traverse = 827072200
#sensorhalter_ohne_sensor = löschen
reflexionslichtschranke_rsm_direct = 827072207
stoppersensor_induktiv_mit_halter = 827072205
sensor_spulenpruefung_voll_leer = 827072204 + 721000041
seilzugschalter = 827336009 # rsm fa seilzugschalter wenn deckblatt d5 ja *1 nicht mehr *2
seil_fuer_seilzugschalter = 719001012 # pro maschinenlänge doppelte länge(dann muss die Maschinenlänge aber noch angegeben werden)
# rsm fa seilzugschalter wenn deckblatt d5 ja *1 nicht mehr *2
seilzugschalter = 827336009
# pro maschinenlänge doppelte länge(dann muss die Maschinenlänge aber noch angegeben werden)
seil_fuer_seilzugschalter = 719001012
blitzleuchte = 790000006
#spulenumsetzstation = ---- löschen
sensorkabel_je_20m = 722001022 (je 40m)
stopper_weichenkabel_je_5m = 722001040 (je 50m)
motorkabel_je_30m = 725000015 (1 m)
sensorkabel_je_20m = 722001022
stopper_weichenkabel_je_5m = 722001040
motorkabel_je_30m = 725000015
kabelpritschen_leitern_200_60 = ----
kabelpritsche_rsm_100_60 = 715000020
kabelpritsche_rsm_50_35 = 715003010
@@ -120,7 +117,7 @@ wendeschuetzschaltung = 703001026
zuleitung_75_m_unterverteiler_12x2_5mm2_24_vdc = 725000057
zuleitung_55_m_klemmkasten_rsm_mitte_14g1_5_mm = 725000007
zuleitung_55_m_klemmkasten_rsm_mitte_14g1_0_mm = 725000004
profinetkabel = 726001043
profinetkabel = 726001053
schnittstellen_8x1mm2_30m = 725000019
+5 -5
View File
@@ -27,7 +27,7 @@ class cfg():
def exists(self):
return self._hasConfig
def getDictAsFloat(self, section):
def getDictAsFloat(self, section:str):
"""
Schreibt die Zuordnungen von Bauteil:Stückpreis/Zeiteinheit (je nach gewählter Überschrift) aus der config-Datei in ein Dictionary.
:param section: Überschrift in der config-Datei z.B. "HW_Einzelpreise"
@@ -189,7 +189,7 @@ class MG():
"""
return self._deckblatt.get(key, 0)
def get_value_of_object(self, objectname, key):
def get_value_of_object(self, objectname:str, key:str):
"""
:param objectname: Name der Klasse, zu der das Bauteil gehört, dessen Wert man wissen will z.B. "puffer"
:param key: Name des Bauteils, dessen Wert ermittelt werden soll z.B. "Sensor_optisch_Traverse"
@@ -926,7 +926,7 @@ class Puffer():
self._Mengen["Meldelampe_Überstrom_Korrektur"] = anzahl.get("Meldelampe_Überstrom_Korrektur", 0)
self._Mengen["Hauptschalter_Ein_Meldung"] = self._Puffer_Anzahl + anzahl.get("Hauptschalter_Ein-Meldung_Korrektur", 0)
self._Mengen["Hauptschalter_Ein-Meldung_Korrektur"] = anzahl.get("Hauptschalter_Ein-Meldung_Korrektur", 0)
def anzahl(self, partname, defaultv = 0):
def anzahl(self, partname:str, defaultv = 0):
return self._Mengen.get(partname, defaultv)
# Turm
class Turm():
@@ -2056,8 +2056,8 @@ class HW():
l.append(k)
for item in l:
del self._anzahl[item]
with open('HW_Daten.txt', 'w') as convert_file:
convert_file.write(json.dumps(self._anzahl))
# with open('HW_Daten.txt', 'w') as convert_file:
# convert_file.write(json.dumps(self._anzahl))
def __repr__(self):
return repr(self._anzahl)