continua a funzionare ma solo con un thread per volta

devo togliere os.chdir e usare i percorsi assoluti, altrimenti si
confonde perche' cambia la dir globalmente
This commit is contained in:
2020-03-25 16:20:02 +01:00
parent d9bea99092
commit a2400ccdbc
3 changed files with 21 additions and 8 deletions

View File

@@ -59,8 +59,8 @@
"nameNotFoundStr": "ND",
"includeTitle": true,
"removeDuplicates": true,
"showSkipped": true,
"showRemovedDuplicates": true,
"showSkipped": false,
"showRemovedDuplicates": false,
"loadTXT": true,
"loadDOCX": false,
"removeOldFiles": true,

View File

@@ -20,7 +20,9 @@ from libconfload import bananaCONF
from libsplit import bananaSPLITTER
from PyQt5.QtCore import QDir
import copy
from PyQt5.QtWidgets import QMessageBox
from PyQt5.Qt import pyqtSlot, QThread
import copy, time
class bananaMain(PyQt5.QtWidgets.QMainWindow):
def __init__(self):
@@ -438,19 +440,30 @@ class bananaSelezOut(PyQt5.QtWidgets.QWidget):
#unisco i pezzi
splconf['docStruct']['outNameFormat'] = splconf['docStruct']['outNameSep'].join(nametemp)+splconf['docStruct']['outExt']
#costruisco messageBox
msgb = QMessageBox(parent=self, icon=QMessageBox.Warning)
msgb.show()
@pyqtSlot()
def updateState(msg):
print (msg)
msgb.setText(msg)
# costruisco i thread
tDict={}
try:
print("inizio splitter")
for f in splconf['paths']['fileList']:
splconf['name']=f
tDict[f] = bananaSPLITTER(fileParams=copy.deepcopy(splconf), logger=self.log)
tDict[f].sendStatus.connect(updateState)
tDict[f].start()
tDict[f].wait()
#tDict[f].wait()
time.sleep(1)
except Exception as e:
self.log.error(f"Impossibile avviare lo splitter: {e}")
pass
class bananaAdvOpt(PyQt5.QtWidgets.QWidget):
def __init__(self, confloader=None, logger=None):
PyQt5.QtWidgets.QWidget.__init__(self)

View File

@@ -7,7 +7,7 @@ from PyQt5.QtCore import QThread
from PyQt5.Qt import pyqtSignal
from slugify import slugify
import time, parse, re, copy, os,json
import time, parse, re, copy, os, json
import traceback
class bananaSPLITTER(QThread):
@@ -39,6 +39,7 @@ class bananaSPLITTER(QThread):
def run(self):
self.log.info("Nuovo SPLITTER su file: {}".format(self.fileName))
self.sendStatus.emit(f"Inizio {self.fileName}")
try:
self.openFile()
self.remEmptyLines()
@@ -134,8 +135,7 @@ class bananaSPLITTER(QThread):
pass
else:
if self.settings["showSkipped"]:
self.log.warn("Il conto dei documenti non torna! LexisNexis \
ne ha saltato qualcuno!\nPrecedente:{0}-Attuale:{1}".format(docNumber,nn["current"]))
self.log.warn("Il conto dei documenti non torna! LexisNexis ne ha saltato qualcuno!\n Precedente:{0}-Attuale:{1}".format(docNumber,nn["current"]))
docSkipped+=1
docNumber = nn["current"]
except: