
| Current Path : /var/www/web-klick.de/dsh/50_dev2017/1300__perllib/scripts/ |
Linux ift1.ift-informatik.de 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 |
| Current File : /var/www/web-klick.de/dsh/50_dev2017/1300__perllib/scripts/xinfo |
#!/usr/bin/perl
@INC = ("/usr/local/bin/utility","/akt/appserv",@main::INC);
eval("use CGP"); print ($@); $main::XCONSOLE = 1;
eval("use Process::extractdb"); print ($@);
eval("use Process::transform_data"); print ($@);
eval("use Process::dbcursor"); print ($@);
eval("use Process::template"); print ($@);
my $query = shift;
my @pars = ();
push(@pars,shift);
push(@pars,shift);
push(@pars,shift);
push(@pars,shift);
push(@pars,shift);
my $template = "";
my $sort = "";
my $date = "";
my $aktdate = "";
my $zieldatei = "";
my $o;
foreach $o (@pars) {
next if (!$o);
if ($o =~ /^(\d+)\.(\d+)$/) {
if (!$date) { $date = $o; } else { $aktdate = $o; }
}
elsif ($o =~ /^(\d+)\.(\d+)\.(\d+)$/) {
if (!$date) { $date = $o; } else { $aktdate = $o; }
}
elsif ($o =~ /^(\d+)$/) {
if (!$date) { $date = $o; } else { $aktdate = $o; }
}
else {
if (!$template) { $template = $o; }
elsif (!$sort) { $sort = $o; }
else { $zieldatei = $o; }
}
}
my $complete = 1;
if ($query =~ /^\.(.*)/) {
$query = $1;
$complete = 0;
if (!$query) {
$zieldatei = "/akt/dbb/db.tmp";
$query = "-";
system("rm /akt/dbb/db.tmp");
}
}
my $exdb;
if (-f "/akt/dbb/db.tmpxx") {
$exdb = Process::extractdb->new()->extract("/akt/dbb","db\.tmp",$query);
} else {
$exdb = Process::extractdb->new()->extract(
"/akt/nrn,/akt/nrn," .
"/akt/nrn/00prg/Adressen,/akt/uni/00prg/Adressen",
"rogramm\.(tex|txt|msg),\.cal,\.adr\$",$query);
Process::transform_data->new($date,$aktdate)->transform($exdb);
}
my $qqinfo = Process::dbcursor->new($exdb);
# $qqinfo->check(); # Vermeidung von doppelten Eintraegen
my $text1 = "";
if ($template) {
if (-f $template) {
open(FFILE,"<".$template);
$template = join("",<FFILE>);
close(FFILE);
} else {
$template = $template . "\n";
}
if ($zieldatei =~ /\-[A-Z0-9]+\-/) {
$template = $zieldatei . "\n" . $template;
$zieldatei = "___ZIELDATEI___";
}
$template = Process::template->new($template);
$qqinfo->template($template,$complete);
}
if ($sort) {
if (-f $sort) {
open(FFILE,"<".$sort);
$sort = join("",<FFILE>);
close(FFILE);
}
$sort = Process::template->new($sort);
$qqinfo->sort($sort);
}
$qqinfo->restart();
$sort = 0;
my $text1 = "";
if ($zieldatei) {
if ($zieldatei eq "___ZIELDATEI___") {
$sort = 1;
} else {
$sort = 2;
}
}
if ($template) { $template = ""; } else { $template = "\n"; }
while (0 == 0) {
$o = $qqinfo->next();
last if (!$o);
if ($sort == 1) {
$o =~ /(.*?)\n(.*)/s;
$date = $1;
$o = $2;
$date =~ s/[ ,\'\;]//g;
open(FFILE,">".$date);
print FFILE $o;
close(FFILE);
}
elsif ($sort == 2) {
$text1 = $text1 . $o . $template;
}
else {
print $template . $o . $template;
}
}
if ($sort == 2) {
open(FFILE,">".$zieldatei);
print FFILE $text1;
close(FFILE);
}