Hide field ITSA
This commit is contained in:
@@ -629,6 +629,8 @@ Owner technique: `a completer`
|
||||
|
||||
- Intent: eviter qu'un fee cree sur un lot virtuel reste calcule sur la
|
||||
quantite contractuelle totale apres creation de lots physiques.
|
||||
- Detail implementation / PnL:
|
||||
- voir `modules/purchase_trade/docs/fees.md`
|
||||
- Description:
|
||||
- Le lien `fee.lots` avec le lot virtuel est conserve comme fallback.
|
||||
- Des qu'un fee possede au moins un lot physique dans `fee.lots`, les lots
|
||||
|
||||
51
modules/purchase_trade/docs/fees.md
Normal file
51
modules/purchase_trade/docs/fees.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# Fees - regles de synchronisation PnL
|
||||
|
||||
## PnL apres ajout ou modification d'un fee
|
||||
|
||||
Un changement sur un `fee.fee` doit relancer le PnL des lignes commerciales
|
||||
impactees, limite aux types de valuation fees:
|
||||
|
||||
- `pur. fee`
|
||||
- `sale fee`
|
||||
- `shipment fee`
|
||||
- `line fee`
|
||||
|
||||
Le recalcul utilise `valuation_type = 'fees'` pour ne pas reecrire les lignes de
|
||||
prix, derives ou MTM.
|
||||
|
||||
## Lignes impactees
|
||||
|
||||
Les lignes a recalculer sont retrouvees depuis les lots lies au fee:
|
||||
|
||||
- `lot.line` pour la `purchase.line`
|
||||
- `lot.sale_line` pour la `sale.line`
|
||||
|
||||
Pour un fee de `stock.shipment.in`, si le lien direct par `fee.lots` ne suffit
|
||||
pas, le shipment sert de fallback:
|
||||
|
||||
- `shipment.incoming_moves[].lot`
|
||||
- `shipment.lotqt[].lot_p`
|
||||
- `shipment.lotqt[].lot_s`
|
||||
|
||||
Ce fallback couvre les shipments encore ouverts ou le fee est pose sur des
|
||||
`lot.qt` avant creation de lots physiques.
|
||||
|
||||
## Lots effectifs du fee
|
||||
|
||||
Le PnL des fees suit la regle BR-PT-021:
|
||||
|
||||
- tant qu'il n'existe que des lots virtuels, le fee valorise l'ouvert;
|
||||
- des qu'un lot physique est lie au fee, les lots physiques deviennent la base
|
||||
effective;
|
||||
- le lien virtuel peut rester present comme fallback.
|
||||
|
||||
## Points de declenchement
|
||||
|
||||
Le recalcul est declenche apres:
|
||||
|
||||
- creation, modification ou suppression d'un `fee.fee`;
|
||||
- creation, modification ou suppression d'un lien `fee.lots`.
|
||||
|
||||
`stock.shipment.in.validate()` recalcule deja le PnL depuis les lots du
|
||||
shipment, mais ce workflow ne couvre pas les changements de fee saisis apres
|
||||
coup dans l'onglet Fees.
|
||||
Reference in New Issue
Block a user