Skip to main content

Immobilisations et amortissement

Responsabilité

Les immobilisations couvrent la génération des achats d'immobilisations, leur durée de vie, leur mode d'amortissement, les rapports d'immobilisations, les taxes associées et les écritures de régularisation.

Static data

La configuration principale se trouve dans immobilizations.json et les settings/modules qui activent les préférences liées aux immobilisations. La page Configuration Accounting — guide des JSON décrit la source de configuration.

Serveur

  • classes/bills/immobilizations/ImmobilizationsBill.js : bill d'acquisition;
  • ImmobilizationsTaxesBill.js : taxes municipales/scolaires ou autre taxe configurée;
  • reports/ImmobilizationsReportBill.js : rapport basé sur les immobilisations référencées;
  • utilsByModule.getImmobilizationDepreciation() : calcul d'amortissement selon le type d'unité;
  • BillCreationContext._usedImmobilizationsByType : contexte utilisé pendant la génération.

Modèles Unity

  • ImmobilizationData;
  • SeededImmobilization et SeededImmobilizationPlus;
  • BillDataImmobilization;
  • ImmobilizationBillEntry;
  • ImmobilizationTaxe et ImmobilizationTaxesBillEntry.

UI

Les rapports possèdent des contrôles dédiés : ImmobilizationsReportControl, variante Plus, rapports degressive/by usage et ImmobilizationsTaxesReportControl. Le contrôle détecte notamment le type d'amortissement pour adapter le contenu affiché.

flowchart LR
CFG[immobilizations.json] --> CREATE[Create Module Type Data]
CREATE --> SEED[SeededImmobilization]
SEED --> BILL[ImmobilizationsBill]
BILL --> ACC[Accounts / Journal]
SEED --> DEP[Depreciation calculation]
DEP --> REPORT[Immobilizations Report]
REPORT --> REG[Regularization entries]

Points d'attention

  • Le type d'immobilisation détermine le compte impacté.
  • Le calcul dépend des dates fiscales de l'activité.
  • Les contextes suivants peuvent réutiliser les immobilisations précédentes.
  • Un changement doit être testé dans création des données, answer key et grading.