Il giorno 27 febbraio 2016 13:32, Francesco Porcari <
francesco.porcari@xxxxxxxxxxx> ha scritto:
Allora Felice, io cerco di darti un po’ di ingredienti in base a quello
che ho capito siano le tue esigenze.
Intanto tu puoi mettere relativamente ad una table N contatori ai quali
saranno associati N metodi col prefisso counter_
quindi tu avrai nel tuo ordine un qualcosa del tipo
tbl.column(‘protocollo’,…)
col suo
def counter_protocollo(self,record=None):
….
e potresti avere tranquillamente anche il campo
tbl.column(’n_fattura’,…)
col suo
def counter_n_fattura(self,record=None):
….
tenendo due serie in parallelo. *Ovviamente* però tu vuoi che il
contatore della fattura venga assegnato quando l’ordine viene fatturato
nel qualcaso dovrai sfruttare il fatto che nel metodo *counter_n_fattura
*venga
passato il record.
Infatti se il metodo *contatore* non torna nulla il contatore NON viene
assegnato. Quindi tu potresti mettere un campo in più nell’ordine che si
chiama
timestamp_fatturazione (potrebbe essere un booleano come un timestamp) e
ti limiti a marcare il record con appunto il valore di questo campo.
A questo punto nel metodo *counter_n_fattura *che viene chiamato durante
i trigger tu fai così
def counter_n_fattura(self,record=None):
if not record['timestamp_fatturazione’]:
return
#altrimenti vai e procedi con il ritornare i parametri del contatore
return dict(…)
Per quello che riguarda la stampa abbiamo la possibilità O di generare un
pdf “volante” ossia tu chiami una rpc tramite un url che costruisce il file
in un file temp e ritorni direttamente l’handler pdf questo provoca il
download del file. È però anche possibile procedere con una stampa html
chiamando sempre un url nel qualcaso farai venir fuori una finestra del
browser con l’html che verrà stampato o stampato come pdf da scaricare.
Grazie mille credo di aver capito cosa intendi.
Per maggiori dettagli ti posso anche seguire via teamviewer
Francesco