CalculatorModInterface
in
Contrato heredado para los mods de cálculo de documentos comerciales.
since version 2026. Extienda CalculatorModClass en su lugar.
Para migrar, extienda CalculatorModClass y devuelva done(), stopMods() o stopAll() según deba continuar, detener los demás mods de la fase actual o cancelar completamente el cálculo. Un resultado false detiene los mods restantes de la fase actual, pero no cancela todo el cálculo.
Tags
Table of Contents
Methods
- apply() : bool
- Ajusta el documento y sus líneas después de aplicar las reglas internas previas al cálculo.
- calculate() : bool
- Ajusta los totales del documento después de calcular y asignar sus subtotales.
- calculateLine() : bool
- Ajusta los importes calculados de una línea después del cálculo interno.
- clear() : bool
- Reinicia los valores adicionales del documento y sus líneas antes de iniciar el cálculo.
- getSubtotals() : bool
- Ajusta los subtotales acumulados antes de asignarlos al documento.
Methods
apply()
Ajusta el documento y sus líneas después de aplicar las reglas internas previas al cálculo.
public
apply(BusinessDocument &$doc, array<string|int, BusinessDocumentLine> &$lines) : bool
Parameters
- $doc : BusinessDocument
- $lines : array<string|int, BusinessDocumentLine>
Return values
boolcalculate()
Ajusta los totales del documento después de calcular y asignar sus subtotales.
public
calculate(BusinessDocument &$doc, array<string|int, BusinessDocumentLine> &$lines) : bool
Parameters
- $doc : BusinessDocument
- $lines : array<string|int, BusinessDocumentLine>
Return values
boolcalculateLine()
Ajusta los importes calculados de una línea después del cálculo interno.
public
calculateLine(BusinessDocument $doc, BusinessDocumentLine &$line) : bool
Parameters
- $doc : BusinessDocument
- $line : BusinessDocumentLine
Return values
boolclear()
Reinicia los valores adicionales del documento y sus líneas antes de iniciar el cálculo.
public
clear(BusinessDocument &$doc, array<string|int, BusinessDocumentLine> &$lines) : bool
Parameters
- $doc : BusinessDocument
- $lines : array<string|int, BusinessDocumentLine>
Return values
boolgetSubtotals()
Ajusta los subtotales acumulados antes de asignarlos al documento.
public
getSubtotals(array<string|int, mixed> &$subtotals, BusinessDocument $doc, array<string|int, BusinessDocumentLine> $lines) : bool
Parameters
- $subtotals : array<string|int, mixed>
-
Subtotales calculados, indexados por su nombre.
- $doc : BusinessDocument
- $lines : array<string|int, BusinessDocumentLine>