cadrumo.domain.calculations.registry.m303_prorrata_activity_projection module¶
Projection from canonical M303 prorrata rows to official endpoints.
The five DP30305 activity rows are durable children of the encrypted
ProrrataRegister. This registry-side module reads the revision’s reviewed
endpoint declarations and projects those row facts into their five fixed
official slots. It neither introduces an independent scalar input channel nor
renders a withdrawn export layout.
- class M303ProrrataActivityEndpointValue(**data)[source]¶
Bases:
BaseModelOne official endpoint paired with the value projected from its row child.
- Parameters:
data (Any)
- projection_ref: M303ProrrataActivityProjectionRef¶
- value: str | Decimal¶
- class M303ProrrataActivityRowProjection(**data)[source]¶
Bases:
BaseModelThe five reviewed official endpoint values for one persisted row slot.
- Parameters:
data (Any)
- slot: int¶
- endpoints: tuple[M303ProrrataActivityEndpointValue, ...]¶
- project_m303_prorrata_activity_rows(*, projection_refs, register, ejercicio)[source]¶
Project an applicable register’s five row children into a revision’s endpoints.
The registry determines which official box belongs to which fixed row slot; the register determines the values. An inactive prorrata year has no row projection. An active year whose canonical collection is incomplete fails rather than yielding blank or zero endpoint values.
- Return type:
- Parameters:
projection_refs (tuple[M303ProrrataActivityProjectionRef, ...])
register (ProrrataRegister)
ejercicio (int)