Files
tradon/modules/purchase_trade/docs_source/business/sessions.md
2026-06-03 14:30:16 +02:00

82 lines
4.6 KiB
Markdown

# Journal de migration et sessions
Statut: `non canonique`
Cette page sert de routeur vers les notes historiques. Une note devient
canonique seulement quand elle est reprise dans une page thematique.
## Sources historiques
- `modules/purchase_trade/docs/business-rules.md`
- `modules/purchase_trade/docs/business-rules-architecture-proposal.md`
- `notes/business_rules.md`
- `notes/template_business_rules.md`
## Notes deja partiellement promues
- Session `2026-06-02`: demurrage / charter conditions et clauses de contrat,
a promouvoir dans une page thematique avant de devenir canonique.
- Demurrage / charter conditions:
- Les conditions de charter sont portees par `charter.condition`, avec
clauses laytime/NOR/demurrage/despatch, responsabilite, partie concernee
et lignes de rates via `charter.condition.rate`.
- Les contrats Sale et Purchase ont un onglet `Charter Conditions` au
niveau entete et ligne. Une ligne sans conditions propres herite des
conditions de l'entete; des conditions de ligne remplacent l'heritage.
- Les conditions creees depuis une Sale ou une Sale Line sont limitees au
role `Customer`; celles creees depuis une Purchase ou Purchase Line sont
limitees au role `Supplier`. Les conditions creees depuis une
Charter Party ne peuvent pas utiliser les roles `Supplier` ou `Customer`
afin d'eviter la confusion entre conditions armateur/charte et conditions
contractuelles achat/vente.
- Les shipments et SOF exposent les conditions Owner, Supplier et Customer
retrouvees depuis le charter party et les lots/lignes physiques.
- Le calcul SOF privilegie la condition appliquee: laytime allowed,
evenement de debut de laytime, offset de debut, evenement de fin,
pumping rate, rate demurrage et rate despatch. Les clauses texte
laytime/NOR/demurrage/despatch restent contractuelles et ne doivent pas
servir de source de calcul.
- Un solde de laytime negatif cree une compensation `demurrage`; un solde
positif peut creer une compensation `despatch` si un rate despatch est
defini.
- Contract clauses:
- Structure ajoutee autour de `contract.clause`, `contract.template`,
`contract.template.line` et `contract.clause.selection`, visible dans les
onglets Sale/Purchase et dans les menus globaux Sales/Purchases.
- Les clauses et templates de reference sont generes depuis
`STANDARDIZED CONTRACTS - REFERENCE BOOK 2012 (Official version).docx`
dans `contract_clause_reference.xml`: 53 clauses, 6 templates Sale et
120 lignes de template.
- Un script SQL direct PostgreSQL existe dans
`docs/sql/import_contract_clause_reference.sql` pour alimenter la base
quand les tables existent deja; il ne remplace pas la mise a jour module
necessaire pour creer/mettre a jour le schema.
- Les templates generes sont `direction = sale`, car le document source
parle de Sales Agreement avec Seller/Buyer. Les variantes Purchase
doivent etre adaptees avant import si on veut les afficher cote achat.
- Les variables reconnues sont rendues depuis le contexte contrat
(`[Contract_Number]`, `[reference]`, `[party]`, `[company]`,
`[currency]`, `[incoterm]`, `[incoterm_location]`, `[payment_term]`,
`[product]`, `[quantity]`, `[unit]`, `[product_origin]`, `[del_from]`,
`[del_to]`). Les variables inconnues restent litterales pour override.
- Sens metier attendu de `Optional`: une clause optional peut etre retiree
sans validation juridique; une clause non optional est obligatoire et ne
devrait pouvoir etre que surchargee. Les overrides devront declencher une
validation Legal/Juridique dans le workflow; l'utilisation d'un template
sans modification ne devrait pas la declencher.
- Session `2026-04-30`: PnL fees ouverts et `% rate`, promue dans
[fees.md](fees.md) et [valuation-pnl-mtm.md](valuation-pnl-mtm.md).
- Session `2026-05-01`: solde ouvert apres lots physiques et lots effectifs
des fees, promue dans [lots-and-quantities.md](lots-and-quantities.md) et
[fees.md](fees.md).
- Session `2026-05-06`: Remove physical lot, promue dans
[lots-and-quantities.md](lots-and-quantities.md).
- Session `2026-05-09`: Lots Management, promue partiellement dans
[lots-management.md](lots-management.md).
- Session `2026-05-13`: cadrage `quantity_theorical` / `quantity`, amount de
ligne, Weight basis, invariants de quantite, checks Python bloquants et
diagnostic SQL. Promue dans
[lots-and-quantities.md](lots-and-quantities.md),
[lots-and-quantities.en.md](lots-and-quantities.en.md),
[invariants.md](invariants.md) et [sql/README.md](sql/README.md).