[16.0] new module l10n_it_fatturapa_out_dn#4054
Conversation
bf6b932 to
06aceaf
Compare
|
/ocabot rebase |
|
@francesco-ooops The rebase process failed, because command |
|
@TheMule71 puoi fare rebase? |
961fdea to
ce6af3e
Compare
ce6af3e to
662c34e
Compare
|
La modifica è stata introdotta con #4176. Per caso è cambiato qualcosa nell'ambiente di esecuzione dei test (e In ogni caso prob. va fixato visto che non deve dipendere da |
| "NumeroDDT": delivery_note.name, | ||
| "DataDDT": delivery_note.date, | ||
| } | ||
| e_invoice_lines = self.get_e_invoice_lines(invoice) |
There was a problem hiding this comment.
Ho cambiato questa parte così per mettere il riferimentonumerolinea solo se c'è più di un DN collegato e togliere le righe nota/sezione:
if len(invoice.delivery_note_ids) > 1:
# RiferimentoNumeroLinea should not be populated
# if all the lines of the invoice
# are linked to this delivery_note
e_invoice_lines = self.get_e_invoice_lines(invoice)
e_invoice_delivery_note_lines = e_invoice_lines.filtered(
lambda eil, delivery_note=delivery_note:
eil.delivery_note_id == delivery_note and eil.display_type == 'product')
e_invoice_lines_list = list(e_invoice_lines)
lines_refs_list = [
e_invoice_lines_list.index(line) + 1 # NumeroLinea is 1-based
for line in e_invoice_delivery_note_lines
]
ddt_data.update(
{
"_invoice_lines": e_invoice_delivery_note_lines,
"RiferimentoNumeroLinea": lines_refs_list,
}
)
dati_ddt_list.append(ddt_data)
There was a problem hiding this comment.
Non seguo la logica, in che senso se len(invoice.delivery_note_ids) > 1 allora tutte le righe fattura sono collegate allo stesso DDT?
Potrebbero esserci righe che non sono collegate al DDT.
È vero che probabilmente la maggior parte delle volte non sarebbe un problema perché tali righe saranno magari per servizi e quindi va da sé che non riguardano il DDT. Però è una considerazione di pratica, in teoria nulla vieta questo scenario:
crei SO -> consegni -> crei DDT -> crei fattura
ora aggiungi uno o più prodotti alla fattura
prima avrebbe riportato nell'XML i riferimenti alle sole righe derivate del DDT;
se non sbaglio, con questa modifica, riporterebbe l'intera fattura riferita al quel DDT, e se uno va a cercare i prodotti aggiunti dopo in fattura nel DDT non li trova.
There was a problem hiding this comment.
Non seguo la logica, in che senso se len(invoice.delivery_note_ids) > 1 allora tutte le righe fattura sono collegate allo stesso DDT?
No, collego solo quelle che appartengono ai DN come si vede in questo passaggio:
e_invoice_delivery_note_lines = e_invoice_lines.filtered(
lambda eil, delivery_note=delivery_note:
eil.delivery_note_id == delivery_note and eil.display_type == 'product')
se non sbaglio, con questa modifica, riporterebbe l'intera fattura riferita al quel DDT, e se uno va a cercare i prodotti aggiunti dopo in fattura nel DDT non li trova.
se committi queste modifiche le si può provare anche nel runboat e dovresti vedere che funziona
lo stiamo usando in produzione da un cliente, ho fatto un test con il flusso che hai indicato e correttamente la riga aggiunta post in fattura non viene collegata a DN
There was a problem hiding this comment.
Ok, ma quello lo fai se len(invoice.delivery_note_ids) > 1.
Il caso che ho portato era per len(invoice.delivery_note_ids) == 1.
Rileggendo nel mio commento precedente non è chiaro, riformulo:
Non seguo la logica, in che senso se len(invoice.delivery_note_ids) == 1 allora tutte le righe fattura sono collegate allo stesso DDT?
292aed2 to
c02958d
Compare
173564b to
e3a0c81
Compare
|
Ok ho rivisto alcune cose, adesso |
5a4610b to
173564b
Compare
|
Ok, come non detto, Si torna a 173564b
è sempre vuoto. |
|
(faccio minor perchè c'è un'aggiunta su altro modulo) |
|
What a great day to merge this nice PR. Let's do it! |
|
@sergiocorato your merge command was aborted due to failed check(s), which you can inspect on this commit of 16.0-ocabot-merge-pr-4054-by-sergiocorato-bump-minor. After fixing the problem, you can re-issue a merge command. Please refrain from merging manually as it will most probably make the target branch red. |
|
@TheMule71 manca una configurazione sul pagamento su un test, non so come non fosse stata rilevata prima, se puoi correggerla |
|
I test dovrebbero fallire anche qui nella PR se il codice fosse più aggiornato, lo aggiorno. |
|
Congratulations, PR rebased to 16.0. |
452456b to
f031508
Compare
|
@TheMule71 puoi correggere i test? Altrimenti non si può mergiare |
f031508 to
b54cd6a
Compare
This module adds DatiDDT section to e-invoices
b54cd6a to
679acc2
Compare
Tra l'altro non ho ben capito come mai i test si sono rotti, erano verdi prima, deve essere cambiato qualcosa: magari check più aggressivi opppure un default che prima non c'era. Comunque ho impostato il metodo di pagamento corretto e aggiornato l'XML del test di conseguenza. |
monen17
left a comment
There was a problem hiding this comment.
Grazie della PR!
Il modulo è stato mergiato in 14.0 con #2202 quindi questa è una migrazione, puoi riscrivere i commit come indicato in https://github.com/OCA/maintainer-tools/wiki/Migration-to-version-16.0? Così è più chiaro cosa è cambiato da 14.0 a 16.0.
|
/ocabot migration l10n_it_fatturapa_out_dn |
|
Veramente le due PR sono andate avanti in parallelo, tant'è che questa è stata creata un anno prima che l'altra venisse mergiata. I commit sono stati portati a mano. Comunque si può simulare una migrazione e riportare le modifiche: |
Fixes #4005
Modulo di collegamento tra l10n_it_fatturapa_out e l10n_it_delivery_note
vd. anche #2202