PARAMIXBThe historical entry does not provide a complete PARAMIXB structure here. Check the actual call before reading positions, using aliases or treating the received minimum as a formal argument.
AdvPL GuideF040MIRF()Handles the minimum IRRF amount. Financeiro P12 references, historical FINA040 context and a boundary test plan.
The official index lists F040MIRF under MATXATU/FINXFIN for handling the minimum IRRF amount, while its specific page remains under construction. (TOTVS, n.d., ref. 2) The historical inventory already recorded on this site places a call in F040CalcIr in the FINA040 flow dated 2019-08-26. (TOTVS, 2019, ref. 1) These are different documentary scopes: that historical location does not prove the FINXFIN contract in a current release. F040MIRF() identifies the entry point without asserting a complete argument list. PARAMIXB structure and return handling require confirmation in the target environment. Current research used indexed evidence; access to the full public documentation was restricted. Editorial review does not constitute Protheus validation.
F040MIRF()PARAMIXBThe historical entry does not provide a complete PARAMIXB structure here. Check the actual call before reading positions, using aliases or treating the received minimum as a formal argument.
The 2019 inventory describes a value compatible with the minimum withholding amount. This does not confirm the accepted type, unit, precision or Nil handling in current FINXFIN. Do not use the helper example return as an implementation of this entry point.
#Include "Protheus.ch"
User Function ExMIRFLim()
Local nTestLimit := 10
Local aValues := {9.99, 10, 10.01}
Local nIndex := 0
Local cRelation := ""
// Fictional values: this helper defines neither a legal limit nor a tax rule.
// Its different name prevents it from replacing F040MIRF in the RPO.
For nIndex := 1 To Len(aValues)
Do Case
Case aValues[nIndex] < nTestLimit
cRelation := "below"
Case aValues[nIndex] == nTestLimit
cRelation := "equal"
Otherwise
cRelation := "above"
EndCase
ConOut("Test case: " + cRelation)
Next nIndex
Return
The helper should log below, equal and above, in that order. It only organizes boundary cases; it neither calculates IRRF nor determines whether a threshold is inclusive. Use these groups when comparing standard processing with a customized rule in a test environment. The example has not been compiled or run in Protheus.
© 2026 Usina.BR. All rights reserved. TOTVS, Protheus, Microsiga and their respective logos are trademarks of their owners. AdvPL Guide is independent and uses limited, attributed excerpts justified by educational purposes. See the Terms of Use. Terms of Use
Comments
There are no approved comments yet.
Sign in with Google or Microsoft to comment.