]> git.llucax.com Git - z.facultad/75.08/llamadas.git/commitdiff
Ya se efectuan todas las validaciones pedidas para cada registro, ahora me falta...
authorAlan Kennedy <kennedya@3dgames.com.ar>
Mon, 18 Oct 2004 01:06:59 +0000 (01:06 +0000)
committerAlan Kennedy <kennedya@3dgames.com.ar>
Mon, 18 Oct 2004 01:06:59 +0000 (01:06 +0000)
inst/antifraude.pl

index dc2b18fd0e438794651e9ee1ea5d1a8884284d12..49520e85c6680297815736ea59155404896a8b85 100644 (file)
@@ -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);