Fixed ladungstrager Nr and some other bugs

This commit is contained in:
2016-10-04 20:12:18 +02:00
parent 972f90a981
commit b289705267
8 changed files with 65 additions and 16 deletions

60
DB.py
View File

@@ -110,7 +110,7 @@ class DB:
except: except:
print ("Couldnt read from BDE") print ("Couldnt read from BDE")
return (cursor.fetchall ()) return cursor.fetchall ()
def checkbde (self, dmc): def checkbde (self, dmc):
@@ -129,12 +129,27 @@ class DB:
""" """
Updates BDE information Updates BDE information
""" """
if self.checkbde (dmc) == 0: l = self.getbde (dmc)
oldlt = ''
if len (l) == 0:
print ('Missing bde entry for DMC %s create empty one' % dmc) print ('Missing bde entry for DMC %s create empty one' % dmc)
self.addbde ({'dmc' : dmc, 'startts' : '', 'ladungstraeger' : '', 'seriennr' : ''}) self.addbde ({'dmc' : dmc, 'startts' : '', 'ladungstraeger' : '', 'seriennr' : ''})
else:
oldlt = l[0][3]
nval = value
if field == 'ladungstraeger':
if '\x00' in value:
self.errlog ("Nullvalue in LT Data")
return
if not value in (oldlt.split (',')):
nval = oldlt + ',' + value
else:
return
try: try:
cursor = self.executesql ("UPDATE bde SET %s = '%s' WHERE dmc = '%s';" % (field, value, dmc)) cursor = self.executesql ("UPDATE bde SET %s = '%s' WHERE dmc = '%s';" % (field, nval, dmc))
except: except:
print ("Couldnt update BDE") print ("Couldnt update BDE")
raise Warning raise Warning
@@ -163,7 +178,6 @@ class DB:
self.updatebde (data['dmc'], 'variante', data['bauteil'] + '-' + data['variante']) self.updatebde (data['dmc'], 'variante', data['bauteil'] + '-' + data['variante'])
self.updatebde (data['dmc'], 'csv', '') self.updatebde (data['dmc'], 'csv', '')
def getpruefzelle1 (self, dmc): def getpruefzelle1 (self, dmc):
""" """
@@ -194,13 +208,17 @@ class DB:
Add Processdata 05 - blindniet Add Processdata 05 - blindniet
and update BDE data and update BDE data
""" """
if len (self.getblindniet (data['dmc'])):
self.errlog ('PD05 for %s already exists - Overwrite' % data['dmc'])
try: try:
cursor = self.executesql ("INSERT INTO blindniet (dmc, startts, endts, DGBM8status01, DGBM8status02, DGBM8status03, DGBM8status04, NietM8status01, NietM8status02, NietM6status01, NietM6status02, NietM6status03, NietM6status04, NietM6status05, DGBM8M01, DGBM8D01, DGBM8W01, DGBM8T01, DGBM8M02, DGBM8D02, DGBM8W02, DGBM8T02, DGBM8M03, DGBM8D03, DGBM8W03, DGBM8T03, DGBM8M04, DGBM8D04, DGBM8W04, DGBM8T04, NietM8F01, NietM8S01, NietM8F02, NietM8S02, NietM6F01, NietM6S01, NietM6F02, NietM6S02, NietM6F03, NietM6S03, NietM6F04, NietM6S04, NietM6F05, NietM6S05) VALUES ('%(dmc)s', '%(startts)s', '%(endts)s', '%(DGBM8status01)s', '%(DGBM8status02)s', '%(DGBM8status03)s', '%(DGBM8status04)s', '%(NietM8status01)s', '%(NietM8status02)s', '%(NietM6status01)s', '%(NietM6status02)s', '%(NietM6status03)s', '%(NietM6status04)s', '%(NietM6status05)s', '%(DGBM8M01)s', '%(DGBM8D01)s', '%(DGBM8W01)s', '%(DGBM8T01)s', '%(DGBM8M02)s', '%(DGBM8D02)s', '%(DGBM8W02)s', '%(DGBM8T02)s', '%(DGBM8M03)s', '%(DGBM8D03)s', '%(DGBM8W03)s', '%(DGBM8T03)s', '%(DGBM8M04)s', '%(DGBM8D04)s', '%(DGBM8W04)s', '%(DGBM8T04)s', '%(NietM8F01)s', '%(NietM8S01)s', '%(NietM8F02)s', '%(NietM8S02)s', '%(NietM6F01)s', '%(NietM6S01)s', '%(NietM6F02)s', '%(NietM6S02)s', '%(NietM6F03)s', '%(NietM6S03)s', '%(NietM6F04)s', '%(NietM6S04)s', '%(NietM6F05)s', '%(NietM6S05)s');" % data) cursor = self.executesql ("INSERT OR REPLACE INTO blindniet (dmc, startts, endts, DGBM8status01, DGBM8status02, DGBM8status03, DGBM8status04, NietM8status01, NietM8status02, NietM6status01, NietM6status02, NietM6status03, NietM6status04, NietM6status05, DGBM8M01, DGBM8D01, DGBM8W01, DGBM8T01, DGBM8M02, DGBM8D02, DGBM8W02, DGBM8T02, DGBM8M03, DGBM8D03, DGBM8W03, DGBM8T03, DGBM8M04, DGBM8D04, DGBM8W04, DGBM8T04, NietM8F01, NietM8S01, NietM8F02, NietM8S02, NietM6F01, NietM6S01, NietM6F02, NietM6S02, NietM6F03, NietM6S03, NietM6F04, NietM6S04, NietM6F05, NietM6S05) VALUES ('%(dmc)s', '%(startts)s', '%(endts)s', '%(DGBM8status01)s', '%(DGBM8status02)s', '%(DGBM8status03)s', '%(DGBM8status04)s', '%(NietM8status01)s', '%(NietM8status02)s', '%(NietM6status01)s', '%(NietM6status02)s', '%(NietM6status03)s', '%(NietM6status04)s', '%(NietM6status05)s', '%(DGBM8M01)s', '%(DGBM8D01)s', '%(DGBM8W01)s', '%(DGBM8T01)s', '%(DGBM8M02)s', '%(DGBM8D02)s', '%(DGBM8W02)s', '%(DGBM8T02)s', '%(DGBM8M03)s', '%(DGBM8D03)s', '%(DGBM8W03)s', '%(DGBM8T03)s', '%(DGBM8M04)s', '%(DGBM8D04)s', '%(DGBM8W04)s', '%(DGBM8T04)s', '%(NietM8F01)s', '%(NietM8S01)s', '%(NietM8F02)s', '%(NietM8S02)s', '%(NietM6F01)s', '%(NietM6S01)s', '%(NietM6F02)s', '%(NietM6S02)s', '%(NietM6F03)s', '%(NietM6S03)s', '%(NietM6F04)s', '%(NietM6S04)s', '%(NietM6F05)s', '%(NietM6S05)s');" % data)
except: except:
print ("Couldnt insert PD05 blindniet") print ("Couldnt insert PD05 blindniet")
raise Warning raise Warning
self.updatebde (data['dmc'], 'blindniet', data['bauteilstatus']) self.updatebde (data['dmc'], 'blindniet', data['bauteilstatus'])
self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
def deleteblindniet (self, dmc): def deleteblindniet (self, dmc):
@@ -236,13 +254,13 @@ class DB:
self.errlog ('PD02/03 for %s already exists - Overwrite' % data['dmc']) self.errlog ('PD02/03 for %s already exists - Overwrite' % data['dmc'])
try: try:
cursor = self.executesql ("INSERT OR REPLACE INTO putzzelle (dmc, startts, endts, aufnahme) VALUES ('%(dmc)s', '%(startts)s', '%(endts)s', '%(aufnahme)s';" % data) cursor = self.executesql ("INSERT OR REPLACE INTO putzzelle (dmc, startts, endts, aufnahme) VALUES ('%(dmc)s', '%(startts)s', '%(endts)s', '%(aufnahme)s');" % data)
except: except:
print ("Couldnt insert PD02/03 putzzelle") print ("Couldnt insert PD02/03 putzzelle")
raise Warning raise Warning
self.updatebde (data['dmc'], 'putzzelle', data['bauteilstatus']) self.updatebde (data['dmc'], 'putzzelle', data['bauteilstatus'])
#FixMe Add Ladungstraeger self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
def getputzzelle (self, dmc): def getputzzelle (self, dmc):
@@ -275,7 +293,7 @@ class DB:
self.updatebde (data['dmc'], 'chiron', data['bauteilstatus']) self.updatebde (data['dmc'], 'chiron', data['bauteilstatus'])
self.updatebde (data['dmc'], 'variante', data['bauteil'] + '-' + data['variante']) self.updatebde (data['dmc'], 'variante', data['bauteil'] + '-' + data['variante'])
self.log (1,'PD99 - Change variante') self.log (1,'PD99 - Change variante')
#FixMe Add Ladungstraeger self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
def getchiron (self, dmc): def getchiron (self, dmc):
@@ -306,6 +324,7 @@ class DB:
raise Warning raise Warning
self.updatebde (data['dmc'], 'bajonettclip', data['bauteilstatus']) self.updatebde (data['dmc'], 'bajonettclip', data['bauteilstatus'])
self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
def getbajonettclip (self, dmc): def getbajonettclip (self, dmc):
@@ -337,7 +356,7 @@ class DB:
Add Processdata 07 - cclip Add Processdata 07 - cclip
and update BDE data and update BDE data
""" """
if len (self.getbajonettclip (data['dmc'])): if len (self.getcclip (data['dmc'])):
self.errlog ('PD07 for %s already exists - Overwrite' % data['dmc']) self.errlog ('PD07 for %s already exists - Overwrite' % data['dmc'])
try: try:
@@ -347,6 +366,7 @@ class DB:
raise Warning raise Warning
self.updatebde (data['dmc'], 'cclip', data['bauteilstatus']) self.updatebde (data['dmc'], 'cclip', data['bauteilstatus'])
self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
def getcclip (self, dmc): def getcclip (self, dmc):
@@ -388,6 +408,7 @@ class DB:
raise Warning raise Warning
self.updatebde (data['dmc'], 'masseblech', data['bauteilstatus']) self.updatebde (data['dmc'], 'masseblech', data['bauteilstatus'])
self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
def getmasseblech (self, dmc): def getmasseblech (self, dmc):
@@ -420,15 +441,34 @@ class DB:
Add Processdata 10 - pruefzelle 2 Add Processdata 10 - pruefzelle 2
and update BDE data and update BDE data
""" """
if len (self.getpruefzelle2 (data['dmc'])):
self.errlog ('PD10 for %s already exists - Overwrite' % data['dmc'])
try: try:
cursor = self.executesql ("INSERT INTO pruefzelle2 (dmc, startts, endts, pp01, pp02, pp03, pp04, pp05, pp06, pp07, pp08, pp08, pp09, pp10, pp11, pp12, pp13, pp14, pp15, pp16, pp17, pp18, pp19, pp20, pp21, pp22, pp23, pp24, pp25, pp26, pp27, pp28, pp29, pp30, pp31, pp32, pp33, pp34, pp35, pp36, pp37, pp38, pp39, pp40) VALUES ('%(dmc)s', '%(startts)s', '%(endts)s', '%(pp01)s', '%(pp02)s', '%(pp03)s', '%(pp04)s', '%(pp05)s', '%(pp06)s', '%(pp07)s', '%(pp08)s', '%(pp09)s', '%(pp10)s', '%(pp11)s', '%(pp12)s', '%(pp13)s', '%(pp14)s', '%(pp15)s', '%(pp16)s', '%(pp17)s', '%(pp18)s', '%(pp19)s', '%(pp20)s', '%(pp21)s', '%(pp22)s', '%(pp23)s', '%(pp24)s', '%(pp25)s', '%(pp26)s', '%(pp27)s', '%(pp28)s', '%(pp29)s', '%(pp30)s', '%(pp31)s', '%(pp32)s', '%(pp33)s', '%(pp34)s', '%(pp34)s', '%(pp35)s', '%(pp36)s', '%(pp37)s', '%(pp38)s', '%(pp39)s', '%(pp40)s');" % data) cursor = self.executesql ("INSERT OR REPLACE INTO pruefzelle2 (dmc, startts, endts, pp01, pp02, pp03, pp04, pp05, pp06, pp07, pp08, pp08, pp09, pp10, pp11, pp12, pp13, pp14, pp15, pp16, pp17, pp18, pp19, pp20, pp21, pp22, pp23, pp24, pp25, pp26, pp27, pp28, pp29, pp30, pp31, pp32, pp33, pp34, pp35, pp36, pp37, pp38, pp39, pp40) VALUES ('%(dmc)s', '%(startts)s', '%(endts)s', '%(pp01)s', '%(pp02)s', '%(pp03)s', '%(pp04)s', '%(pp05)s', '%(pp06)s', '%(pp07)s', '%(pp08)s', '%(pp09)s', '%(pp10)s', '%(pp11)s', '%(pp12)s', '%(pp13)s', '%(pp14)s', '%(pp15)s', '%(pp16)s', '%(pp17)s', '%(pp18)s', '%(pp19)s', '%(pp20)s', '%(pp21)s', '%(pp22)s', '%(pp23)s', '%(pp24)s', '%(pp25)s', '%(pp26)s', '%(pp27)s', '%(pp28)s', '%(pp29)s', '%(pp30)s', '%(pp31)s', '%(pp32)s', '%(pp33)s', '%(pp34)s', '%(pp34)s', '%(pp35)s', '%(pp36)s', '%(pp37)s', '%(pp38)s', '%(pp39)s', '%(pp40)s');" % data)
except: except:
print ("Couldnt insert PD10 pruefzelle2") print ("Couldnt insert PD10 pruefzelle2")
raise Warning raise Warning
self.updatebde (data['dmc'], 'pruefzelle2', data['bauteilstatus']) self.updatebde (data['dmc'], 'pruefzelle2', data['bauteilstatus'])
self.updatebde (data['dmc'], 'ladungstraeger', data['ladungstraeger'])
self.updatebde (data['dmc'], 'endts', data['endts'])
def getpruefzelle2 (self, dmc):
"""
Get Processdata 10 - prufezelle2
"""
try:
cursor = self.executesql ("SELECT dmc, startts, endts, pp01, pp02, pp03, pp04, pp05, pp06, pp07, pp08, pp08, pp09, pp10, pp11, pp12, pp13, pp14, pp15, pp16, pp17, pp18, pp19, pp20, pp21, pp22, pp23, pp24, pp25, pp26, pp27, pp28, pp29, pp30, pp31, pp32, pp33, pp34, pp35, pp36, pp37, pp38, pp39, pp40 FROM pruefzelle2 WHERE dmc = '%s';" % dmc)
except:
print ("Couldnt get PD10 pruefzelle2")
raise Warning
return cursor.fetchall ()
def deletepruefzelle2 (self, dmc): def deletepruefzelle2 (self, dmc):
""" """
Delete Pruefzelle2 info Delete Pruefzelle2 info

