Thread Suchen von Unten nach Oben: Suchen von UNTEN nach OBEN (57 answers)
Opened by yasukatakaya at 2007-05-31 11:57

yasukatakaya
 2007-06-11 14:34
#77142 #77142
User since
2007-05-31
68 Artikel
BenutzerIn
[default_avatar]
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
# !bin\perl\
# AS 06.06.07

$quelle = $ARGV[0];
$x = $ARGV[0];
$x =~ s/(\w+)\.\w+/$1/;
$ziel = $x;

open ($INPUT,"<$quelle") or die $!;

while ($line = <$INPUT>)
{
if ($line =~ /.CBT/gsm)

{
$cbt = 1;
}
elsif ($line =~ /BARCODE/gsm)
{
$barcode = 1;
}
elsif ($line =~ /AATHD000000.000/gsm)
{
$falscheangabe = 1;
}
elsif (!$starttest && $line =~ /(\d\d)\.(\d\d)\.\d\d(\d\d)\s+(\d\d):(\d\d):(\d\d)/)
{
print $line;
$date = "$3$2$1";
$starttest = "$3$2$1$4$5$6";
}
elsif (!$endetest && $line =~ /(\d\d):(\d\d):(\d\d)\s+(?: P\sA\sS\sS|F\sA\sI\sL)/x)
{
$endetest = "$date$1$2$3";
}
elsif (!$sachnummer && $line =~ /Sachnummer:\s(\w+)\./)
{
$sachnummer = $1;
}
elsif (!$kundennummer && $line =~ /Kundennummer:\s*(\d+)/)
{
$kundennummer = $1;
}
elsif (!$seriennummer && $line =~ /Flexnummer:\s(\d\d).(\d\d\d\d).(\d\d\d\d)/sm)
{
$seriennummer = "$1$2$3";
}
elsif ($line =~ /PASS/)
{
$start_pos = tell($INPUT);
}
elsif ($line =~ /FAIL/)
{
$end_pos = tell($INPUT);
}
}

if ($end_pos)
{
$status = '01';
$result = 'Failed';

seek($INPUT, $start_pos, 0);
$hit;
while ($line = <$INPUT>)
{
chomp($line);
last if $end_pos <= tell($INPUT);

if (($line =~ /^\s/) || ($line =~/^$/))
{
$hit = 1;
}

if ($hit)
{
push @fehler, $line;
}
}

$fehler = join(' ', @fehler);
$fehler =~ s/\s+/ /g;

}
else
{
$status = '00';
$result = 'Passed';
}

close $INPUT;

if (($cbt != 1) || ($barcode != 1))
{
unlink ($quelle);
}
elsif ($falscheangabe == 1)
{
unlink ($quelle);
}
else
{
open (OUTPUT,">$ziel.txt") or die "konnte $ziel nicht oeffnen,$!\n";

print OUTPUT "{\@BATCH|$sachnummer||GOEPEL_BSCAN||KDSNR:$kundennummer|ICT||PB/PL_P|uqm161|||\n";
print OUTPUT "{\@BTEST|$seriennummer|$status|$starttest|||||n|n|$endetest||1|\n";
print OUTPUT "{\@RPT|$result}\n";
print OUTPUT "{\@RPT|$fehler}\n" if $fehler;
close OUTPUT;
}
\n\n

<!--EDIT|yasukatakaya|1181558313-->

View full thread Suchen von Unten nach Oben: Suchen von UNTEN nach OBEN