Source code for cadrumo.application.filing._m303_exonerado_390
"""M303 exonerado-390 value arrival from one retained registry snapshot."""from__future__importannotationsfrom...core.filing_projection_refimport(M303Exonerado390ActivityProjectionRef,M303Exonerado390OperacionesTercerosProjectionRef,)from...core.modeloimportModelofrom...domain.calculations.registry.m303_exonerado_390_projectionimport(M303Exonerado390RecordProjection,project_m303_exonerado_390_activity_rows,)from...domain.calculations.registry.schemaimportRegistrySnapshotfrom...domain.calculations.registry.schema_referencesimportSourceReferencefrom...domain.modelos.calculation_revision_m303_evidenceimportM303Exonerado390FilingEvidencefrom.errorsimportModeloApplicationErrorasFilingExportErrortype_ExoneradoProjectionRef=M303Exonerado390ActivityProjectionRef|M303Exonerado390OperacionesTercerosProjectionRef
[docs]defproject_m303_exonerado_390_value_arrival(*,registry_snapshot:RegistrySnapshot,projection_refs:tuple[_ExoneradoProjectionRef,...],evidence:M303Exonerado390FilingEvidence,record_design:SourceReference,)->M303Exonerado390RecordProjection|None:"""Project the atomic DP30304 owner through the selected snapshot only. Core types: :class:`~cadrumo.domain.calculations.registry.schema.RegistrySnapshot`. """snapshot_source=registry_snapshot.sources.get(record_design.id)ifsnapshot_sourceisNoneorsnapshot_source.kind!="record_design":raiseFilingExportError(translated_message="application.filing.m303_exonerado_390.errors.record_design_source_not_snapshot_owned",context={"modelo":Modelo("303").value,"record_design_id":record_design.id,"source_present":snapshot_sourceisnotNone,"source_kind":snapshot_source.kindifsnapshot_sourceisnotNoneelseNone,},)ifsnapshot_source!=record_design:raiseFilingExportError(translated_message="application.filing.m303_exonerado_390.errors.record_design_snapshot_mismatch",context={"modelo":Modelo("303").value,"record_design_id":record_design.id,"snapshot_source_id":snapshot_source.id,},)returnproject_m303_exonerado_390_activity_rows(projection_refs=projection_refs,evidence=evidence,)