use utf8;
use warnings; no warnings "redefine";
use strict;
use Dbase::Globals qw(get_descr);
use Dbase::Help qw(DoSelect);
use Loader qw(line_printer);
use noris::Table;


sub list_messtypen(;@) {
    my ( @where ) = @_;

    my $where = @where > 0 && "\n   WHERE " . join "\n   AND ", @where;

    line_printer;
    ( my $t = noris::Table->new )->titel(
        { name => "ID",          format => '%5s' },
        { name => "Messtyp",     format => ' %s' },
        { name => "Einheit",     format => ' %s' },
        { name => "OID-Präfix",  format => ' %s' },
        { name => "OIDs",        format => ' %s' },
        { name => "RRD-Typ",     format => ' %s' },
        { name => "RRD-Min",     format => ' %s' },
        { name => "RRD-Max",     format => ' %s' },
    );

    DoSelect {
        $_[2] = get_descr( "einheit", $_[2] );
        $_[5] = get_descr( "rrd_typ", $_[5] );
        $t->daten(@_);
    }
      <<_;
  SELECT mess_typ.id, mess_typ.name, mess_typ.einheit, mess_typ.oid_praefix,
         (SELECT count(id) FROM mess_stelle WHERE typ = mess_typ.id) as anzms,
         mess_typ.rrd_typ, mess_typ.rrd_min, mess_typ.rrd_max
    FROM mess_typ
  $where
ORDER BY mess_typ.id 
_

    $t->drucken( );
}

1;
