sub showAvman(){ $dbh = DBI->connect ("dbi:Pg:dbname=NPMS"); $res=$dbh->prepare("select \"name\", \"address\", \"type\", \"pollint\", \"protocol\" from \"avman\" order by \"name\""); $res->execute; format AVMAN_TOP = Name IP Address Type Pollint Protocol . format AVMAN = @<<<<<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< @<<<<<<<<<<<< $row->{name}, $row->{address},$row->{type} ,$row->{pollint},$row->{protocol} . { my $old_handle = select STDOUT; $^ = 'AVMAN_TOP'; $~ = 'AVMAN'; select $old_handle; } while ($row=$res->fetchrow_hashref()) { if ($row->{type} eq "SNMP") { @_=split(/:/,$row->{protocol}); $row->{protocol} = "Interface $_[1]"; } write STDOUT; } $res->finish; $dbh->disconnect; } sub showEvents(){ $var=NPMS::getGlobals(); $maxEvent=$var->{maxevent}; $dbh = DBI->connect ("dbi:Pg:dbname=NPMS"); $res=$dbh->prepare("select t.\"status\", to_char(l.\"time\",\'Dy DD Mon YYYY HH12:MI am\') as time, l.\"extra_text\", t.\"desc\", l.\"userid\", l.\"device\", l.\"number\" from \"events\" t, \"event_log\" l where t.\"id\" = l.\"id\" and l.\"ack\" = \'0\' order by \"number\" DESC limit $maxEvent"); if (!defined $res) { die "Cannot prepare statement\n"; } $res->execute; format EVENTS_TOP = STATUS USERID TIME DEVICE DESC . format EVENTS = @<<<<<<<<<<<< @<<<<<<<<<<< @<<<<<<<<<< @<<<<<<<<<< @<<<<<<<<<<<<<<< $row->{status},$row->{userid},$row->{device},$row->{desc} . { my $old_handle = select STDOUT; $^ = 'EVENTS_TOP'; $~ = 'EVENTS'; select $old_handle; } while ($row=$res->fetchrow_hashref()) { write STDOUT; } $res->finish; $dbh->disconnect; }