Forum

Benvenuto!

Questo è il forum ufficiale dell'Associazione Odoo Italia. Dopo esserti registrato potrai partecipare ponendo domande o rispondendo a quelle esistenti. Non scordarti di compilare il tuo profilo e consultare le linee guida prima di iniziare a scrivere.

0

lanciare un file bat esterno da odoo.

Avatar
Domenico Di Nardo

Salve ragazzi, una cosa banalissima sta diventando un inferno.

Ho un file bat che fa certe cose, questo file lo devo lanciare da odoo. Se faccio un test su Python con, ad esempio, subprocess.call([r'C:\import_l3.bat']), funziona alla grande. Ho provato anche con Popen, os.startfile, insomma, funziona sempre bene.

Se provo a farlo da Odoo non succede nulla. Niente. Sembra che il comando viene eseguito ma è come se il file non venisse comunque lanciato. 

Avete consigli?

Avatar
Abbandona
3 Risposte
0
Avatar
Domenico Di Nardo
Migliore risposta
Ecco la mia funzione
Le ho provate tutte, ma niente.
Consigli?

def importaWireList(self):
wire_list = ['Checked;Name;Total;Batch;Length;Raw Material;Processing;IDL4 \n']
for record in self:
# la stringa della riga del csv
wire_list.append('1;{};{};{};{};{};{};{} \n'.format(
record.l4smcl3_name,
record.l4smcl3_total,
record.l4smcl3_batch,
record.l4smcl3_length,
record.l4smcl3_raw_material,
record.l4smcl3_processing,
record.l4smcl3_codice))
# scrivo il file
fileWireList = open(r"C:\L3\DA_IMPORTARE\wire_list.csv", "w") #<- FILE CREATO CORRETTAMENRE
fileWireList.writelines(wire_list)
fileWireList.close()
#lancio l'import
subprocess.call(r'C:\L3\import_l3.bat') #<- NON SUCCEDE NULLA!!!! Non ci sono errori, ma non viene eseguito.
Avatar
Abbandona
0
Avatar
Davide Corio
Migliore risposta

Hai guardato l'esempio di codice che ti ho linkato?

Avatar
Abbandona
0
Avatar
Domenico Di Nardo
Migliore risposta

Ho guardato, ho seguito, ma non funziona.

Avatar
Abbandona
0
Avatar
Davide Corio
Migliore risposta
Avatar
Abbandona
0
Avatar
Luigi Di Naro
Migliore risposta

In quale punto di odoo lo lanci??? Ad esempio all'interno di un metodo direttamente chiamato dal cron non è possibile usare os cosi' come in tutti i metodi che accettano come input espressioni python.

Magari se metti un pezzo del codice ti si puo' dare una mano ... cosi' in maniera generica e' difficile capire dove possa stare il problema.

Altro problema potrebbero essere i permessi dell'utente con cui sta girando odoo ... ma su windows non so aiutarti.

Avatar
Abbandona