View File

@@ -30,8 +30,9 @@ def fromstring (data):
tel.attrib['dmc'] = (data [10:38]).decode ().rstrip (' \x00') tel.attrib['dmc'] = (data [10:38]).decode ().rstrip (' \x00')
tel.attrib['startts'] = tsdecode (data [38:52].decode ()) tel.attrib['startts'] = tsdecode (data [38:52].decode ())
tel.attrib['endts'] = tsdecode (data [52:66].decode ()) tel.attrib['endts'] = tsdecode (data [52:66].decode ())
tel.attrib['bauteil'] = bauteil.get ((data [66] << 8) + data [67], '') # Bitarray other Byte Order !!
tel.attrib['variante'] = variante.get ((data [68] << 8) + data [69], '') tel.attrib['bauteil'] = bauteil.get ((data [67] << 8) + data [66], '')
tel.attrib['variante'] = variante.get ((data [69] << 8) + data [68], '')
tel.attrib['seriennr'] = '0' tel.attrib['seriennr'] = '0'
#66-70 Varianten daten #66-70 Varianten daten
tel.attrib['bauteilstatus'] = bauteilstatus.get (chr (data [70]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['bauteilstatus'] = bauteilstatus.get (chr (data [70]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
@@ -76,7 +77,7 @@ def fromstring (data):
tel.attrib['pp38'] = bearbeitungsstatus.get (chr (data [109]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp38'] = bearbeitungsstatus.get (chr (data [109]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['pp39'] = bearbeitungsstatus.get (chr (data [110]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp39'] = bearbeitungsstatus.get (chr (data [110]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['pp40'] = bearbeitungsstatus.get (chr (data [111]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp40'] = bearbeitungsstatus.get (chr (data [111]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['ladungstraeger'] = data [112:113].decode () tel.attrib['ladungstraeger'] = data [112:114].decode ()
return tel return tel

View File

@@ -36,7 +36,7 @@ def fromstring (data):
except: except:
print ("Debug-aufnahme", data[90], data[91]) print ("Debug-aufnahme", data[90], data[91])
tel.attrib['ladungstraeger'] = data [92:93].decode () tel.attrib['ladungstraeger'] = data [92:94].decode ()
return tel return tel

View File

@@ -163,6 +163,7 @@ def fromstring (data):
except: except:
print ("Debug-NietM8S02", data[148], data[149]) print ("Debug-NietM8S02", data[148], data[149])
tel.attrib['ladungstraeger'] = data [150:152].decode ()
return tel return tel
@@ -221,6 +222,7 @@ class TEL_PD05 (TELEGRAM):
self.attrib['NietM8S01'] = '0' self.attrib['NietM8S01'] = '0'
self.attrib['NietM8F02'] = '0' self.attrib['NietM8F02'] = '0'
self.attrib['NietM8S02'] = '0' self.attrib['NietM8S02'] = '0'
self.attrib['ladungstraeger'] = ''
self.len = 2220908 self.len = 2220908

View File

@@ -39,6 +39,7 @@ def fromstring (data):
tel.attrib['aufnahme'] = (data [90] << 8) + data [91] tel.attrib['aufnahme'] = (data [90] << 8) + data [91]
except: except:
print ("Debug-aufnahme", data[90], data[91]) print ("Debug-aufnahme", data[90], data[91])
tel.attrib['ladungstraeger'] = data [92:94].decode ()
return tel return tel
@@ -60,6 +61,7 @@ class TEL_PD06 (TELEGRAM):
self.attrib['bajostatus03'] = '0' self.attrib['bajostatus03'] = '0'
self.attrib['bajostatus04'] = '0' self.attrib['bajostatus04'] = '0'
self.attrib['aufnahme'] = 0 self.attrib['aufnahme'] = 0
self.attrib['ladungstraeger'] = ''
self.len = 2220907 self.len = 2220907
return return

View File

@@ -53,6 +53,7 @@ def fromstring (data):
tel.attrib['aufnahme'] = (data [90] << 8) + data [91] tel.attrib['aufnahme'] = (data [90] << 8) + data [91]
except: except:
print ("Debug-aufnahme", data[90], data[91]) print ("Debug-aufnahme", data[90], data[91])
tel.attrib['ladungstraeger'] = data [92:94].decode ()
return tel return tel
@@ -88,6 +89,7 @@ class TEL_PD07 (TELEGRAM):
self.attrib['clipstatus17'] = '0' self.attrib['clipstatus17'] = '0'
self.attrib['clipstatus18'] = '0' self.attrib['clipstatus18'] = '0'
self.attrib['aufnahme'] = 0 self.attrib['aufnahme'] = 0
self.attrib['ladungstraeger'] = ''
self.len = 2220907 self.len = 2220907
return return

View File

@@ -60,6 +60,7 @@ def fromstring (data):
tel.attrib['tmutter'] = (data [100] << 8) + data [101] tel.attrib['tmutter'] = (data [100] << 8) + data [101]
except: except:
print ("Debug-tmutter", data[100], data[101]) print ("Debug-tmutter", data[100], data[101])
tel.attrib['ladungstraeger'] = data [102:104].decode ()
#tel.attrib['box_nr'] = (ord (data [10]) << 24) + (ord (data [11]) << 16) + (ord (data [12]) << 8) + ord (data [13]) #data [10:14].strip () #tel.attrib['box_nr'] = (ord (data [10]) << 24) + (ord (data [11]) << 16) + (ord (data [12]) << 8) + ord (data [13]) #data [10:14].strip ()
#tel.attrib['location'] = data [14:18] #tel.attrib['location'] = data [14:18]
#tel.attrib['destination'] = (ord (data [18]) << 8) + ord (data [19]) #tel.attrib['destination'] = (ord (data [18]) << 8) + ord (data [19])
@@ -78,6 +79,7 @@ class TEL_PD08 (TELEGRAM):
self.attrib['startts'] = '' self.attrib['startts'] = ''
self.attrib['endts'] = '' self.attrib['endts'] = ''
self.attrib['dmc'] = '' self.attrib['dmc'] = ''
self.attrib['ladungstraeger'] = ''
self.len = 2220908 self.len = 2220908
return return

View File

@@ -26,12 +26,12 @@ def fromstring (data):
tel.attrib['src'] = data [2:4].decode () tel.attrib['src'] = data [2:4].decode ()
tel.attrib['dst'] = data [4:6].decode () tel.attrib['dst'] = data [4:6].decode ()
tel.attrib['type'] = data [6:10].decode () tel.attrib['type'] = data [6:10].decode ()
tel.attrib['dmc'] = (data [10:38]).decode ().rstrip (' \x00') tel.attrib['dmc'] = (data [10:38]).decode ().rstrip (' \x00').lstrip (' ')
tel.attrib['startts'] = tsdecode (data [38:52].decode ()) tel.attrib['startts'] = tsdecode (data [38:52].decode ())
tel.attrib['endts'] = tsdecode (data [52:66].decode ()) tel.attrib['endts'] = tsdecode (data [52:66].decode ())
#66-70 Varianten daten #66-70 Varianten daten
tel.attrib['bauteilstatus'] = bauteilstatus.get (chr (data [70]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['bauteilstatus'] = bauteilstatus.get (chr (data [70]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['pp10'] = bearbeitungsstatus.get (chr (data [71]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp01'] = bearbeitungsstatus.get (chr (data [71]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['pp02'] = bearbeitungsstatus.get (chr (data [72]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp02'] = bearbeitungsstatus.get (chr (data [72]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['pp03'] = bearbeitungsstatus.get (chr (data [73]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp03'] = bearbeitungsstatus.get (chr (data [73]), '') #0 - unbearbeitet; 1 - iO; 2 - niO
tel.attrib['pp04'] = bearbeitungsstatus.get (chr (data [74]), '') #0 - unbearbeitet; 1 - iO; 2 - niO tel.attrib['pp04'] = bearbeitungsstatus.get (chr (data [74]), '') #0 - unbearbeitet; 1 - iO; 2 - niO