add tsa_codice

This commit is contained in:
2024-12-10 10:25:04 +01:00
parent 03389e1365
commit 53ed39fe10
14 changed files with 49 additions and 27 deletions

1
.~lock.TEST.xlsx# Normal file
View File

@ -0,0 +1 @@
,pc-sviluppo1,pcsviluppo1,10.12.2024 10:17,file:///home/pc-sviluppo1/.config/libreoffice/4;

Binary file not shown.

BIN
TEST.xlsx Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -13,13 +13,13 @@ data_fine = datetime.datetime.strptime(data_str, "%Y-%m-%d").date()
tla = 1
value_insert = []
def insert_records(connection,codice,descrizione,um,costo,sc1,sc2,ricarica,listino,codice_alternativo,codice_barre,art):
def insert_records(connection,codice,descrizione,um,costo,sc1,sc2,ricarica,listino,codice_alternativo,codice_barre,art,tsa_codice):
try:
result = []
cursor = connection.cursor()
if art == False:
query_art = "INSERT INTO art (codice,DESCRIZIONE1,TUM_CODICE,codice_alternativo,TUB_CODICE,TCM_CODICE,TGM_CODICE,TIV_CODICE_VENDITE,TIV_CODICE_ACQUISTI,TCA_CODICE,TAQ_CODICE,TS3_CODICE,TP2_CODICE,TSA_CODICE,TIN_CODICE,TNI_CODICE,TAA_CODICE) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
cursor.execute(query_art,(codice,descrizione,um,codice_alternativo,'0','0','0','0','0','0','0','0','0','0','0','0','0'))
query_art = "INSERT INTO art (codice,DESCRIZIONE1,TUM_CODICE,codice_alternativo,TSA_CODICE,TUB_CODICE,TCM_CODICE,TGM_CODICE,TIV_CODICE_VENDITE,TIV_CODICE_ACQUISTI,TCA_CODICE,TAQ_CODICE,TS3_CODICE,TP2_CODICE,TIN_CODICE,TAA_CODICE) VALUES (%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s,%s)"
cursor.execute(query_art,(codice,descrizione,um,codice_alternativo,tsa_codice,'0','0','0','22','22','0','0','0','0','0','0'))
count = cursor.rowcount
result.append(count)
@ -48,7 +48,7 @@ def insert_records(connection,codice,descrizione,um,costo,sc1,sc2,ricarica,listi
connection.commit()
if any(val != 0 for val in result):
row = [codice,descrizione,um,costo,sc1,sc2,ricarica,codice_alternativo,codice_barre]
row = [codice,descrizione,um,costo,sc1,sc2,ricarica,codice_alternativo,codice_barre,tsa_codice]
value_insert.append(row)
return value_insert

44
main.py
View File

@ -21,10 +21,10 @@ password = "masterkey"
database = "arc_rumo"
port = 3307
#creao la connessione al database
#creo la connessione al database
conn = create_connection(host, user, password, database, port)
#leggo il file excel
df = pd.read_excel('TEST.xlsx', usecols='A:M')
df = pd.read_excel('TEST.xlsx', usecols='A:N')
#leggo le colonne del file excel
for index, row in df.iterrows():
@ -32,8 +32,16 @@ for index, row in df.iterrows():
descrizione = row['DESCRIZIONE']
um = row['UN']
costo = row['COSTO']
sc1 = str(row['SC1']) ## tsm_codice per la tabella lsa
sc2 = str(row['SC2']) ## tsm_codice per la tabella lsv
if math.isnan(row['SC1']):
sc1 = row['SC1']
else:
sc1 = int(row['SC1']) ## tsm_codice per la tabella lsa
if math.isnan(row['SC2']):
sc2 = row['SC2']
else :
sc2 = int(row['SC2'])
if math.isnan(row['RICARICA1']):
ricarica1 = row['RICARICA1']
@ -60,13 +68,12 @@ for index, row in df.iterrows():
codice_alternativo = str(row['CODICE ALTERNATIVO'])
prezzo = float(row['COSTO'])
if conn :
## cerco codice articlo
## se non esiste chiamo l funzione di insert
## se esiste controllo cosice listino
## se non esiste chiamo la funzione di insert
## se esiste chiamo la funzione di update
if math.isnan(row['TSA_CODICE']):
tsa_codice = row['TSA_CODICE']
else:
tsa_codice = int(row['TSA_CODICE'])
if conn :
if ricarica1 is not None and not math.isnan(ricarica1):
listino = 1
ricarica = ricarica1
@ -80,22 +87,22 @@ for index, row in df.iterrows():
listino = 4
ricarica = ricarica4
art = search_article(conn,codice,listino)
art = search_article(conn,codice,listino) #cerco codice articolo
if art == True :
value_update = update_records(conn,codice,prezzo,sc1,sc2,listino,ricarica,codice_barre,codice_alternativo)
if art == True : ## se l'atricolo esiste eseguo l'update dei valori
value_update = update_records(conn,codice,prezzo,sc1,sc2,listino,ricarica,codice_barre,codice_alternativo,tsa_codice)
print(value_update)
if value_update is not None:
write_excel(value_update)
else:
else: ## se non esiste o non esiste con quel listino effettuo l'inserimento
costo = 0.00
if descrizione is None :
descrizione = ' '
if um is None:
um = ' '
if sc1 is None:
if math.isnan(sc1):
sc1 = ' '
if sc2 is None:
if math.isnan(sc2):
sc2 = ' '
if math.isnan(ricarica):
ricarica = ' '
@ -103,7 +110,10 @@ for index, row in df.iterrows():
codice_alternativo = ' '
if codice_barre is None:
codice_barre = ' '
value_insert = insert_records(conn,codice,descrizione,um,costo,sc1,sc2,ricarica,listino,codice_alternativo,codice_barre,art)
if math.isnan(tsa_codice):
tsa_codice = ' '
value_insert = insert_records(conn,codice,descrizione,um,costo,sc1,sc2,ricarica,listino,codice_alternativo,codice_barre,art,tsa_codice)
write_excel_insert(value_insert)
if conn :

View File

@ -5,19 +5,19 @@ import math
value_update = []
def update_records(connection,codice,prezzo,sc1,sc2,listino,ricarica,codice_barre,codice_alternativo):
def update_records(connection,codice,prezzo,sc1,sc2,listino,ricarica,codice_barre,codice_alternativo,tsa_codice):
try:
result = []
cursor = connection.cursor()
if sc1 is not None :
if sc1 is not None and not math.isnan(sc1):
query_lsa = "UPDATE lsa SET TSM_CODICE = %s WHERE ART_CODICE = %s AND TLA_CODICE = '1'"
cursor.execute(query_lsa, (sc1, codice))
count = cursor.rowcount
result.append(count)
if sc2 is not None:
if sc2 is not None and not math.isnan(sc2):
query_lsv_tsm = "UPDATE lsv SET TSM_CODICE = %s WHERE ART_CODICE = %s AND TLV_CODICE = %s"
cursor.execute(query_lsv_tsm, (sc2, codice,listino))
count = cursor.rowcount
@ -47,6 +47,12 @@ def update_records(connection,codice,prezzo,sc1,sc2,listino,ricarica,codice_barr
count = cursor.rowcount
result.append(count)
if tsa_codice is not None and not math.isnan(tsa_codice):
query_tsa = "UPDATE art SET TSA_CODICE = %s WHERE codice = %s"
cursor.execute(query_tsa, (tsa_codice, codice))
count = cursor.rowcount
result.append(count)
connection.commit()
if all(value == 0 for value in result):
@ -72,9 +78,12 @@ def update_records(connection,codice,prezzo,sc1,sc2,listino,ricarica,codice_barr
codice_barre = 0
if pd.isna(codice_alternativo):
codice_alternativo = 0;
codice_alternativo = 0
row = [codice,prezzo,listino,sc1,ricarica,codice_barre,codice_alternativo,sc2]
if math.isnan(tsa_codice):
tsa_codice = 0
row = [codice,prezzo,listino,sc1,ricarica,codice_barre,codice_alternativo,sc2,tsa_codice]
value_update.append(row)
return value_update

View File

@ -19,6 +19,7 @@ def write_excel(value_update):
worksheet.write('F1', 'CODICE BARRE')
worksheet.write('G1', 'CODICE ALTERNATIVO')
worksheet.write('H1', 'TSM_CODICE_LSV')
worksheet.write('I1', 'TSA_CODICE')
for row_index, row_data in enumerate(value_update):

View File

@ -20,6 +20,7 @@ def write_excel_insert(value_insert):
worksheet.write('G1', 'RICARICA')
worksheet.write('H1', 'CODICE_ALTERNATIVO')
worksheet.write('I1', 'CODICE_BARRE')
worksheet.write('L1', 'TSA_CODICE')
for row_index, row_data in enumerate(value_insert):