From: Alan Kennedy Date: Mon, 18 Oct 2004 01:06:59 +0000 (+0000) Subject: Ya se efectuan todas las validaciones pedidas para cada registro, ahora me falta... X-Git-Tag: svn_import~121 X-Git-Url: https://git.llucax.com/z.facultad/75.08/llamadas.git/commitdiff_plain/045560faaff8e730f5fd0fc9ee56b63b5d87f7a7 Ya se efectuan todas las validaciones pedidas para cada registro, ahora me falta buscar un umbral y si lo encuentro emitir una alarma. Por ultimo, mover el file al directorio procesadas y basicamente ya ta --- diff --git a/inst/antifraude.pl b/inst/antifraude.pl index dc2b18f..49520e8 100644 --- a/inst/antifraude.pl +++ b/inst/antifraude.pl @@ -104,7 +104,23 @@ FILE: foreach $filename (@archivos) { chomp($callreg); $fieldcount = split(';',$callreg); @fields = @_; + # Si no tengo 8 campos exactamente, invalido if ($fieldcount != 8) { badCall($callreg,$regnum); next REG; } + # Si la linea no es un numero, invalido + $fields[0] =~ s/^\s*(\w*)\s*$/$1/; + if (!($fields[0] =~ /^\d+$/)) { badCall($callreg,$regnum); next REG; } + # Si tipo llamada ! E|S o no se informa Origen o Destino, invalido + if (($fields[4] ne 'E') && ($fields[4] ne 'S')) { + badCall($callreg,$regnum); next REG; + } + if (($fields[4] eq 'E') && ($fields[6] eq "")) { + badCall($callreg,$regnum); next REG; + } + if (($fields[4] eq 'S') && ($fields[5] eq "")) { + badCall($callreg,$regnum); next REG; + } + + # Ya pase todas las validaciones, ahora busco si exite un umbral } continue { ++$regnum } close(CALLFILE);