SYNOPSIS
use Business::BR::PIS;
print "ok " if test_pis('121.51144.13-7'); # prints 'ok '
print "bad " unless test_pis('121.51144.13-0'); # prints 'bad '
DESCRIPTION
This module handles PIS numbers, testing, formatting, etc.EXPORT
"test_pis" is exported by default. "canon_pis", "format_pis", "parse_pis" and "random_pis" can be exported on demand.THE CHECK EQUATIONS
A correct PIS number has a check digit which is computed from the base 10 first digits. Consider the PIS number written as 11 digits
c[1] c[2] c[3] c[4] c[5] c[6] c[7] c[8] c[9] c[10] dv[1]
To check whether a PIS is correct or not, it has to satisfy the check equation:
c[1]*3+c[2]*2+c[3]*9+c[4]*8+c[5]*7+ c[6]*6+c[7]*5+c[8]*4+c[9]*3+c[10]*2+dv[1] = 0 (mod 11) or = 1 (mod 11) (if dv[1]=0)
BUGS
Absolute lack of documentation by now.AUTHOR
A. R. Ferreira, <[email protected]>COPYRIGHT AND LICENSE
Copyright (C) 2005 by A. R. FerreiraThis library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.6 or, at your option, any later version of Perl 5 you may have available.