6 Einträge, 1 Seite |
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
sub Doc_type_header{
open(DATEI, "<./Konfigurationsdaten/20060310.DOCFIELD") || die "Datei nicht gefunden";
my @Zeilen = <DATEI>;
close(DATEI);
my $doc_type_header = shift;
my $dokuart;
my $zahl2;
my $old_doc;
my @headerarr;
#Gehe Zeilen der Docfielddatei durch
foreach (@Zeilen){
if (/([\w\$]+)\;(\d+)\;(\d+)\;/){
$dokuart = $1;
$zahl2 = $3;
if(!defined $old_doc){
$old_doc = $dokuart;
}
#wenn dokuart nicht mehr die gleiche wie im letzten durchlauf der froeach-
#schleife speichere eine kopie des hashs in hash2 mit key alte dokuart und
#leere danach wieder den hash um ihn für die nächste dokuart neu füllen zu können.
if($dokuart ne $old_doc){
$doc_type_header->{$old_doc}= \@headerarr;
my @headerarr =();
}
#gehe Zeilen der Repository durch und speichere zahl und header in hash
open(DATEI, "<./Konfigurationsdaten/20060310.REPOSITORY") || die "Datei nicht gefunden";
my @Zeilen2 = <DATEI>;
close(DATEI);
foreach(@Zeilen2){
if(/^$zahl2;([^;]+);([^;]+)/){
push(@headerarr.$i,$2);
}
}
}
$old_doc = $dokuart;
}
}
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
sub Doc_type_header{
open(DATEI, "<./Konfigurationsdaten/20060310.DOCFIELD") || die "Datei nicht gefunden";
my @Zeilen = <DATEI>;
close(DATEI);
my $doc_type_header = shift;
my $dokuart;
my $zahl2;
my $old_doc;
my @arr;
my $ref = \@arr;
#Gehe Zeilen der Docfielddatei durch
foreach (@Zeilen){
if (/([\w\$]+)\;(\d+)\;(\d+)\;/){
$dokuart = $1;
$zahl2 = $3;
if(!defined $old_doc){
$old_doc = $dokuart;
}
#wenn dokuart nicht mehr die gleiche wie im letzten durchlauf der froeach-
#schleife speichere eine kopie des hashs in hash2 mit key alte dokuart und
#leere danach wieder den hash um ihn für die nächste dokuart neu füllen zu können.
if($dokuart ne $old_doc){
$doc_type_header->{$old_doc}= $ref;
my @arr2;
$ref = \@arr2;
}
#gehe Zeilen der Repository durch und speichere zahl und header in hash
open(DATEI, "<./Konfigurationsdaten/20060310.REPOSITORY") || die "Datei nicht gefunden";
my @Zeilen2 = <DATEI>;
close(DATEI);
foreach(@Zeilen2){
if(/^$zahl2;([^;]+);([^;]+)/){
push(@$ref,$2);
}
}
}
$old_doc = $dokuart;
}
}
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
sub Doc_type_header
{
my $doc_type_header = shift;
my $conf_docfield='./Konfigurationsdaten/20060310.DOCFIELD';
my $conf_responsitory='./Konfigurationsdaten/20060310.REPOSITORY';
open(DATEI, '<', $conf_docfield) or die "Fehler beim öffnen ($!)";
my @Zeilen = <DATEI>;
close(DATEI);
my $old_doc;
#Gehe Zeilen der Docfielddatei durch
foreach (@Zeilen)
{
if (/([\w\$]+)\;(\d+)\;(\d+)\;/)
{
my $dokuart = $1;
my $zahl2 = $3;
if($dokuart ne $old_doc)
{
open(DATEI, '<', $conf_responsitory) or die "Fehler beim öffnen ($!)";
my @Zeilen2 = <DATEI>;
close(DATEI);
my @tmp=();
foreach(@Zeilen2)
{ push(@tmp,$2) if(/^$zahl2;([^;]+);([^;]+)/); }
$doc_type_header->{$dokuart}=\@tmp;
$old_doc = $dokuart;
}
}
}
}
1
2
3
4
5
6
7
my @tmp;
open(DATEI, '<', $conf_responsitory) or die "Fehler beim öffnen ($!)";
while(my $line = <DATEI>){
push(@tmp,$2) if(/^$zahl2;([^;]+);([^;]+)/);
}
my @Zeilen2 = <DATEI>;
close(DATEI);
6 Einträge, 1 Seite |